top | item 40598680

(no title)

JoeCortopassi | 1 year ago

If you are a hobbyist reading all this, and trying to compare it to arduino or raspberry pi, do yourself a favor and buy one of these: https://www.adafruit.com/product/5325

$12, fantastic documentation and tutorials, and you can literally just plug it in via usb and edit the python code as if it's just a text file on a thumb drive. No programmers, special IDE's, or specialty equipment

Microcontrollers are fun again

discuss

order

Some comments were deferred for faster rendering.

Cheer2171|1 year ago

I'll plug ESP32 more broadly, which are half the cost of the Adafruit user friendly chip, which is only single core. If you're familiar with Arduino, the regular dual core ESP32 are fully compatible with cross-platform Arduino C code. You can get ESP32 for $5 each from US resellers or even cheaper in bulk on Aliexpress from China.

If you really need to get cheap, the ESP8266 is also fully Arduino compatible and less than $2. Still way overpowered for a wireless temperature sensor sending packets to homeassistant or whatever.

sitkack|1 year ago

If it solves your problem for a price that is acceptable, it isn't "overpowered". This isn't using an i5 to blink an LED territory.

Unless you are shaving pennies for mass production, I'd stay away from any of the Tensilica LX6 LX7 based ESP32 parts. Toolchain and library support will be much better with the RISC-V based parts.

The ESP8685 is the current budget RISC-V based MCU. 384K of user SRAM, 4MB of Flash, 160Mhz RISC-V core. $1.50 qty 1.

https://www.espressif.com/sites/default/files/documentation/...

hi-v-rocknroll|1 year ago

I think I bought about 5 ESP32-WROOM-32D, 25 ESP8266, 10 Arduino Mini clones, 10 Arduino Nano clones during the pandemic. They're coming out of my ears.

riedel|1 year ago

To me that is a very different experience from actual 'fun' MCU programming. I do not know if the ATMega community is so keen to program python. I remember sitting in front of a scope to carefully insert nops to get timings correctly or spending hours fixing bugs in the sdcc code generation before resorting to assembler again. Nothing against esp32 and python...

JohnFen|1 year ago

> I do not know if the ATMega community is so keen to program python.

Not sure that it's the ATMega community being keen to program Python, or Python people keen to program on ATMegas.

The hobbyists I know who prefer ATMega are certainly not using Python. They take the extra step of reflashing the chips, if needed, to get rid of it.

cellularmitosis|1 year ago

Thank you for highlighting this — I hadn’t realized how far the lower end of the price range had advanced since the days of cheap Pro Micro clones. 240MHz, 2MB ram, 4MB flash, circuit python —- this is incredible for $12, and from Adafruit no less!

HeyLaughingBoy|1 year ago

Then take a look at the RPi Pico. All of the above at an even lower price point: I think I bought 3 for $12. Only thing missing is wireless, which you can get in the Pico-W.

hi-v-rocknroll|1 year ago

If you're limited to Python and aren't an EE/CS, sure. Developer support is one of the key points for hobbyist- and industry-useful MCUs/SBCs.

There are other interesting boards out there:

--- ESP32-C6-DevKitC-1 ---

C and Python in the box

https://docs.espressif.com/projects/espressif-esp-dev-kits/e...

$9 gets you

- 32-bit RISC-V

- WiFi 6 2.4 GHz

- BLE 5.3

- Zigbee 3.0

- Thread 1.3

- ARGB LED

--- ESP32 RISC-V Rust board ---

$19.80

https://www.espressif.com/en/dev-board/esp32-c3-devkit-rust-...

- Temp and humidity sensor

- Inertial measurement unit

- Li-ion charger

- USB-C

--- Orange Pi 5 Pro ---

$141

http://www.orangepi.org/html/hardWare/computerAndMicrocontro...

- Rockchip RK3588S

- 16 GiB LPDDR5

- GPU 10x faster than an RPi 5's

- NVMe without a hat

- WiFi 5, BT+BLE 5.2

- H.265 8K@30fps encoding and 8K@60fps decoding

- AI accelerator built-in

Once upon a time™, c. 2000 for hobbyists, there was primarily BASIC Stamp (with BASIC obviously) and PICs with their own assembly ISA. Yep, we had to walk 100 miles barefoot to school in the snow back then. ;)

MisterTea|1 year ago

> and you can literally just plug it in via usb and edit the python code as if it's just a text file on a thumb drive.

The original mbed featured that but implemented using a separate micro. You copied the file and pressed the reset button to load it.

makapuf|1 year ago

I often wonder how you do that : the usb mass storage let you use blocks, not files (if you want files use the MTP/PTP usb protocol), so how will the target "know" that I'm uploading a file to write to the flash wihtout writing and reading a full FAT on the device flash ?

beryilma|1 year ago

Call me old fashioned, but I wouldn't waste 100s, if not 1000s of bytes of program space to program them in python when literally 5-10 bytes of register programming would suffice. But, of course, this requires a bigger commitment of time to study and understand the reference manual.

tpmoney|1 year ago

Realistically its "wasted" whether or not you fill that address space with instructions or 0's. The memory is there whether or not you choose to use it. If you don't, nothing is going to use it at all.

I'd also argue that "old fashioned" would include the era of the venerable 6502 (yes, not an MCU, but hobby electronics programming isn't all MCUs) which was often programmed by hobbyists in BASIC, another interpreted language, so it's hardly a new thing to "waste" those bytes.

el_benhameen|1 year ago

Oh no … there goes my “no more money on unnecessary projects” resolution.