this post was submitted on 17 Jun 2023
15 points (100.0% liked)

Electronics

2055 readers
3 users here now

Projects, pictures, industry discussions and news about electronic engineering & component-level electronic circuits.

Rules

1: Be nice.

2: Be on-topic (eg: Electronic, not electrical).

3: No commercial stuff, buying, selling or valuations.

4: No circuit design or repair, tools or component questions.

5: No excessively promoting your own sites, social media, videos etc.


Ask questions in https://discuss.tchncs.de/c/askelectronics


founded 1 year ago
MODERATORS
 

I used to play around with 8051 variants and 8pin/16pin PICs back in 2010, whats the equivalent beginner chips now? I have been out of touch since around 2012, except for pi3/4.

top 14 comments
sorted by: hot top controversial new old
[–] [email protected] 13 points 1 year ago (2 children)

Right now, I would suggest the ESP32 family… very well supported, lots of community, it’s quite a powerful MCU and you can find it for 3-5$ on Ali

[–] GrimSleeper 11 points 1 year ago

ESP32 or Raspberry Pico, if you want something easy to use, reasonably feature full, easy to interface, inexpensive, and medium form factor.

ATTiny, if you are strapped for physical space and don't have anything super complicated to interface with. Also, really inexpensive. I like it for basic electronics projects where even a Pico would be overkill.

On the other extreme, if you need more complex software, then a Raspberry Pi Zero 2 is a great option. Fortunately, the supply situation for Raspberry Pi has been improving a bit, at last. Sometimes, it's nice to be able to use all sorts of high-level software libraries, and then you hit a limit with the ESP32s and Picos of this world.

You can also mix and match. A PiZero talking to a Pico is a great combo. A ESP32 and an ATTiny can also sometimes turn out to be the more pragmatic choice.

Oh, and if you need even more oomph, then I really like the Raspberry CM4. Lots of nice carrier boards to choose from. But that's really not a microcontroller, so might not fit OP's question.

There are plenty of other boards out there. But they frequently have poor support, or are released only for the vendor to immediately abandon them. Maybe fine for one-off projects, but I generally prefer to stick with designs that last for a couple of years. Much easier to support, if I need to revisit my project down the line.

[–] [email protected] 1 points 1 year ago* (last edited 1 year ago) (3 children)

I think ali doesnt work in my country. But is it something like this?

Whats the interface like? Would I need custom programmer boards? Serial com port etc?

What about compilers? I saw riscv mentioned in some places, so would gcc work?

[–] [email protected] 3 points 1 year ago

In addition to what others have mentioned if you're using Home Assistant or an MQTT environment than using the ESPHome tools can make life much easier.

You can also install MicroPython, and with it's new and improved "mip" (pip for micropython) you can easily find drivers for most things. Micropython doesn't support "threads" on the esp8266 as such, but can use uasyncio, which achieves the same goal.

[–] [email protected] 3 points 1 year ago (1 children)

You can find a lot of different dev boards with ESP32, like the one you mentioned. There is other with camera, e-paper screen drivers, smaller footprint (Xiao ESP32). The simplest way to program is using Arduino IDE, but I prefer using PlatformIO on VScode. GCC would work. The interface is with the USB port, which is used for COM port or for programming

[–] [email protected] 1 points 1 year ago* (last edited 1 year ago)

The easiest way to program it would be using something like Esphome. I think Node Red is another tool that greatly simplifys things, but I haven't had the time to mess with it yet.

[–] [email protected] 2 points 1 year ago (1 children)

Yes, that would be it!

You can do everything using the existing USB port. What you cannot do in that board is use a debugger.

[–] [email protected] 2 points 1 year ago* (last edited 1 year ago)

Thanks for confirming. Ill start with the basic kit.

[–] [email protected] 10 points 1 year ago

i quite like esp 8266/esp32 honestly.

[–] [email protected] 6 points 1 year ago* (last edited 1 year ago) (1 children)

Nowadays there's a plethora of options available for beginners. Heck, even PICs have dev boards available with built-in programmers, so you connect it to your computer using regular old USB cable and you can build away using Microchip toolchains. Depending on your comfort level of low-level C, I'd probably still stay away from PICs as a beginner.

There's Arduinos and all the numerous clones (cheaper, different features). The main benefit of Arduino ecosystem would be that it's really easy to find libraries and/or content on the internet that gets you real close to solving your problems without having to write too much code yourself.

And of course very cost effective ESP32 based offerings that excel at wireless usecases (WiFi, bluetooth).

Recently there's even more beginner friendly boards appearing using MicroPython where you don't even need a toolchain. You connect the board to your computer, it appears as a mass storage device, you drop your Python code on it... and that's it, the board runs the code when you disconnect from the computer.

Have a browse through Adafruit and Sparkfun stores to get an idea of all the possible (beginner friendly) boards out there.

[–] [email protected] 1 points 1 year ago

Thanks for the detailed answer, I was familiar with ASM and C. And soldered some of the boards myself. But probably cant do the soldering parts too much now.

[–] [email protected] 6 points 1 year ago

3 years ago the obvious answer was Atmel AVR chips but they are still in short supply today. I think ESP32 is the answer today. They are shockingly powerful for the price. And they have built in wifi, bluetooth, and USB.

[–] [email protected] 5 points 1 year ago

STM32, RP2040, ESP32 & AVR are all quite popular and all have good development boards.

load more comments
view more: next ›