top | item 45504328

(no title)

babl-yc | 4 months ago

There's still relevance in making it stupidly easy to make an LED blink and make basic apps on circuit boards. Education + weekend hardware hackers might look for something different in a framework than a professional.

But certainly for pro use cases the hardware specific frameworks are way more powerful (but also complex).

I wrote up a bit on Arduino vs ESP-IDF here https://bitclock.io/blog/esp-idf-vscode

discuss

order

estimator7292|4 months ago

The native AVR libraries are really good. It's not quite as idiomatic as Arduino, but it's really not all that different.

Beginners can learn frameworks more complicated than Arduino and I think they should. Before Arduino, beginners were expected to write plain C or assembly, and the industry got along just fine. There were still countless hackers and weekend tinkerers. They just had to learn more, which is not a bad thing

BenjiWiebe|4 months ago

If by native AVR, you mean avr-libc, it's nothing at all like Arduino.

Instead of analogRead, you need to write your own busy loop watching certain bits in a register (or ISR), you need to twiddle bits in several registers to set up the ADC the way you want it, etc.

Serial.write? Nope, gotta read the docs, twiddle some bits again, and then you actually do get to use printf.

Those two right there are big hurdles to someone new to microcontrollers. In fact, they're a hurdle to me and I've read AVR datasheets for fun.

danhor|4 months ago

> There's still relevance in making it stupidly easy to make an LED blink and make basic apps on circuit boards. Education + weekend hardware hackers might look for something different in a framework than a professional.

This group is has been moving to circuitpython, which is much less performant, but even easier to use. The more serious cross-platform development environments, like Zephyr, have also become much better.