New chips: ESP32 and ATmega328PB

Some of my favorite small micro-controller platforms (as you might have seen if you have been reading this blog) are Arduino and ESP8266. It seems that there is going ot be some upgrades to those platforms this year.

ESP32

ESP8266 chip is used to build  WiFi modules for serial-to-WiFi conversion and Internet of Things applicationsESP8266 turned to be IoT maker’s favorite component for a good reason: Espressif turned the IoT game on its head by releasing a chip with WiFi and a decent embedded processor for under $1 in bulk, and costing not much more than that in a module. A little more than a year ago, the ESP8266 WiFi module showed up uneventfully in Seeed Studio’s store. During the year 2015 the ESP8266 turned to be success because it was “good enough” (it has it’s limitations) and price was cheaper than practically anything else in the market. Now it is widely available in various module formats (NodeMcu dev kit being my favorite for quick hacks) and supported by lots many programming tools.

Now Espressif looking to repeat the success of the ESP8266 with the ESP32, , that should be coming out in 2016. Espressif has been working on the next generation of powerful WiFi-enabled tiny, cheap systems for some time. They have their silicon ready and there are beta test kits already. The ESP32 Beta Units Arrive article tells that are two Tensilica L108 processors running at up to 160MHz, a lot of peripherals including ADCs, DACs, I2C, SPI, I2S, and PWM, more RAM, AES and SSL for security, and Bluetooth Low Energy. WiFi has also been upgraded. It’s already shortlisted as the best new chip of 2016, but other than that, there’s not much more information.

While the features are great, Espressif has said the ESP32 is not a replacement for the ESP8266. They’re different markets, and if you just wanted to add WiFi to a project, there’s no reason not to choose the ESP8266.

ATmega328PB

Most Arduino boards, like for example well known Arduino UNO are based on ATmega328 micro-controller from Atmel (there are nowadays also many Arduinos that use different CPUs). It seem that with ATmega328 you never have enough peripherals for everything you might want to do.  Whether it’s hardware-driven PWM channels, ADCs, or serial communication peripherals, we always end up wanting just one more of these but don’t really need so many of those. Bye-bye ATmega328P, Hello 328PB! posting at Hackaday tells that  Atmel’s new version of the popular ATmega328 series, the ATmega328PB, seems to have heard our pleas. ATmega328PB combines 32kB ISP Flash memory with read-while-write capabilities, 1kB EEPROM, 2kB SRAM, 27 general purpose I/O lines, 32 general purpose working registers, five flexible timer/counters with compare modes, internal and external interrupts, two USARTs with wake-up on start of transmission, two byte-oriented 2-wire serial interfaces, two SPI serial ports, 8-channel 10-bit A/D converter, programmable watchdog timer with internal oscillator, a unique serial number and six software selectable power saving modes. The device operates between 1.8-5.5 volts. The ATmega328PB supports capacitive sensors: 24 buttons in self-capacitance mode, or up to 144 buttons in mutual-capacitance mode. This ATmega328PB does not native USB thing in it, so if you need USB support, look at the ATmega32U4 as used in Arduino Leonardo board.

So what does this mean for you? It seems that chips are shipping right now, and there’s an inexpensive dev kit available as well. If you write your own code in C,you should be pretty ready to use new feature. With Arduino you might need to wait until new chips find their way to Arduino boards (there does not seem to be DIP version you could plug to Arduino UNO socket) and support for it on Arduino IDE is added (unless you can hack it to it yourself).

Here is ATmega328PB chip pin-out from summary:

 

Atmega328PB

 

610 Comments

  1. Tomi Engdahl says:

    Minino ESP32-C6 board is designed for IoT security and penetration testing
    Minino security tool is a kitty-shaped ESP32-C6 powered cybersecurity device for analyzing 2.4GHz communications and probing IoT devices. It supports Bluetooth Low Energy, Wi-Fi 6, Zigbee, Thread, and Matter, and has a dedicated GNSS radio for receiving signals from various satellite constellations. Minino is compatible with CatSniffer analysis tools and Wireshark software, and can log packet captures on a microSD card. These features make this suitable for applications like assessing IoT device security, network analysis, and wireless protocol research.
    https://www.cnx-software.com/2024/07/15/minino-esp32-c6-board-is-designed-for-iot-security-and-penetration-testing/

    Reply
  2. Tomi Engdahl says:

    This Espressif ESP32-Powered Remote Is Designed to Quickly Reboot Your Dodgy Wi-Fi Router
    Designed by pseudonymous maker “gokux,” this remote reboot system uses a pair of Espressif ESP32s communicating over ESP-NOW.
    https://www.hackster.io/news/this-espressif-esp32-powered-remote-is-designed-to-quickly-reboot-your-dodgy-wi-fi-router-8379050da24d?fbclid=IwY2xjawF1gCFleHRuA2FlbQIxMQABHWlkgUi6b8pWJ-jQGrM00kzRQN1ReKCDm-WxZh5jYiH7chwxYyAFhxJN3w_aem_KNQUSTt3i2id3TPzcp-hMA

    Reply
  3. Tomi Engdahl says:

    https://hackaday.com/2024/11/17/esp32-hosts-a-usb-keyboard-in-this-typewriter/

    Did you know the ESP32 can be a USB host? Well it can, and [Volos] uses host mode to build this fun little word processor.

    The venerable ESP32 has a well-known USB device mode. Anyone who has programmed one has used it. A bit less known is the microcontroller’s ability to host USB devices. These days, operating as a USB device is relatively simple. But acting as a host is a much more complex task. The ESP32 has a software host that works — but only for Human Interface Devices (HID). Human interface devices generally are keyboards, mice, trackballs, and similar devices that handle data relatively slowly, forming the interface with us simple humans.

    [Volos] uses the EspUsbHost Arduino library for this project. The library makes USB host mode simple to use. Another piece of the puzzle is the LCD board [Volos] picked. It has a dual-role USB Type-C port, meaning the hardware to switch roles is baked in. Other boards may require some modifications or special cables to make things work.

    Yes, You Can Plug a PC Keyboard Directly into an ESP32 – Here’s How!
    https://www.youtube.com/watch?v=NcncyV8UWsc

    Reply

Leave a Reply to Tomi Engdahl Cancel reply

Your email address will not be published. Required fields are marked *

*

*