Wow, congrats, I remember reading your HN post. I hope you will continue writing blog posts on your journey, I expect quite a lot of software engineers would be very interested going though a similar journey now that LLMs removed most of the fun of programming. It’s neat to work on something physical for a change
> now that LLMs removed most of the fun of programming Never understood this, was the "most of the fun of programming" the literal typing for you? For me it was about solving problems and building things, and I get to do that more now than before, and without all the literal typing.
What I learned selling 2,500 MIDI recorders: Hardware is not so hard
51–60 of 276 posts
Re: What I learned selling 2,500 MIDI recorders: Hardware is not so hard
#52Sounds like a story. What parts of it can you share?
Re: What I learned selling 2,500 MIDI recorders: Hardware is not so hard
#53Earlier quoted context omitted.
IMO it's better to ship preprogrammed ICs to the factory, so you can do your secure burning in-house.
Depends on where the ICs originally come from. No point shipping your ICs from China -> US, flashing them, shipping them back US -> China for assembly, and then ship them China -> US again to sell
Re: What I learned selling 2,500 MIDI recorders: Hardware is not so hard
#54Earlier quoted context omitted.
Please do, that'd be very interesting. I imagine it's doable to use random per-device I'd when you're hand-flashing, but probably harder on a huge production run.
Almost all commercial devices need a unique ID, private key, etc burned in on the production line. For a big enough production run, you'd likely ship an HSM to the factory
I figure that the factory is exactly the adversary in the whole threat model? So why give them the keys to the castle so they can moonlight their own genuine batch?
Re: What I learned selling 2,500 MIDI recorders: Hardware is not so hard
#55Earlier quoted context omitted.
The app is about 85K lines: device connectivity, first-time setup, syncing, MIDI playback and visualization, library management, audio/video export, and OTA workflows. The firmware is about 110K lines: MIDI recording + streaming, USB, Bluetooth, Wi-Fi, web APIs, storage, OTA updates, diagnostics, security, peripherals, provisioning, and an embedded web interface. There’s a lot required to make a full-featured product…
What is the manufacturing tooling that you mention?
Nearly every component gets tested: sdcard, clock, battery, anti-counterfeit IC, led, buzzer, the tactile-switch!
Re: What I learned selling 2,500 MIDI recorders: Hardware is not so hard
#56>>> The hardest part of building Jamcorder was still, by far, the software -- roughly 200K lines of code spread across the firmware, app, and manufacturing tooling. It took over 3 years and many long nights in a pre-LLM world.
>>> When compared to that, the hardware was undeniably smooth sailing.
>>> For the record, I don’t think I’m special. It’s just that hardware’s reputation for being difficult is, IMO, overstated.
For me, when I complain about hardware, its actually usually complaining about drivers, compatibility, underdocumented interfaces, firmware etc. If one were to put firmware and manufacturing tooling in a separate bucket, that is indeed the problem!
Re: What I learned selling 2,500 MIDI recorders: Hardware is not so hard
#57> Have a strong anti-counterfeit strategy. Don’t overlook this. Sounds like a story. What parts of it can you share?
Re: What I learned selling 2,500 MIDI recorders: Hardware is not so hard
#58Re: What I learned selling 2,500 MIDI recorders: Hardware is not so hard
#59Re: What I learned selling 2,500 MIDI recorders: Hardware is not so hard
#60Wow, congrats, I remember reading your HN post. I hope you will continue writing blog posts on your journey, I expect quite a lot of software engineers would be very interested going though a similar journey now that LLMs removed most of the fun of programming. It’s neat to work on something physical for a change
> now that LLMs removed most of the fun of programming Never understood this, was the "most of the fun of programming" the literal typing for you? For me it was about solving problems and building things, and I get to do that more now than before, and without all the literal typing.
LLMs move me away from the implementation, which is more a managerial role, something I personally have zero interest in.