💾 Archived View for oppen.digital › memex › 20211017 captured on 2021-12-03 at 14:04:38. Gemini links have been rewritten to link to archived content

View Raw

More Information

-=-=-=-=-=-=-

Getting Started with ESP32

My work has an ESP32 powered device that includes white and brown noise as a sleep aid, but it uses a looped MP3 which has always bothered me a little. This is the beginning of attempting to get some properly generated white noise playing on the ESP32.

I ordered the first board I found which is a JZK ESP-32S ESP32, I probably should have done more research, I've got an Adafruit board on the way too now, but for now I'll carry on the the JZK and see if I can make any progress.

Install Arduino

As a first step I just want to get any comms working with the board so Arduino seems like a good starting place:

Arduino IDE

From the IDE preferences add https://dl.espressif.com/dl/package_esp32_index.json to the 'Additional Boards Manager URLs' input box and install (around 50mb)

For the JZK board other users have reported success then using the ESP32 Dev Module target (select Tools > Board > ESP32 Arduino), I also needed to install USB drivers:

ESP32 CP210x USB to UART Bridge VCP Drivers

Following a tutorial I opened and uploaded the WiFi > WiFi Scan sketch from the Arduino examples, I got a prompt to choose a serial port and selected /dev/cu.SLAB_USBtoUART - remembering reading there's a fault with this JZK board I held down the right hand micro switch on the board while uploading - all went well and the Arduino IDE reported 'Done uploading'. I then opened the Arduino serial monitor (Tools > Serial Monitor) and set the rate to 115200, success:

rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:1
load:0x3fff0018,len:4
load:0x3fff001c,len:1216
ho 0 tail 12 room 4
load:0x40078000,len:10944
load:0x40080400,len:6388
entry 0x400806b4
Setup done
scan start
scan done
3 networks found
1: **REDACTED** (-50)*
2: **REDACTED** (-52)*
3: **REDACTED** (-69)*

This went much smoother than I expected. I'll spend more time experimenting with the Arduino environment but the work device uses FreeRTOS so I'll eventually need to figure that out too:

FreeRTOS