Hacker News new | ask | show | jobs
by holoduke 11 days ago
A bit of topic , but I wonder if people who are starting in this field not directly start on esp32 platforms. It's so damn easy to develop with AI on these platforms. In the past we spend a week on lcd drivers alone. Now one can build an entire application that controls other devices via serial, has its own fancy UI, has all kind of useless features like 40 languages, its own webserver, OTA, demo modes and more. With Arduino I am not sure what you get these days
4 comments

I just started with esp-idf because I can't stand all the bloat of Arduino/Platform.io/ESPHome. Especially now where working with unfamiliar tech stack is easier than ever.
The Esp FreeRTOS projects are a great little ecosystem, and will offer quite a bit more insight than Arduino pseudo-C++ silent-polled architecture.

In general, it depends what you want out of the ecosystems. For quickly setting up a proof of concept, an Arduino used to be good for the exhaustive documentation, examples, community, and labs.

The modern Arduino integrated product line is now similar to other locked ecosystems like FPGAs. It no longer lets students learn by burning out $10 parts they made. The only people having fun now are the folks building those trademarked modules.

Probably wise to avoid LLMs if you are a student, and check out the $6 Pi Pico 2 if interested in low-level firmware build processes (it also supports the old Arduino IDE if you get stuck.)

Best of luck =3

Lab:

https://learn.adafruit.com/using-raspberry-pi-pico-pico-2-wi...

Pico 2:

https://www.mouser.com/en/new/raspberry-pi/raspberry-pi-pico...

https://www.mouser.com/en/ProductDetail/Raspberry-Pi/SC1632?...

Breadboard and common components to build and blink LED lights (set everything at 3.3v to start exploring):

https://www.amazon.com/EL-CK-002-Electronic-Breadboard-Capac...

I predict the AI enabled MCU development wave will lift all ships.

AI has absolutely crushed the barrier to entry for using this gear. It's a spectacular turn of events and I suspect sales have never been better, if my own behavior is any indication.

Arduino ships an STM32 which is really feature rich btw.

I really can't get over how many things in life do not require an OS but people used them anyways because it's easier to develop on.

>AI has absolutely crushed the barrier to entry for using this gear

Sure, now people can make more frequent dangerous assumptions with twice the overconfidence. =3

Yeah I did a project with ESP32 and micropython recently and getting the proof of concept up was very very quick. The agent I was using also had no problem writing drivers for peripherals that didnt already have micropython drivers (I seem to recall it ported C or Arduino reference code)
Pull off the C/C++ band-aid already, it will give you a clearer understanding of how these chips actually function. =3
I took an embedded C/C++ class online 5-10 years ago and hated it. I dont want to be doing bit shifting math to put some device's registers in the correct state for me to write text to a screen
In general, the Embedded space is very different from multitasking Application environments. The mistake is assuming language choices people make were independent of the language specific features outside isomorphic code implementation.

Python is great in many ways, but anything with a garbage-collector or JIT has fundamental problems with parallelism and or real-time environments.

https://en.wikipedia.org/wiki/Clock_domain_crossing

https://en.wikipedia.org/wiki/Metastability_(electronics)

I would never claim to know what I am talking about, but reliance on other peoples hobby projects can inject naive/unstable dependencies into your long-term work.

This list of rules applies to most languages:

https://en.wikipedia.org/wiki/The_Power_of_10:_Rules_for_Dev...

A bit of history where these rules came from, and why they matter.

"Why Fighter Jets Ban 90% of C++ Features"

https://www.youtube.com/watch?v=Gv4sDL9Ljww

The basis of the cited 10 rules helped form many standards for reliable code:

https://www.stroustrup.com/JSF-AV-rules.pdf

Good luck, and I agree dealing with bitmap multi-language fonts is difficult without a header template generator. imagemagick can build this for you with a bit of one-time scripting, but it always eats up a lot of rom memory. =3

Not everybody has time or needs to understand how these chips function. I don't need to know how a CPU functions to write python.
Yeah how dare he suggest you improve yourself or learn more about the thing you seem to be interested in operating. I could understand if we were on a website about technology and curiosity, but this is just hacker news.
Why are you responding as if that was an attack? Not everyone needs to know every intricate detail of a system to use it. Nor should they.

That type of thinking is like saying unless you can cook a gourmet restaurant quality meal you don't deserve to eat at a gourmet restaurant. Absurd.

The first ESP32 board I worked with had some damn WiFi stack running in the background—not nearly as "bare metal" as I had come to expect from having just stepped out of the Arduino world.

(I've since learned, from an LLM, ha ha, how to turn that off if you don't need it.)

Well esp is wifi baked in the chip. If you want determenstic clock cycles then go for stm32. If you want easy quick setups. Like an interface for a fatbikes, washmachine, dashboard for a car, then go for esp