8 ms·
Don't look at just the specs. You also need to look at the board design and programming environment. I've used the ESP32 native tools and they are a lot more
by phoehne 1y ago
Don't look at just the specs. You also need to look at the board design and programming environment. I've used the ESP32 native tools and they are a lot more complex than Arduino. But I'm an embedded firmware developer, so it's kind of what I expect. But I used an Arduino, with 5V tolerant outputs, to light up Halloween costumes for years. I do it in 1 page of code that's I write in their IDE. I don't have to set up an SDK. And the Arudino API hides all the details I don't care about. Especially if I'm really just slinging solder and wiring something up quick.
- echoangle 1y agoYou can program the normal ESP32 Devboards with the Arduino IDE.
- tedivm 1y agoYup- ESP32 is absolutely compatible with Arduino. There's also great support for CircuitPython and MicroPython, which makes it trivial to program the devices.
- skybrian 1y agoEven if you like the Arduino programming environment (and I do), there seems to be little reason to use Arduino hardware unless it’s for compatibility with other hardware you have? For example, there is a very nice unofficial port of Arduino for the Raspberry Pi Pico. There are also many fine Arduino-compatible single-board computers from Adafruit. The Arduino board form factor seems big and clunky in comparison. I don’t even use the Ardiuino IDE anymore; I've switched to VS Code using PlatformIO. It’s great that all these microcontroller boards and peripheral breakout boards can be programmed using the same basic API’s, but I don’t think it helps Arduino the company very much.
- ssl-3 1y agoThere's a wealth of easy projects that a person can get started with using an Arduino. Without any opportunities for getting bogged down in anything extra at all, they can follow a simple recipe and quickly begin to blink an LED at the rate of their choosing. The Arduino was developed to be a teaching tool, and it allows for a person to take little baby steps. (Whether this placement is good or bad for Arduino as a business entity isn't something that I find particularly important.)
- skybrian 1y agoBlinking an LED is what you do for "hello world" on every microcontroller board I've tried. The Arduino IDE supports boards from many different manufacturers.
- itopaloglu83 1y agoWhat do you think about the Arduino professional line? They have industrial PLC equipments and other high end boards etc.
- dfex 1y agoNot the OP, but have had some experience with the Arduino Opta around this time twelve months ago (Oct 24) through a professional development course I took at my local university on industrial control systems programming. While it's nice to have exposure to PLC programming at an Arduino price point, the IDE, and PLC firmware was VERY rough around the edges. It took lots of resets and fiddling to even get the units connected over their USB serial, and you'd come back the next day and you'd have to repeat the process. Lots of "hold your tongue the right way while pressing this button". The IDE was also very buggy (though it may have improved in the last 12 months), but once you got things going, it did the job.
- crote 1y agoDoesn't look bad, but the Arduino name is a serious drawback. It's a brand focusing on DIY tinkering, how are you going to sell that to your boss who only finds a bunch of shady hobbyist stuff when he Googles it? Besides, what's the market? The non-pro hardware is fine for prototypes, but you don't want a bowl of spaghetti in production, so porting it to the pro is pointless. If you want a generic compute board, why not a Raspberry Pi? If you want a PLC, why not go for a proper PLC? There's perhaps a market for the shadow IT equivalent of electronics projects where an Arduino sketch is suddenly a load-bearing part of the company, but that's about it.
- sharpshadow 1y agoMilitary drones maybe? The trend is now on local AI features and they are practically throwaway.
- duskwuff 1y agoDeeply unserious. Arduino put little real thought into what features industrial users would actually find useful. I suspect the main market for their "professional" boards is hobbyists with money to burn.
- estimator7292 1y agoTrouble is, this kind of trivial throwaway application is all that Arduino is really good for. Because the framework is designed to support thousands of chips, it supports none of them well. Any arduino code you write is easily 5x more terse than any of the native libraries, but it's also 10x slower. If you don't care, you don't care. But if you do care, Arduino is the least appropriate way to make a microcontroller go. Besides that, IMO hiding hardware details from the developer is the worst thing about Arduino. The hardware details matter and it's far too easy to get footgunned by some implementation detail hidden from you. But really, esp-IDF isn't that much more complex, nor are most of the other native frameworks. It's a bit more verbose, but esp-IDF provides helper libraries that replace almost everything Arduino provides, but in a way that is actually designed for the hardware and doesn't have to do things like lookup pin numbers in a giant table for each and every gpio call.
- mikepurvis 1y agoThe pin mapping shenanigans are another annoying footgun with Arduino. Even in native development you're dealing with a physical pin number and the logical assignment (PA5, PA6, etc), but now Arduino maps that all again to an Arduino board pin number, and it's all shuffled to ensure the peripherals are in the right place to enable I2C, ADC, and PWM pins to function as expected.
- nekusar 1y agoOf course they did that. It's a HAL (hardware abstraction library). That also means that simple projects are abstracted from the hardware. Means I can go across a dozen different CPU arch and board/pin layouts, and I change nothing in my source. I only change my target and it just works. I did that when I went from a board operating at 16MHz/atmel to a STmicro running 50MHz. No change in my source. And that's really valuable in rapid prototyping. Once I settled in on a board and everything, I could do it the "right way" aka the old waterfall-gile embedded approach and get things tweaked and optimized.
- estimator7292 1y ago
- crote 1y agoOn the other hand, their competitors haven't been sleeping either. Companies like Adafruit and Sparkfun sell dozens of tailor-made dev board variants, and their I2C module system allows you to mix & match a whole bunch of peripherals. The code? A handful of lines of Python, which you can drag&drop onto it like it's a flash drive. Or use a browser-based IDE if you want one-click library install and serial logging. Arduino's IDE was groundbreaking in 2010, but these days there are easier (and cheaper!) alternatives for beginning hobbyists, and better alternatives for power users.
- cptskippy 1y agoThis is spot on. Arduino occupies a space that everyone else vacated a long time ago.
- structural 1y agoGood on the Arduino folks for getting acquired, then. They still have a niche and a brand with name recognition, even if that niche might be stable at best, collapsing at worst.
- dangoodmanUT 1y agoPage of code?
- GenerocUsername 1y agoAbout 50 lines... Give or take
- andoando 1y agoWhat's hard about programming an ESP32? I plug the USB in and its the same as an Arudino, can even use Arduino IDE, but I prefer VS Code with the PlatformIo extension. You can even use the Arduino Library (#import <Arduino.h> And a ESP32C board with wifi/bluetooth is like $8 https://www.amazon.com/Seeed-Studio-XIAO-ESP32C3-Microcontroller/dp/B0B94JZ2YF https://www.amazon.com/Seeed-Studio-XIAO-ESP32C3-Microcontro... (and thats from amazon, on alibaba its like couple bucks if that) As a side note, you can power this with your IPhone's USB C which was surprisingly cool.
- nunobrito 1y agoIt is basically the same thing, don't understand either why it would harder. The only thing is to add the ESP32 module on the addons since it doesn't come enabled by default. Arduino isn't good for projects with more than 5 source code files, it is an awful IDE beyond the basic things you can pack on a single source code file. Always had so many difficulties handling the IDE defects, basically it can crash when starting and every now and then will just refuse to upload the firmware. The other part are libraries, really difficult to setup all the needed libraries for larger code bases. On that sense, Visual Code with PlatformIO went far beyond. Just open the project there and the libraries are taken care. The connection to boards is more robust. I'm not so sure how to feel with this sale to Qualcomm, it just feels that it is going there to die. Quite the difference from the early days where Arduino had such energy and the tools would bring almost anyone into microntrollers with such ease.
- kbar13 1y agoagree. when arduino ide first came out it was great (for the times). and to be fair at that time vscode was not a thing. but it's a big ? why arduino did not just go all in on vscode once it was clear where the market leader in IDE was headed
- spookie 1y agoWell, it's a bad idea to rely on Microsoft in some manner
- cptskippy 1y ago> I've used the ESP32 native tools and they are a lot more complex than Arduino. How so? All of that is abstracted away from the users just like it is for Arduinos. In fact you can use the Arduino IDE to develop for most ESP32 chips. If anything Arduino is holding back everyone with their horrible IDE. Their Board and Library managers are painfully slow and having no way to store configuration with your sketch means that you're taking a screenshot of a drop down menu if you have to make any changes. Eventually people want to write their own libraries to make their code more manageable and the Arduino IDE makes it difficult for someone who knows what they're doing. > But I used an Arduino, with 5V tolerant outputs, to light up Halloween costumes for years. I have yet to encounter a piece of hardware that doesn't respect 3.3v as signal high. All of the neopixel variant's data pins work off 3.3v and most people have moved on to 12v and even 24v for larger projects while still raw dogging 3.3v on the data pin without issue. Arduino's insistence on 5v logic levels is for maintaining backward compatibility which is honestly unnecessary.
- relaxing 1y agoIt's not just backward compatibility -- USB as a convenient source of +5V is going to be around for a long time.
- nkozyra 1y agoI'm an amateur with this stuff and honestly find the ESP experience significantly more pleasant than Arduino. I'm sure there are footguns I haven't encountered, but I get so much more bang for the buck out of random ESP builds + the incredible line of various bundled ESP devices that come with touchscreens, sensors, etc. for incredibly low prices.
- matthewfcarlson 1y agoYou can make the argument that esp32 supports Arduino but you can quickly run into “here be dragons” which sends most people for a loop. Arduino has a fantastic reputation for a very good reason.
- benterix 1y agoI had the same opinion several years ago but today it's just as easy PLUS you have a bonus of WiFi and all this for a fraction of the price.
- mbac32768 1y agoMay I ask what your go-to battery is for light up wearables?
- gsich 1y agoESP32 is also 5V tolerant for input pins.
- conductr 1y agoI use arduino ide to build esp projects. I have not found it much different than the arduino as a beginner, except much cheaper and faster. I like not having to do all the shield stuff. But will admit, it was helpful to start on arduino as its built in pins helped me get going as I tried to avoid soldering and breadboarded everything. That only lasted a short time before I realized I had to solder some things if I wanted to grow the project. I still like the idea of breakout boards for specific things but I usually solder them in now.
- deleted 1y ago[deleted]
- Crosseye_Jack 1y agoI know a million people have replied to you, and while I don't want to be jumping on the dog pile, I just want to say that along with PlatformIO (which automates the setup of ESPIDF and/or Arduino for the ESP, (and it also does it for a ton of other micros)) and Expressif having their own Arduino Core for their chips with integrates into Arduino's IDE, Expressif have also released their own extensions for VSCode and Eclipse that greatly aid the end user in getting ESPIDF setup and configured.) You no longer have to break your back going from zero to blinking an LED. I remember when I first got into espressif chips and it was a right pita back then. But no more! Personally I'm a fan of PlatformIO because its not just because of the wide selection of platforms it supports and that it uses VSCode which is my IDE of choice.