[HN Gopher] If you can use open source, you can build hardware
___________________________________________________________________
If you can use open source, you can build hardware
Author : gustavo_f
Score : 119 points
Date : 2023-09-05 17:33 UTC (5 hours ago)
(HTM) web link (redeem-tomorrow.com)
(TXT) w3m dump (redeem-tomorrow.com)
| akkartik wrote:
| _" If you build modern software, you're well-versed in
| composition: grab a handful of existing projects--a database
| here, a UI framework there, an HTTP library to round it all out--
| and arrange them together. You write your custom logic--the stuff
| unique to your project--and let other people's code do work
| that's common across all projects."_
|
| This approach certainly gets tried enough. I'd say it has some
| issues, though.
| petsfed wrote:
| I'm going to complicate this a bit and say "If you can use open
| source, you can _prototype_ hardware "
|
| Part of building hardware is making it robust enough to exist in
| meat space long term. That means thinking about how the humidity
| sensor is affected by ambient conditions (including the packaging
| bag, that one has bit me in the past) and having a plan for re-
| calibration if drift becomes too great. That means picking
| connectors for your wire harnesses that can handle the number of
| times you expect to connect/disconnect them over the course of
| your things lifespan. That means tuning the length of that wire
| harness so you can't damage it when you open the enclosure to
| change the battery or whatever. It means thinking about how
| ambient conditions affect the rest of the design, so you don't
| have to clean the contacts on all the wire harnesses every so
| often, because you didn't get gold contacts for both the
| harnesses _and_ the connectors, and you live in a high humidity
| environment.
|
| Don't get me wrong, I'm self-taught on virtually all of these
| points, it _is_ achievable for the hobbyist. Just understand that
| swapping out one smart relay controller for another is pretty far
| from having a smart relay controller you 'd even give to your
| sister-in-law for Christmas.
| andyjohnson0 wrote:
| I've breadboarded a number of projects, but always awem to hit
| a wall when faced with the concerns you describe. Do you have
| any pointers for how to gain the knowledge to get past this?
| Right now I feel like I dont even know what I dont know.
| petsfed wrote:
| A lot of it comes down to being mindful of what you're
| spending the most time on during assembly, but some of it is
| just hard-won. But I've learned a lot from reading Hackaday.
|
| Some simple things that you shouldn't have to learn the hard
| way (but most people do):
|
| Make sure your wiring contacts are electrochemically
| compatible. Gold-to-gold is safe in almost every household
| environment.
|
| Strain relieve every wire. Solder is not meant to be
| structural.
|
| Every circuit component degrades over time. Heat, humidity,
| and dust accelerates that process. Make a plan to mitigate
| the ingress of each, and a plan to account for that
| degradation.
|
| Learn to design simple breakout-board carrier boards. The
| best breadboard layouts are still worse than a mediocre PCB,
| because the PCB doesn't have flywires to catch on literally
| everything.
|
| Make sure you include mechanical support points for your
| designs, and pick the right size and material for your
| mechanical supports.
|
| All of this to say, your hardware thing is a _thing_ first,
| and an expression of your software /firmware design second.
| If it cannot physically survive being that physical thing,
| the elegance or resiliency of your code is meaningless.
| andyjohnson0 wrote:
| Thank you.
| joshspankit wrote:
| Please improve this (I have only dabbled), but I'll add a
| couple points as well:
|
| - Don't run data lines and power lines right next to each
| other (electric signals flow through a field surrounding
| the trace/wire, not in or on the metal itself)
|
| - PCB pros avoid right angles for the same reason. Bevel
| your corners. (You see examples of this on every board if
| you're not sure what I mean)
|
| - Verify PCB traces with a multimeter before soldering
| components to it (or if it's been assembled by the PCB
| manufacturer, verify everything before powering it on for
| the first time)
| kbaker wrote:
| Agreed. Also, the kinds of passive safety needed to not burn
| your house down in the event of a code error or other design
| issue.
|
| The hardware design is the last line of defense before you can
| do real-world damage.
|
| Things like fuses, ESD and surge protection, watchdog timers,
| often get overlooked in a hobbyist or even open-source
| design... it takes (sometimes hard-won) experience to know when
| these things are required.
| munk-a wrote:
| There are also some physical constraints as well. I have an
| essential tremor - painting warhammer minis and doing
| anything with a sodering gun are forever out of my reach.
|
| That all said - I have written firmware for things that other
| people have wired and it's quite fun!
| fanf2 wrote:
| I have heard that using magnifying glasses or a microscope
| can help suppress shaking in the hands: it has a weirdly
| helpful interaction with the hand-eye feedback loop. Dunno
| if it would work for you, but it might be worth trying?
| munk-a wrote:
| I'll have to give that a try - though it didn't seem to
| help my father very much. He was a model railroader and
| just got used to taking several dozen passes at painting
| cars and locomotives. For me myself I've found that
| stress tends to make it worse so it's a bit of a vicious
| cycle where trying to suppress shaking can spur it on
| more. Advice is never unappreciated though so thank you
| for you consideration!
| xnzakg wrote:
| As much as I agree with this, buying off the shelf things,
| especially on the extremes of "very niche" (ok this kinda
| how's under your "hobbyist design" or "so general there are
| hundreds of knockoff versions with various cost cutting
| measures", there is no guarantee that they have thought of
| all (or any) of the required safety measures... Check out Big
| Clive on YouTube if you haven't already, and aren't afraid of
| knowing about all the different ways products skimp on
| safety.
| imachine1980_ wrote:
| Some things that are cheaper at a low scale is quite expensive
| at scale, 3D printing is obvious here, your way to consume less
| 3D printing may be opposite to the way that regular plastic
| manufacturer does, so you need to adapt your process to the
| process of your suppliers.
| petsfed wrote:
| I wasn't even touching manufacturing at scale, because
| sometimes you really do need just the one. But it should not
| be so fragile you can't carry it from the garage to
| thermostat mounting position.
|
| I learned that the hard way when I automated the heat lamp
| that I put in my chicken coop. Having to noodle around with
| screw terminals while being pecked at by an angry rooster was
| not a great time.
| bytefactory wrote:
| The rooster didn't approve of your soldering technique?
| bonestamp2 wrote:
| Rooster thought he should have used chicken wire.
| eternityforest wrote:
| And all of this together still doesn't solve the bigger problem
| with DIY hardware, which is the DIY itself.
|
| It it goes wrong, you cannot buy a new one or hire repairperson
| at a sane price. If it has a software side, it will probably
| need maintainence. If you want one, there's a large chance you
| might want another to expand your project.
|
| While yes, I am able to design a reliable hardware device,
| unless you have a large budget it will not be immune to direct
| baseball bat hits or spilling epoxy in the connector. So, in
| practice, if you ask me to build something for you, I'll try to
| find a way to do it with off the shelf parts as much as
| possible.
|
| Which sucks, because electronics projects are super fun, but
| the fun is dampened by the fact that in the end you have this
| completely unique irreplaceable thing that becomes a liability
| if you use it for anything important, which is generally tied
| to one application and becomes junk if you no longer need it,
| unlike the more general purpose off the shelf stuff.
|
| ESPHome and Amazon modules plus 3D printing gives a pretty good
| balance for a lot of things. Reconfigurable, machine-soldered
| reliability, a prefab software stack, but still enough
| flexibility to build novel things.
| KRAKRISMOTT wrote:
| Just buy some spare tapeouts from digikey when building
| -\\_(tsu)_/-
| eternityforest wrote:
| Doesn't solve the issue of nobody else knowing how to build
| it, and the ones that do often somehow making 60$ an hour,
| now you're stuck with this thing that could be your
| responsibility at any time.
| generj wrote:
| I'm a big proponent of open source hardware but as your post
| shows it often involves skills of many disciplines that
| requires vigorous thought or trial and error. Electronics and
| physics are unforgiving in a way processors are not.
|
| Even after reaching the prototype phase, the open source
| hardware is probably only useful to one person: it's creator.
|
| There is a big difference between making a prototype and
| detailing the build in sufficient detail other hobbyists can
| replicate it / modify / use it. Documenting hardware is
| substantially harder than documenting software. If the project
| is cool a bunch of people will be excited to jump in; some of
| these people have zero experience soldering or ordering laser
| cut parts or whatever. Supporting them is hard.
|
| Then another step up to sell the design to other hobbyists,
| even just a few extra copies on Tindie.
|
| And then a huge step up from that to selling to the general
| public, where suddenly FCC interference certifications are
| needed and the company is liable if the design burns down a few
| houses. There's a reason firms making hardware have real
| engineers on staff held to professional standards. Plus all the
| cash flow and business concerns when the marginal cost per unit
| isn't under 1 cent like software.
|
| Each of these steps often involves multiple iterations of
| hardware and therefore lead time and cost.
| eternityforest wrote:
| There are a lot of OSHW projects I'd love to work on, but the
| main thing that holds me back is knowing they'd basically go
| nowhere. I can't post them online for others like with code.
|
| Nobody is going to build it, the physical building of it is
| way harder than the design, anyone who could build it is too
| busy building their own projects that will go in the junk
| drawer in a week.
|
| I would love to work at a real OSHW company, making IoT
| gadgets and stuff that for production and sale as polished
| commercial products with a software ecosystem behind them...
| but I lack a degree, live in Montana, and don't drive, and
| there are not many companies like that(And most of them are
| making expensive FOSS phones that don't run normal apps,
| cryptocurrency stuff, or glorified dev boards kinda
| pretending to be products)
| xnzakg wrote:
| Really depends on the specific pronect of course, but
| there's definitely some "posted online like code" projects
| out there. It's a more technical target audience of course,
| but I've seen plenty of projects with design files included
| ready to be sent to a PCB manufacturer. Two categories I
| can easily think of are mechanical keyboards and modular
| synthesizers.
| eternityforest wrote:
| Keyboards are an interesting case, people are so into
| them, and also specifically _want_ them to be custom made
| just for them, so people are willing to build or even
| commission.
|
| I keep thinking that maybe high end flashlights could be
| the same way, I can definitely think of a few features
| that don't show up in your typical light, and that it
| might be cool to try to make a few boutique lights to
| sell, but my business knowledge isn't quite up to that,
| and I don't exactly have much desire to do a whole lot of
| independent work, I much prefer having an employer.
| bsder wrote:
| > Supporting them is hard.
|
| Ding!
|
| We had a bespoke wireless entry system for our hackerspace
| which kinda sucked. Eventually the board switched it out for
| OpenPath (which also sucks--to be fair).
|
| Why?
|
| Support. The board can now _call_ someone and say "We pay
| you. Fix this."
|
| Support is the bane of consumer products. I really wish we
| had some way to counter this.
| notsurenymore wrote:
| > "If you can use open source, you can prototype hardware"
|
| You can prototype _some hardware_. I've looked into trying to
| build some stuff that goes beyond what a little prepackaged MCU
| dev board can do, and I can't wrap my head around it. Too much
| stuff involved that in no good at.
| jacquesm wrote:
| Compared to software skills those are relatively easy to
| learn though and they have a longer best-before date than any
| kind of language/framework kind of knowledge.
| notsurenymore wrote:
| I'm not so sure about that. Learning a programming language
| for example is pretty easy, iterative, and had quick
| feedback for me. Learning years worth of math makes my eyes
| glaze over. I do agree on the latter half though, regarding
| how they're useful for much longer.
| jacquesm wrote:
| You won't need 'years worth of math' to be able to
| prototype hardware. There is plenty of tooling now that
| will take the sting out of timing and other nasty little
| details and there is plenty of hardware where those
| details don't even matter all that much.
|
| Good starterpoint: and FPGA evaluation board, such as
| Digilent's offerings. Those pack enormous power in a tiny
| setup and will teach you a ton of very valuable skills.
|
| If that looks like a hit you can decide to deepen your
| knowledge.
| petsfed wrote:
| Can you give an example? There may well be an easily accessed
| IC for it.
| notsurenymore wrote:
| Mostly I was looking trying to do custom RF stuff, trying
| to create custom hardware. Could have used an SDE, but I
| think I still would need a solid handle on the math for
| that.
| fareesh wrote:
| Hardware building is an expensive hobby, and often involves
| aspects of engineering like heat, power, safety, etc.
|
| I don't trust myself to build something that I can leave
| unattended and won't catch fire. How does one get over this?
| fellowmartian wrote:
| Outsource dangerous building blocks to qualified people,
| overpay for quality components, learn proper wiring (ratings,
| crimping, etc).
| lnsru wrote:
| Sounds like a typical content on today's internet: enough
| buzzwords for search engine to find it and too abstract to be
| useful.
| the-printer wrote:
| This is a valid criticism, but I don't think that it's
| necessarily the author's fault.
| 6D794163636F756 wrote:
| I think it's a flaw inherent to the current system. You have
| to make money to live and you do that, not by appeasing human
| readers, but by appeasing an algorithm. The world is not
| easily reduced into clear classifications but we're currently
| forcing it into them
| Takennickname wrote:
| Is there anyone on earth not using open source in some capacity?
| codetrotter wrote:
| This group of people for one.
|
| > the Sentinelese appear to have consistently refused any
| interaction with the outside world. They are hostile to
| outsiders and have killed people who approached or landed on
| the island.
|
| https://en.wikipedia.org/wiki/Sentinelese
|
| But more seriously I would say there is a difference between
| intentionally and incidentally using open source software.
|
| I run Linux and FreeBSD on multiple machines. I use open source
| software intentionally.
|
| My girlfriend runs Windows on her laptop. If we look closely I
| am sure we will find open source libraries being used both
| within the OS, and within other pieces of software that she
| runs. But all of that is incidental. She is not interested in
| software and that is fine.
|
| My mother and my grandfather both use LibreOffice. But only
| because I installed it for them. So neither my grandfather nor
| my mother really are intentional users of open source software.
| It just happened to be the case that their grandson/son (me)
| knew about LibreOffice and installed it for them, so that they
| could use it to write documents and to open Word documents that
| other people sent to them.
| yjftsjthsd-h wrote:
| Depends what you mean by "using" open source. If we include
| consumers of software that happens to have its source published
| but who couldn't compile it even if they downloaded the source
| (so, >90% of Chrome users, for example), then yes there are
| lots of non-devs. Likewise, there are probably still some devs
| using licensed libraries proprietary applications using
| proprietary IDEs and compilers, though it's certainly getting
| rarer.
| buildsjets wrote:
| Watching the penguin screen continuously reboot on Delta
| airlines' janky in-flight entertainment system should not
| count as "Using Open Source".
| bonestamp2 wrote:
| I would bet that every form of motorized transportation has
| open source in the build or operating model somewhere.
| certyfreak wrote:
| A thing preventing people from going into hardware(prototyping)
| is the cost. Software is cheaper than hardware. i.e. i
| Berryu6 wrote:
| [flagged]
| dizzydes wrote:
| How hard is it to remake and improve a random component on any
| electronic device I own? eg the control panel on my microwave or
| my entire TV remote.
|
| Would I need specific parts from the manufacturers?
|
| Would dissecting the existing component give enough detail for me
| to remake without the (I assume proprietary/hidden) schematics?
| ilaksh wrote:
| That's not building hardware. It's connecting up and interfacing
| existing hardware components.
|
| Which probably makes more sense than designing hardware
| components for most applications.
|
| But it's not the same as designing circuits etc. and the title is
| a bit misleading as far as that goes.
___________________________________________________________________
(page generated 2023-09-05 23:00 UTC)