4 ms·
A long time ago in college I was in a silly play (as an actor) and also helping build a robot for the performance: I did the software, and a friend of mine did
by saurik 6y ago
A long time ago in college I was in a silly play (as an actor) and also helping build a robot for the performance: I did the software, and a friend of mine did the hardware (and notably, he was like "a god of hardware"). One day, the robot caught on fire... like smoke seriously started coming out of it and we had to quickly turn it off and the logic board was charred.
My friend, whom of course knew his hardware was perfect, immediately looked at me and was all "what did you do?!" and I was super confused as all I had done was written some code to let us control it remotely with a game controller. We go through my code, and he finds a place where I set two variables to true at the same time, and he explains to me that by doing that I shorted the robot's power transformer and made it catch on fire... :/.
What I am mostly known for these days is working on "jailbreaking" of iOS and Android devices. I can tell you that many early Android devices were easily bricked by just flashing a bad restore image from restore mode after having flashed a bad normal image. iOS is super resilient, and we have only very seldom managed to truly brick a device... one story, though, is quite topical: pod2g was demonstrating a new fuzzer he had written to do just what you describe to one of the NAND controllers to look for exploitable bugs... but on stage during the demo it managed to find just the right sequence of register changes to brick his demo device ;P.
Honestly, given the mental model of most hardware developers and how much trust is put in drivers, I'd just be glad that the e1000e merely bricked itself instead of burning your entire house down ;P.
- userbinator 6y agoAndroids based on the MTK platform are preferred by many in the modding scene because they are relatively easy to recover -- they have no boot loader lock by default, and plugging into USB while holding down a button will enter a recovery mode whose code is in actual ROM in the SoC.
- londons_explore 6y agoWhile the rest of the world hates MTK devices because I've yet to find a single one that can go a week without having to have airplane mode toggled to resolve some weird radio/WiFi/Bluetooth bug...
- formerly_proven 6y agoDriving all FETs in an H-bridge with a microcontroller to save parts costs. pop smoke Didn't save part costs.
- javawizard 6y agoYou jest, but there's truth here: it's disingenuous (as I suspect the GP knows) for GP's friend to claim that the hardware is perfect when in fact it's missing a simple protection against software bugs causing it to catch fire.
- Espressosaurus 6y agoIf I had a dollar for every time a silicon or analog designer said "well don't do that" when I identify a combination of register writes that will damage the hardware...
- formerly_proven 6y agoOh no, I'm not joking at all. I did just this a few times: I also wrote the firmware which blew the fragile hardware up.
- rjeli 6y agoalso, the paranoia of writing regulator drivers :)
- kfriede 6y ago> What I am mostly known for these days is working on "jailbreaking" of iOS and Android devices. Looks at username Oh hey, thanks for what you've done!
- jbverschoor 6y agoIt’s the same kind of people who “blame the user”. Only here other developers are the “user”. It’s what made many many people afraid of computers and software. It’s the same logic as having a TV catch fire when switching channels too fast. The creator should apologize, thank the person who found the issue and fix it. Things should not fatally break when interacted/operated with the publicly available controls. Worst case, just shut down.
- laumars 6y agoUnfortunately people are often proud creatures and we often have emotional attachments to the stuff we build. So it can be hard for some people to take constructive feedback without getting personally offended.