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 applications. ESP8266 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:
616 Comments
Tomi Engdahl says:
Hackaday Prize Entry: ESP32 Monster and Getting Started Quickly
http://hackaday.com/2017/05/28/esp32-monster-and-getting-started-quickly/
Prolific hacker [kodera2t] is working on his own “ESP32 monster board” dev board for the still-newish ESP32 WiFi module. His board has everything: Ethernet, OLED, LiPo, and even CAN-bus. But all that peripheral connectivity is worth nothing if you can’t program the microcontroller to use it.
The Arduino environment for the ESP32 is coming along quite nicely, but it’s not yet fully featured enough to run all of [kodera2t]’s hardware. To take advantage of all that, he needs to use Espressif’s SDK — called the “IoT Development Framework” or IDF for short.
ESP32 monster board
https://hackaday.io/project/21321-esp32-monster-board
A multi-function ESP32 board with Ether (100BASE-TX), CAN-bus, and OLED, and LiPo charger and FTDI
Tomi Engdahl says:
A Wearable IoT Development Board for Body Sensing
https://hackaday.io/project/21523-a-wearable-iot-development-board-for-body-sensing
A wearable IoT development board based on the ESP8266 and ESP32 for human body sensing and Cloud applications
Tomi Engdahl says:
Mini WiFi/BLE 4WD robot platform
A compact & modular WiFi/BLE controlled 4WD robot platform with all
https://hackaday.io/project/25430-mini-wifible-4wd-robot-platform
The WiFi capabilities of the new micros as ESP8266 or ESP32 invite to create to build easy to control robots. The aim of this platform is to have a compact sized module, contain all basic functions as a base for a big variety of robot such as tanks, fire truck, line follower, …….. And as particular mechanical parts often are difficult to get it’s all based on 3D printed parts.
Tomi Engdahl says:
Radio Decoding Swiss Army Knife in a NES Controller
http://hackaday.com/2017/06/16/radio-decoding-swiss-army-knife-in-a-nes-controller/
At its heart, the ESP32Thang is based around a simple concept – take an ESP32, wire up a bunch of interesting sensors and modules, add an LCD, and cram it all in a NES controller which helpfully provides some buttons for input. [Mighty Breadboard] shows off the device’s basic functionality by using an RFM69HW module to allow the recording and replay of simple OOK signals on the 433 MHz band. This is a band typically used by all sorts of unlicenced radio gear – think home IoT devices, wireless doorbells and the like. If you want to debug these systems when you’re out and about, this is the tool for you.
The next natural step up is a Raspberry Pi with a full software defined radio attached, built into a Nintendo DS. If you build one, be sure to let us know. This project might serve as some inspiration.
Having an ESP32, ST7735 LCD and RFM69HW inside a NES Controller
https://esp-32.com/index.php/2017/06/11/using-a-rfm69hw-st7735-lcd-display-and-esp32-inside-a-nes-controller/
Tomi Engdahl says:
ESP32 Mini Robot Packs Sensors and 4WD
http://hackaday.com/2017/06/16/esp32-mini-robot-packs-sensors-and-4wd/
[Stefan]’s Mini WiFi/BLE 4WD robot platform (seen next to a matchbox above) packs an impressive capability into a tiny rover. It’s based on a SparkFun ESP32 Thing, a very compact way to add wireless control to your project. Compare it to some giant old UNO with a WiFi shield, these boards are small but powerful, as well as an easy adoption for Arduino fans.
Mini WiFi/BLE 4WD robot platform
A compact & modular WiFi/BLE controlled 4WD robot platform with all required sensors
https://hackaday.io/project/25430-mini-wifible-4wd-robot-platform
Tomi Engdahl says:
ESP32 Display is Worth a Thousand Words
http://hackaday.com/2017/07/03/esp32-display-is-worth-a-thousand-words/
The ESP32 is the successor to the wildly popular ESP8266. There seems to be no end to what the chips can do. However, despite all the wireless communication capabilities, the module doesn’t have a display. [G6EJD] wanted to connect an ILI9341 TFT display and he put the code and information on GitHub. You can also see a video of his work, below.
Since the display uses a serial interface, there isn’t much wiring required. The Adafruit GFX library does the heavy lifting, utilizing the SPI library for the actual communications.
https://github.com/G6EJD/ESP32-and-how-to-use-ILI9341-TFT-Display
Tomi Engdahl says:
Hackaday Prize Entry: An Internet Doorbell
http://hackaday.com/2017/07/05/hackaday-prize-entry-an-internet-doorbell/
The Internet of Things will kill us all and is the worst idea anyone has ever had. However, just because something could be labeled an ‘Internet of Things thing’ doesn’t mean it’s a bad idea. The Hackaday Prize’s Internet of Useful Things challenge was all about finding the Internet of Useful things, and one of these projects is so simple yet so elegant, we’re surprised no one has thought of it yet.
[David]’s entry to the Hackaday Prize is effectively an Internet of Things doorbell. You might think an IoT doorbell would just consist of a device sending push notifications to your phone. That’s part of the project, but it gets so much better.
The brilliant part of this build boils down to a simple relay. On command, [David] can turn his doorbell off. This means no ringing doorbell interrupting meals or naps. By sending a command to the ESP32 in this little device, [David] can enable or disable his doorbell.
iDONT (Internet Doorbell ON/off Trigger)
iDon’t as in I don’t want my doorbell to ring.
https://hackaday.io/project/20545-idont-internet-doorbell-onoff-trigger
I don’t know about you, but the doorbell seems to ring at the wrong time at our house. It’s time to find a way to mute the bell on demand some open source technology!
Using an ESP32 and a relay, the AC lines to the doorbell signal path are interruptible. A web page or app will handle the controls with an automatic timer reset planned.
Tomi Engdahl says:
ESP to Wireshark
http://hackaday.com/2017/07/06/esp-to-wireshark/
Everyone’s favorite packet sniffing tool, Wireshark, has been around for almost two decades now. It’s one of the most popular network analysis tools available, partially due to it being free and open source. Its popularity guaranteed that it would eventually be paired with the ESP32/8266, the rising star of the wireless hardware world, and [spacehuhn] has finally brought these two tools together to sniff WiFi packets.
The library that [spacehuhn] created uses the ESP chip to save Pcap files (the default Wireshark filetype) onto an SD card or send the data over a serial connection. The program runs once every 30 seconds, creating a new Pcap file each time.
A library for creating and sending .pcap files for Wireshark and other programms.
https://github.com/spacehuhn/ArduinoPcap
Create and send .pcap files using ESP8266/ESP32 and Arduino.
Tomi Engdahl says:
Blinking A Light With Ping
http://hackaday.com/2017/07/06/blinking-a-light-with-ping/
The Flashing Light Prize is on right now, and that means all our favorite geeks and YouTubers are aspiring to what could be done with a 555. The rules are simple: turn a light bulb on and off somehow. [Sprite_tm] is answering the call, and he’s blinking lightbulbs at the speed of light.
[Sprite]’s method of blinking a light is simple: Use an ESP32 development board to turn on a relay. At the same time, send a packet out to the Internet and through four servers spread across the globe. When the packet goes through servers in Shanghai, the Netherlands, to Hong Kong, to Germany, and finally Japan — and back again — the light bulb turns off. It’s a physical demonstration of the speed of light and the quality of undersea optical fibers.
Flashing Light Prize 2017: Servers as Distributed World-wide Delay Elements
https://www.youtube.com/watch?v=9t1qx0uWTSg
Tomi Engdahl says:
ESP32 Solar Weather Station
https://www.hackster.io/Tiobel/esp32-solar-weather-station-bf9c23?ref=explore&ref_id=recent___&offset=7
Tomi Engdahl says:
Hackaday Prize Best Product Finalist: Reconfigurable Robots
http://hackaday.com/2017/08/12/hackaday-prize-best-product-finalist-reconfigurable-robots/
Reconfigurable robots have been around for ages. One of the first and most popular reconfigurable robots came out of the MIT Media Lab, and last year, DTTO, a modular snake-like robot, won the 2016 Hackaday Prize. There’s a lot that can be learned from a robot that can turn from a walker to a swimmer to something that clambers over rough terrain, and [Salvador]’s EMME does just that. It’s a 3D printed robot and controller that’s the closest you can get to, ‘the Lego of robots’. All you need to do is plug some wheels into a controller and you’re off to the races.
Already, [Salvador] has on-road wheels for EMME, off-road wheels, above-water wheels, and submersible accessories. This is already an all-terrain robot that’s easy to put together and easy to control, but [Salvador] isn’t done yet. he’s working on new hardware based on the ESP32
EMME “Technology is not complicated”
https://hackaday.io/project/25462-emme-technology-is-not-complicated
He is a 3D printed robot and an example of a prototype who represents a new form of sketching, design, and create
Tomi Engdahl says:
Hands On With The SHACamp 2017 Badge
http://hackaday.com/2017/08/14/hands-on-with-the-shacamp-2017-badge/
The badge has become one of the defining features of a modern hacker camp, a wearable electronic device that serves as both event computer and platform for some mild software and hardware hacking. Some events have had astoundingly sophisticated badges while others are more simple affairs, and the phenomenon has even spawned an ecosystem of unofficial badges which have nothing to do with the event in question.
The SHACamp 2017 badge is the latest to come the way of a Hackaday writer, and certainly contains enough to be taken as representative of the state of hacker camp badges in 2017. It doesn’t have a star turn like CCCCamp 2015’s software defined radio, instead it’s an extremely handy little computer in its own right.
The badge itself is a blue PCB roughly 95mm by 85mm in size, with a front panel dominated by a 296×128 pixel e-ink display and a set of capacitive touch buttons in a layout reminiscent of a Game Boy.
There are surprisingly few integrated circuits, as the “brains” of the device comes via an ESP32 in a postage-stamp Wi-Fi module.
How To Make Four Thousand Badges Without Losing Your Hair
The genesis of this particular badge came two years ago after CCCCamp 2015, but solidified into something approaching the final production with some heavy influence from the functionality of EMF 2016’s Tilda Mkπ badge. It might seem obvious to list the desirable features of a camp badge, but it needed to display the owner’s name or handle, be easy to hack, provide access to event information, and most importantly of all, be working for its users from the start of proceedings. A secondary requirement was that the badge be readable in intense sunlight, as previous badges had been somewhat disappointing in that respect. Networking was originally to have been provided via Bluetooth hotspots, but it was later decided to use WiFi instead due to concerns over excessive use of 2.4GHz spectrum at the event. And finally the success of the EMF badge pointed the way to a MicroPython software environment with an associated library of apps.
Through the final months of 2016 and into 2017 then the first badge prototypes came together.
The replacement for their socket with the plastic protrusions turned out to overlap the edge of the board enough to touch the next panelised board during pick-and-place, and PCBWay, their manufacturer and one of their sponsors, pulled off some heroic mass reworking to deliver the goods. All seemed well, and the boards were manufactured and despatched from China to Europe.
When the completed boards arrived, they worked perfectly. Or at least, they seemed to. It soon became apparent that for about half the boards though there was an unexpected problem in that a switch from USB to battery power would reset the ESP32. This was eventually traced to the Silicon Labs USB to serial chip, and a fix had to be concocted.
It’s a Fake!
The Silicon Labs part had been chosen due to ease of software drivers across all platforms compared to familiar alternatives such as the FTDI chip. Silicon Labs themselves had provided some sponsorship in the form of a significant number of the chips, but that had not been sufficient for the whole production run.
The remainder had to be sourced in China, and as some of you are probably guessing at this point, the chips from China turned out to be fakes.
Even then, they weren’t bad fakes, they performed as you’d expect the original to, but their designer had made a crucial omission in leaving out a protection diode on the USB lines. The resulting spike on disconnection was thus enough to reset the ESP32, spelling potential disaster for the project.
All this design, sourcing, and reworking must have been a Herculean effort, and those of us who attended the camp should all be extremely grateful to the team for delivering us a badge that worked from the start.
What About The Software?
The hardware is only half the story with any badge though, because it is upon the software that a badge makes it or fails. In this context the SHA badge follows the tried and tested route you’d expect of booting into a nickname screen, with a launcher for installed apps (in the badge’s parlance, “eggs”) at the press of a button. There is an app library (The Hatchery), and as this is a hacker camp badge the user is encouraged to write their own apps in MicroPython. The camp attendees did not disappoint in this respect, with many apps pushing the capabilities of the badge to its limit.
Tomi Engdahl says:
Alexa In A Bunny Rabbit
http://hackaday.com/2017/08/16/alexa-in-a-bunny-rabbit/
The Raspberry Pi is the perfect candidate for Google’s AIY where you can talk to a cardboard box with some electronics in it. [BuddyCasino] took on the challenge of squeezing an Alexa Client in an ESP32 and to make things interesting, a bunny rabbit was chosen as the host of the virtual assistant.
A few months ago, we did a teardown of the Google AIY Kit where [BuddyCasino] commented that he managed to port the Echo Dot client into and ESP32.
An Alexa Smart Speaker project for the ESP32.
https://github.com/MrBuddyCasino/ESP32_Alexa
Connecting the I2S codec
If you don’t know about the I2S standard, it is a special protocol for transferring digital audio data between chips, similar to I2C. There are many I2S chips you can choose from, the most important differences are:
Amplification: some chips only decode the audio to a low analog level, so you need a separate amp, but some also have a built-in amplifier. Most of these 2-in-1 chips are made for smartphones so their energy output is in the range of 2-4W, but some other ones made for domestic audio appliances can go a lot higher.
MCLK: this is a separate clock signal that sometimes needs to be a precise number in the MHz range that depends on the current sample rate, sometimes can be a single constant value (“asynchronous”) independent of the current sample rate, and sometimes is not required at all. The ESP32 does not output a MCLK signal, so a chip that does not require MCLK is most convenient. If you already have an asynchronous one lying around (e.g. ES9023), you will need a quartz oscillator, usually in the range of 20-50MHz.
I tested several I2S codecs, and was happiest with the MAX98357A, because it does not require MCLCK and also amplifies the audio to speaker levels
Connecting the I2S microphone
Connect the I2S microphone like this:
ESP pin – I2S signal
———————-
GPIO18 – LRCK
GPIO17 – BCLK
GPIO05 – DATA
Tomi Engdahl says:
ESP32 KiCAD Library
https://hackaday.io/project/13483-esp32-kicad-library
KiCAD component and footprint libary for ESP32 ,ESP32-WROOM, and ESP3212 modules
Tomi Engdahl says:
HeartyPatch: A single-lead ECG-HR patch with ESP32
https://hackaday.io/project/21046-heartypatch-a-single-lead-ecg-hr-patch-with-esp32
HeartyPatch is a fully open-source, IoT connected, BLE enabled heart-rate variability & ECG patch with great accuracy
ECG monitors are plenty, so how is this one different? We’re glad you asked, read on to find out more. HeartyPatch is a completely open-source wireless single-lead ECG “patch” which can calculate heart-rate, R-R intervals and most importantly, Heart-rate variability (HRV). Connect this data to the web of things through WiFi/Bluetooth, or also connect to an app on your phone, and you’ve got your very own, smart, cloud-connected HRV monitor.
Once we laid eyes on the MAX30003 single-lead ECG monitoring chip from Maxim, we were excited to make heart-rate variability available at a much lower cost that “Professional” patches. This led to development of the MAX30003 single-lead ECG monitor breakout board from ProtoCentral.
One thing led to another and here we are with HeartyPatch, a single-lead ECG and R-R intervals/heart-rate monitoring patch. ECG “patches” have long been a dream and a real need for cardiac risk assessment as well as for high-accuracy fitness and health monitoring.
Tomi Engdahl says:
Secret Serial Port for Arduino/ESP32
http://hackaday.com/2017/08/17/secret-serial-port-for-arduinoesp32/
If you use the Arduino IDE to program the ESP32, you might be interested in [Andreas Spiess’] latest video (see below). In it, he shows an example of using all three ESP32 UARTs from an Arduino program. He calls the third port “secret” although that’s really a misnomer. However, it does require a quick patch to the Arduino library to make it work.
Just gaining access to the additional UARTs isn’t hard. You simply use one of the additional serial port objects available. However, enabling UART 1 causes the ESP32 to crash! The reason is that by default, UART 1 uses the same pins as the ESP32 flash memory.
Luckily, the chip has a matrix switch that can put nearly any logical I/O pin on any physical I/O pin. [Andreas] shows how to modify the code, so that UART 1 maps to unused pins, which makes everything work.
#152 Quickie: Additional ESP32 Serial Channels in Arduino IDE
https://www.youtube.com/watch?v=GwShqW39jlE
Tomi Engdahl says:
MicroPython for ESP32
https://www.youtube.com/watch?v=6N1hNRDkm0o
This talk was given at PyCon Australia 2017 which was held from 3-8 August, 2017 in Melbourne, Victoria.
PyCon Australia is the national conference for users of the Python Programming Language. In August 2017, we’re returning to Melbourne, bringing together students, enthusiasts, and professionals with a love of Python from around Australia, and from all over the World.
Tomi Engdahl says:
http://espressif.com/en/content/esp32-pico-d4-datasheet
Tomi Engdahl says:
The new ESP32-PICO-D4 SIP module combines an ESP32 SoC, crystal oscillator, filter capacitors, RF matching links, and 4MB flash, all into a single 7 mm × 7 mm QFN package.
Introducing the New ESP32-PICO-D4 SIP
https://blog.hackster.io/introducing-the-new-esp32-pico-d4-sip-99476238bc07
The ESP8266 was a breakthrough success for Espressif Systems. Since it first came to the attention of makers back in 2014 it has become the “third community” in the maker electronics world, alongside the Arduino and the Raspberry Pi. As a result, last year’s release of the ESP32 was highly anticipated.
The ESP32 was faster, had better WiFi, support for Bluetooth LE, and it was only slightly more expensive—and importantly for the Internet of Things, it also had onboard security support.
The new ESP32-PICO-D4 SIP combines an ESP32 SoC, crystal oscillator, filter capacitors, RF matching links, and 4MB flash, into a single 7 mm × 7 mm QFN package.
Tomi Engdahl says:
The ESP32… On A Chip
https://hackaday.com/2017/09/06/the-esp32-on-a-chip/
The new hotness in microcontrollers is the ESP32. This chip, developed by Espressif, is the follow-on to the very popular ESP8266, the cheap, low-power, very capable WiFi-enabled microcontroller that came on the scene a few years ago. The ESP32 is another beast entirely with two powerful cores, WiFi and Bluetooth, and peripherals galore. You can even put an NES emulator in there.
While the ESP32 is significantly more powerful, it has for now been contained in modules. What would really be cool is a single chip loaded up with integrated flash, filter caps, a clock, all on a 7x7mm QFN package. Meet the ESP32-Pico-D4 (PDF). It is, effectively, an ESP32 on a chip. It’s just the ticket if you’re trying to cram wireless, fast microcontroller wizardry into a small package.
At its heart, the ESP32-Pico is your normal ESP32 module with a Tensilica dual-core LX6 microcoprocessor, 448 kB of ROM, 520 kB of SRAM, 4 MB of Flash (it can support up to 16 MB), Wireless with 802.11 b/g/n and Bluetooth 4.2, and a cornucopia of peripherals that include an SD card, UART, SPI, SDIO, LED and motor PWM, I2S, I2C, cap touch sensors, and a Hall effect sensor. It’s quite literally everything you could ever want in a microcontroller.
Disregarding the just barely hand-solderable package and the need for a PCB antenna, the ESP32-Pico requires very few support components.
Unfortunately, apart from the PDF released by Espressif, the details on the EPS32-on-a-chip are sparse.
http://espressif.com/sites/default/files/documentation/esp32-pico-d4_datasheet_en.pdf
Tomi Engdahl says:
Datalogger uses ESP32 and ESP8266 Low Power Modes
https://hackaday.com/2017/09/24/datalogger-uses-esp32-and-esp8266-low-power-modes/
[G6EJD] wanted to design a low power datalogger and decided to look at the power consumption of an ESP32 versus an ESP8266. You can see the video results below.
Of course, anytime someone does a power test, you have to wonder if there were any tricks or changes that would have made a big difference. However, the relative data is interesting (even though you could posit situations where even those results would be misleading). You should watch the videos, but the bottom line was a 3000 mAh battery provided 315 days of run time for the ESP8266 and 213 days with the ESP32.
Tomi Engdahl says:
Quick and Easy NTP Clock
https://hackaday.com/2017/10/04/quick-and-easy-ntp-clock/
[Danman] got an ESP32 with built-in OLED display, and in the process of getting a clock up and running and trying to get a couple of NodeMCU binaries installed on it, thought he’d try rolling his own.
[Danman] used PlatformIO to write the code to his ESP. PlatformIO allowed [Danman] to browse for a NTP library and load it into his project. After finding the NTP library, [Danman] wrote a bit of code and was able to upload it to the ESP.
ESP32 NTP OLED clock
https://blog.danman.eu/esp32-ntp-oled-clock/
As a first project with my new ESP32 module with OLED display I chose to build OLED clock. I thought I’ll just find some existing code, upload it and it’s done. There are a few such projects for ESP8266 in NodeMCU. So I started with NodeMCU upload.
Tomi Engdahl says:
First industrial gateway series based on new ESP32 chips
https://www.open-electronics.org/first-industrial-gateway-series-based-on-new-esp32-chips/
Every day we see new devices for IoT, but this is the first module we see with an ESP32 for industrial use.
we are happy to inform that few days ago TECHBASE, industrial automation manufacturer and distributor, introduced first industrial solution based on Espressif’s ESP32 module
http://moduino.techbase.eu
Tomi Engdahl says:
ESP32 – LoRa – OLED Module
https://hackaday.io/project/27791-esp32-lora-oled-module
Get the most out of your (heltec/ttgo/aliexpress) ESP32 LoRa OLED development board
This project aims to revel the hidden secrets of this ESP32 WiFi Lora module. Not much details have surfaced yet about this board. Consider this as a forum to ask questions and get answers..
Tomi Engdahl says:
Python on ESP32 for Industrial IoT Applications
https://goo.gl/Kgvoev
Tomi Engdahl says:
Cable Modem Restarter (Turn Off & On )
How to restart DOCSIS 2.0 cable modem with an ESP32 and a relay?
https://hackaday.io/project/28228-cable-modem-restarter-turn-off-on
Tomi Engdahl says:
Over-Engineered Clock Uses No Less Than Five ESP32s
https://hackaday.com/2017/11/27/over-engineered-clock-uses-no-less-than-five-esp32s/
When [Proto G] enters into an Instructables contest whose only requirement is for the project to be wireless; he does so with style. Let’s put aside for a minute that he’s using a separate ESP32 board for each of the clock’s characters – that’s one for the hour, then one for the colon, one for the minutes and other colon and then the seconds. If you’re keeping count, that’s FIVE ESP32s.
Intentionally Complicated ESP32 Wireless Clock
https://www.youtube.com/watch?v=7cszRjhAN34&feature=youtu.be
Tomi Engdahl says:
Read Phone Notifications Using ESP
https://www.hackster.io/mitchwongho/read-phone-notifications-using-esp-eb0ad4
Ever find yourself fumbling one-handed to read a notification on your phone, when all you need is a simple display? This project for you!
Tomi Engdahl says:
Turning an Oscilloscope into a Video Display with an ESP32
https://blog.hackster.io/turning-an-oscilloscope-into-a-video-display-with-an-esp32-4be0e96370b3
If you’re lucky enough to have your own oscilloscope with an X/Y raster function, Bitluni has a tutorial on how to use it to play video using an ESP32.
Tomi Engdahl says:
Imagine A Cluster Of ESP32s
https://hackaday.com/2018/01/14/imagine-a-cluster-of-esp32s/
When the ESP32 microcontroller first appeared on the market it’s a fair certainty that somewhere in a long-forgotten corner of the Internet a person said: “Imagine a Beowulf cluster of those things!”.
Someone had to do it, and it seems that the someone in question was [Kodera2t], who has made a mini-cluster of 4 ESP32 modules on a custom PCB. They might not be the boxed computers that would come to mind from a traditional cluster, but an ESP32 module is a little standalone computer with processing power that wouldn’t have looked too bad on your desktop only in the last decade. The WiFi on an ESP32 would impose an unacceptable overhead for communication between processors, and ESP32s are not blessed with wired Ethernet, so instead the board has a parallel bus formed by linking together a group of GPIO lines.
ESP32 cluster system
The performance 600DMIPS of ESP32 is enough to drive me.
https://hackaday.io/project/28918-esp32-cluster-system
Tomi Engdahl says:
The Arrival of ESP32-Based Voice Hardware
https://blog.hackster.io/the-arrival-of-esp32-based-voice-hardware-e3d9beab12c7
Amazon’s $100 million Alexa Fund has paid dividends for them with a stealth takeover of CES for the last couple of years, where we’ve seeing third-party manufacturers integrating Amazon’s technology into devices ranging from cameras to cars. But this year’s take over of CES was anything but stealthy, because Amazon Alexa and Google Assistant went head-to-head in Vegas, and arguably Google came out ahead. While the donuts might have helped, it’s clear that Google has put a lot of effort into appealing to developers, and catching up with Amazon’s apparent lead.
Although both Amazon and Google have shipped their own development kits, the two big players have very different approaches. Amazon’s hardware is aimed squarely at commercial manufacturers, while Google’s kits are aimed at makers and hobbyists rather than companies.
Tomi Engdahl says:
ESP32 Makes for World’s Worst Radio Station
https://hackaday.com/2018/01/28/esp32-makes-for-worlds-worst-radio-station/
We can say one thing for [bitluni]: the BOMs for his projects, like this ESP32 AM radio transmitter, are always on the low side. That’s because he leverages software to do jobs traditionally accomplished with hardware, always with instructive results.
In this case, the job at hand is creating an RF oscillator in the broadcast AM band and modulating some audio onto it. From his previous experience using an ESP32 to watch video on an oscilloscope, [bitluni] knew that the microcontroller’s DACs were up to the task of producing an 800-kHz signal, and he managed to produce a more-or-less sine wave carrier with some clever code.
AM Radio Transmitter
http://bitluni.net/am-radio-transmitter/
AM Radio transmissions are based on a carrier signal which is modulated by the audio signal. It’s a very basic principle but prone to noise from the environment. Using the ESP32 it is really simple to generate an analog signal using the built-in DACs. With the provided code here just a wire as an antenna has to be connected to the pin 25 of the ESP32. The transmission will end up on the AM frequency ~835kHz.
Tomi Engdahl says:
Build an AM Radio Transmitter and Learn About Carrier Signal Modulation
https://blog.hackster.io/build-an-am-radio-transmitter-and-learn-about-carrier-signal-modulation-676b4b83cd80
If you’re curious about trying that out for yourself, Bitluni’s AM Radio Transmitter tutorial is a fantastic first step. If you’ve ever seen an amateur radio enthusiast’s workshop, you may think this will take a truckload of equipment and 30 foot radio antenna mast attached to the side of your house. Fortunately, that’s not necessary for this project—all you’ll need is an ESP32 and a single wire.
https://www.youtube.com/watch?v=lRXHd3HNzEo
Tomi Engdahl says:
ESP32, We Have Ways to Make You Talk
https://hackaday.com/2018/02/06/esp32-we-have-ways-to-make-you-talk/
“You expect me to talk?” And the reply is, “No Mr. Bond, I expect you to die!” When it comes to the ESP32, though, apparently [XTronical] expects it to talk. He posted a library to simplify playing WAV files on the ESP32.
Digitised speech/sound on ESP32 – Playing Wavs
http://www.xtronical.com/basics/audio/digitised-speech-sound-esp32-playing-wavs/
Tomi Engdahl says:
ESP32 Weather Station on a PCB
https://hackaday.com/2018/02/10/esp32-weather-station-on-a-pcb/
We see lots of ESP8266 projects, but considerably fewer for the ESP32. So this good-looking weather station on a PCB using an ESP32 caught our eye. The board has a few sockets for common weather gear, but with a little modification, it would be a great carrier for an ESP32. Since the PCB layout is available, you could change things around to suit you.
Build an All-in-One ESP32 Weather Station Shield
https://randomnerdtutorials.com/build-an-all-in-one-esp32-weather-station-shield/
In this project I’ll show you how you can build an all-in-one ESP32 weather station shield and display the sensor readings on a web server. The web server displays data from all the sensors and automatically updates the readings every ten seconds, without the need to refresh the web page.
Tomi Engdahl says:
ESP32, We Have Ways to Make You Talk
https://hackaday.com/2018/02/06/esp32-we-have-ways-to-make-you-talk/
Tomi Engdahl says:
Software Defined Television on an ESP32
https://hackaday.com/2018/02/22/software-defined-television-on-an-esp32/
Composite video from a single-board computer? Big deal — every generation of Raspberry Pi has had some way of getting composite signals out and onto the retro monitor of your choice. But composite video from an ESP32? That’s a thing now too.
There are some limitations, of course, not least of which is finding a monitor that can accept a composite input, but since [bitluni]’s hack uses zero additional components
http://bitluni.net/esp32-composite-video/
Tomi Engdahl says:
ESP32 Makes for World’s Worst Radio Station
https://hackaday.com/2018/01/28/esp32-makes-for-worlds-worst-radio-station/
Tomi Engdahl says:
Yes, Your ESP32 Can Output Composite Video, and Bitluni Will Show You How
https://blog.hackster.io/yes-your-esp32-can-output-composite-video-and-bitluni-will-show-you-how-dac05e1f6e94
Tomi Engdahl says:
ATmega328PB Xplained Mini
https://www.eeweb.com/profile/microchip/news/atmega328pb-xplained-mini
The ATmega328PB Xplained Mini evalutation kit is a hardware platform for evaluating the ATmega328PB microcontroller (MCU). The evaluation kit comes with a fully integrated debugger that provides seamless integration with Atmel Studio. The kit provides access to the features of the ATmega328PB MCU enabling easy integration of the device into a custom design
Tomi Engdahl says:
Build Your Own Supercomputer with ESP32s
https://hackaday.com/2018/04/17/build-your-own-supercomputer-with-esp32s/
If the computer you have isn’t particularly fast, there’s a well-documented way to get more out of it. You just need more of the same computer, and you can run your tasks on them all at the same time. Building computer clusters is an effective way of decreasing the time it takes for computers to solve certain problems, even if the computers themselves aren’t top-of-the-line hardware. Of course, with cheap enough hardware, people will build clusters out of just about anything, including the ESP32.
For this project, [Wei Lin] admits that this isn’t really a serious attempt at building speedy hardware, but rather an interesting exercise in creating a cluster as a sort of learning experience. ESP32 boards can be found for around $10 so building an experimental cluster with these is even more feasible than using the Raspberry Pi.
Broccoli – distributed task queues for ESP32 cluster
https://github.com/Wei1234c/Broccoli/blob/master/notebooks/demo/Broccoli_readme_en.md
Tomi Engdahl says:
Color PAL Encoding
https://www.youtube.com/watch?v=-JXuwwXQh8c
This video demonstrated how the color signal is modulated and corrected on PAL. The composite signal is generated using the ESP32 and displayed on a TV.
Tomi Engdahl says:
AM Radio Transmitter on ESP32
https://www.youtube.com/watch?v=lRXHd3HNzEo
This video shows how to make a super simple AM radio transmitter using the ESP32 microcontroller.
Tomi Engdahl says:
ESP32 Composite Video
https://www.youtube.com/watch?v=5t1_XNc3vNw
This video shows how to generate a composite video signal using the ESP32 microcontroller.
Tomi Engdahl says:
ESP32 Game Console Audio
https://www.youtube.com/watch?v=MOoKQnWF4OY
In this video we add audio output to our composite video making the console almost complete.
Tomi Engdahl says:
The ESP Mesh Development Framework
https://blog.hackster.io/the-esp-mesh-development-framework-2d521bfd884
The official mesh development framework for the ESP32 chip
Tomi Engdahl says:
ESP32 with Camera and TFT Display (OV7670, FIFO)
https://www.youtube.com/watch?v=v_8XifFcpaI
This video is the first of a miniseries showing how to interface a camera to a microcontroller (ESP32 in this case) and display the image on a TFT display. As development environment, the Arduino IDE is used.
OV7670 with FIFO
Home / OV7670 with FIFO
http://bitluni.net/ov7670-with-fifo/
This project shows how to interface the cheap OV7670 camera with FIFO using an ESP32 and display the image on an SPI TFT.
Tomi Engdahl says:
ESP32 Deep Sleep Tutorial
https://www.hackster.io/nickthegreek82/esp32-deep-sleep-tutorial-4398a7
Have you imagined you project to last on regular AA batteries for almost 5 years? This is possible with the ESP32 chip.
Tomi Engdahl says:
ESP32
https://en.wikipedia.org/wiki/ESP32
ESP32 is a series of low cost, low power system on a chip microcontrollers with integrated Wi-Fi and dual-mode Bluetooth. The ESP32 series employs a Tensilica Xtensa LX6 microprocessor in both dual-core and single-core variations and includes in-built antenna switches, RF balun, power amplifier, low-noise receive amplifier, filters, and power management modules.
Programming languages, frameworks, platforms, and environments used for ESP32 programming:
Arduino IDE with the ESP32 Arduino Core
Espressif IoT Development Framework – Official Espressif development framework for ESP32.
Espruino – JavaScript SDK and firmware closely emulating Node.js.
Lua RTOS for ESP32
Mongoose OS – An operating system for connected products on microcontrollers; programmable with JavaScript or C. A recommended platform by Espressif Systems,[32] AWS IoT,[33] and Google Cloud IoT.[34]
mruby for the ESP32
PlatformIO Ecosystem and IDE
Pymakr IDE – IDE designed for use with Pycom devices; handles firmware upgrades and includes MicroPython REPL console.
Simba Embedded Programming Platform
Whitecat Ecosystem Blockly Based Web IDE
MicroPython
Zerynth – Python for IoT and microcontrollers, including the ESP32.
Use in commercial devices
Alibaba Group’s IoT LED wristband, used by participants at the group’s 2017 annual gathering. Each wristband operated as a “pixel”, receiving commands for coordinated LED light control, allowing formation of a “live and wireless screen”.[35]
DingTalk’s M1, a biometric attendance-tracking system.[36]
LIFX Mini, a series of remotely controllable, LED based light bulbs.[37]
Pium, a home fragrance and aromatherapy device.[38]
Use in industrial devices
TECHBASE’s Moduino X series X1 and X2 modules are ESP32-WROVER based computers for industrial automation and monitoring, supporting digital inputs/outputs, analog inputs, and various computer networking interfaces.
Tomi Engdahl says:
How to Get Started with the ESP32
https://hackaday.com/2016/10/04/how-to-get-started-with-the-esp32/