4 ms·
How would one get into writing code for embedded devices or into embedded devices in general?
by 0x008 6y ago
How would one get into writing code for embedded devices or into embedded devices in general?
- DoofusOfDeath 6y agoOne lesson I've learned about myself, and it may apply to others as well: The key is having a particular driving reason / motivator. I.e., learning the skill is a necessary hurdle towards some larger goal that you actually care about. But maybe that's just me. I have a tendency towards procrastination and laziness, so I need a toolbox of tricks to not just sit around all day playing video games.
- 0x008 6y agoSo what are good things you can achieve? I for one would like to automate my plant watering, but I am not sure that is a compelling enough use case?
- DoofusOfDeath 6y agoI wish I knew. Personally, I've never had success in generating artificial end-goals for myself as a way to motivate learning, physical exercise, etc. The only motivators that have really worked for me are goals that I truly believed matter. E.g., losing weight to live longer, learning about compiler internals to keep making money for my family, learning certain woodworking skills because I really want parts of my house to not look terrible, etc. Fortunately, I often find that I enjoy those intermediate steps/learning that I need to accomplish those real goals. E.g., I never would have expected to find compiler internals or woodworking to fascinating, but they became so when I needed to learn them. But I've never had luck, for example, saying "I really want to learn how to write GUIs with Rust. What end goal could I create to motivate that?" I just never end up making time for those pursuits.
- turbinerneiter 6y agoArduino, PlatformIO and Adafruit. Arduino is three things: an IDE, an actual development board and a hardware abstraction library. You only want the last one. PlatformIO is a tool like npm or cargo - it manages dependencies and tool chains for you. It also has an IDE in the form of a VScode plugin, that is pretty nice, but you can also the CLI tools only (which I do). Adafruit is a great company making development kits - PCBs with microcontrollers you can program. They also make a lot of breakout boards - i.e. sensor on PCBs that are easy to connect to the development kit. They also write libraries AND they write great tutorials. If you like Python, there is also MicroPython - it isn't fast, but it is easy to use, you probably already know Python, and you still learn about embedded topics like GPIO, I2C, SPI and so on. If you are into Rust, there is a strong working group for embedded in the Rust community and they also have some nice docs. Not so much entry level, tough.
- 0x008 6y agoYes I am into both languages. Thank you, I will check it out when vacation time is around :)