• 1 Post
  • 8 Comments
Joined 1 year ago
cake
Cake day: July 1st, 2023

help-circle

  • yeah, the emergency kill switch had the full power going through it. I did something similar with relays on the back with the initial esp32 control, where if the relays were powered but no signal was sent to the relays, it would close the brake pins on the cheaper ESC’s as another safety feature.

    it was kinda cool, a little kid (like, elementary school aged) came up and was asking about the project, with his dad right behind him. the kids questions were all pretty much around how he could potentially make something similar. I answered them in an age understandable way, but also walked through all the different potential failures and how it related to saftey, and how I added things like the relays, battery fuse, and cut off switch to mitigate the risks. basically saying “yeah, making something like this is dangerous, but you shouldn’t let that get in the way of making your ideas a reality - its just important to walk through those risks and mitigate them as best as you can, and think if you can reach an acceptable risk before you spend money and time”. The dad didn’t say anything, but i could tell he was beaming since the kid was realizing all the safety stuff, and realizing that thinking through that stuff is very important. about 1/2 way through, the kid was just asking more safety related questions haha







  • Yep, to add on as well as summarized this… Linux has historically had a design methodology of “everything is a file”. If your not familear with the implications of this, it means your command line tools just kind of work with most things, and everything is easy to find.

    For instance, there’s no “registry / regedit” on Linux… There’s just a folder with a config file that the application stores settings in. There’s no control panel application to modify your network settings… Just a text file on your OS. Your system logs and startup tasks were also (you guessed it) sinole filea on the system. Sure there might be GUI apps to make these things easier for users, but under the hood it reads and writes a file.

    This idea goes further than you might assume. Your hard drive is a file on the file system (a special file called a block device). You can do something like “mount /dev/sda1 /home/myuser/some_folder” to “attach” the drive to a folder on the system, but that special block device (dev/sda1 in this case) can be read and written to byte by byte if you want with low level tools like dd.

    Even an audio card output can show as a file in dev (this is less the case now with pipewire and pulse), but you used to be able to just echo a raw audio file (like a wav file) and redirect the output to your audio device “file” and it would play out your speaker.

    Systemd flipped this all around, and now instead of just changing files, you have to use applications to specify changes to your system. Want to stop something from starting? Well, it used to be that you just move it out of the init directory, but now you have to know to “systemctl disable something.service”, or to view logs " journalctl -idk something.service" I dont even remember the flags for specifying a service, so I have to look it up, where it used to just be looking at a file (and maybe use grep to search for something specific)