MicroPython – Python for Microcontrollers
11–20 of 106 posts
Re: MicroPython – Python for Microcontrollers
#12Re: MicroPython – Python for Microcontrollers
#13Anybody has experience with how it stacks up against TinyGo [1]? [1] https://tinygo.org/
Re: MicroPython – Python for Microcontrollers
#14With hardware progress (ESP32 is 32bit/80MHz+), it seems another iteration happened: processing power is traded again for accessability/usability. In this case python.
I could see python becoming the predominant system for 32bit micro controllers. But for small 8bit systems that just read out a sensor and turns of a switch, that will stay in the realm of Arduino and C.
Re: MicroPython – Python for Microcontrollers
#15Anybody has experience with how it stacks up against TinyGo [1]? [1] https://tinygo.org/
Go is a great tradeoff, it's about as easy to learn and fast to write as Python for prototyping, while being a much slicker, faster, compiled language. But will the runtime fit a tiny MCU PROM?
edit: A Hello World written in Go and compiled with TinyGo is just 10kB! https://tinygo.org/getting-started/overview/
It also works on Arduino Nanos, has builtin support for UART, SPI, I2C and PWM, and can also generate Linux binaries. This is a great find!
Re: MicroPython – Python for Microcontrollers
#16Several members of the community have been working on improving the embedded ecosystem: although I haven't played around with either yet, the nesper library (for the ESP32) and ratel (generic framework: tested for the Arduino/AVR) have been recommended.
Re: MicroPython – Python for Microcontrollers
#17Anybody has experience with how it stacks up against TinyGo [1]? [1] https://tinygo.org/
How large are typical binaries with TinyGo? Go is a great tradeoff, it's about as easy to learn and fast to write as Python for prototyping, while being a much slicker, faster, compiled language. But will the runtime fit a tiny MCU PROM? edit: A Hello World written in Go and compiled with TinyGo is just 10kB! https://tinygo.org/getting-started/overview/ It also works on Arduino Nanos, has builtin support for UART, SP…
I remember using time.Format(time.RFC3339) in a project once. Seemed impossible to have such convenience on a microcontroller, and I probably paid a lot for it, but it did work perfectly.
Re: MicroPython – Python for Microcontrollers
#18Earlier quoted context omitted.
How large are typical binaries with TinyGo? Go is a great tradeoff, it's about as easy to learn and fast to write as Python for prototyping, while being a much slicker, faster, compiled language. But will the runtime fit a tiny MCU PROM? edit: A Hello World written in Go and compiled with TinyGo is just 10kB! https://tinygo.org/getting-started/overview/ It also works on Arduino Nanos, has builtin support for UART, SP…
Yeah, it's a completely different runtime. I think the purists might argue that it's a completely different language, but it feels similar enough that you don't get too upset about the occasional language feature that doesn't work. I remember using time.Format(time.RFC3339) in a project once. Seemed impossible to have such convenience on a microcontroller, and I probably paid a lot for it, but it did work perfectly.
It means we get a simple, nicely designed language with a great standard library, short development times, and small, performant binaries once compiled. Go on MCUs was out of question because of its runtime size. I'll keep an eye on this.
Re: MicroPython – Python for Microcontrollers
#19I find reading untyped code unnecessarily difficult. Just this week I came across Swift for Arduino, and SwiftIO, both Swift language solutions for low level boards. I'm looking forward to giving them a spin. https://www.swiftforarduino.com https://www.madmachine.io/
Re: MicroPython – Python for Microcontrollers
#20I did a lot of product development using Micropython over the past year or so. There are certain things it is very good at - one is rapid prototyping. For instance it’s a lot easier and faster and less verbose to quickly get some http server communication going on the ESP32 in Micropython rather than the C equivalent. The downsides are somewhat dramatic though - it’s, of course, a lot slower and hungrier for memory t…