3 ms·
Your Show HN doesn't seem to have gotten much traction, but I am ecstatic about programming the ESP8266/ESP32 in something other than C. I don't care if it's Ni
by StavrosK 6y ago
Your Show HN doesn't seem to have gotten much traction, but I am ecstatic about programming the ESP8266/ESP32 in something other than C. I don't care if it's Nim or Rust or whatever, I'm just tired of programming like it's the 80s.
I'll be watching your project with great interest.
- elcritch 6y agoThanks! I was hoping it'd coincide enough but was probably too late. Maybe I'll do a write up article later and compare C/Nim/CircuitPython. It's amazing what even basic maps/tables with generics provide. No more `void ` blackholes. That said, `Nesper` is basically stable. It'd be nice to make prettier Nim-first API wrappers. It's stable enough that I'm planning on shipping product out next couple of weeks with it. P.S. all of the Nim runtime and a simple async http server only adds about 80kB vs the standard `smart_config` esp wifi example! Not sure even Rust matches that. I'm curious, are you working on embedded devices for side projects or for work?
- StavrosK 6y agoI'm working on them for side projects, which is why it's important for me to minimize the boilerplate I have to write. Since I usually just want to make something that works reasonably well, I usually reach for MicroPython, unless I need a library that isn't available (and I can't write it quickly). Having something higher-level but performant, like Nim (or Rust) will make my life much easier. What's also very important to me, though, is documentation/examples, etc. I usually use the Arduino framework, so I'm not very familiar with ESP-IDF (or Nim), which makes good documentation important to me.
- elcritch 6y agoThanks, that's good to know! I'm mostly doing Nesper for myself, partly as a way to learn the ESP/FreeRTOS libraries as I'm more familiar with the Arduino ones. However, I'd like to make it more approachable by adding some docs. One nice thing about Nim is that it provides much nicer API mechanisms that are easier to comprehend and document. Though the ESP-IDF docs are pretty comprehensive.
- StavrosK 6y agoHmm, I'll play around with them, thanks! I thought they'd be arcane and obscure so I never tried.
- elcritch 6y agoThey can be a bit arcane for in parts (like EventGroups, etc), but mostly they're straightforward enough to work through. ESP-IDF actually provides better documentation of various FreeRTOS functions than the FreeRTOS docs though! P.S. I'm testing other parts of the Nesper API, and some are giving me trouble, so I'll try and start posting their on-board testing status.