3 ms·
Cheaper and generally more mature ecosystem. I've found more things have been "solved" Also, Esp8266 has the wonderful Sming framework while ESP32 does not (or
by geokon 6y ago
Cheaper and generally more mature ecosystem. I've found more things have been "solved"
Also, Esp8266 has the wonderful Sming framework while ESP32 does not (or it's WIP)
https://github.com/SmingHub/Sming/ https://github.com/SmingHub/Sming/
It's basically Arduino but instead of having the central infinite loop it's all callback based. So it feels more “proper” I guess. It's a bit closer to how you're supposed to program a mircocontrollers without Arduino. And it makes going back to Arduino feel clunky
That said.. Maybe there is some equivalent for ESP32? I'm just not aware of it. You can do some other cool stuff with ESP32s. Like run Micropython and Javascript. You can also have wifi and related interrupts on one core and realtime stuff on another core (though I haven't exactly figured out how you'd set this up without using an RTOS)
- elcritch 6y ago> That said.. Maybe there is some equivalent for ESP32? I'm just not aware of it. You can do some other cool stuff with ESP32s. Like run Micropython and Javascript. You can also have wifi and related interrupts on one core and realtime stuff on another core (though I haven't exactly figured out how you'd set this up without using an RTOS) To shamelessly plug my own project I've been working on to bring Nim to the ESP32: https://github.com/elcritch/nesper/ https://github.com/elcritch/nesper/ For an async http example see: https://github.com/elcritch/nesper/blob/master/esp-idf-examples/simplewifi/main/server.nim https://github.com/elcritch/nesper/blob/master/esp-idf-examp... Nim's async for networking is all there. ESP32's use a modified FreeRTOS with LwIP which Nim has OS level support for now. So Nim provides async http, json libraries, etc all in a about an extra 100kB of flash memory! IMHO, Nim has a nice Pythonic syntax but still lets you do low level real time code. With the ESP32's you can create "tasks" and use either events or data queues (see `rpcsocket_queue_mpack.nim` in Nesper). Caveat emptor, Nesper is a wrap of the native ESP32 libraries. There's still bugs in wrapping the various apis, but mostly simple ones. Also I'd like to setup async for interrupts...