t # SBP-Embedded This is the embedded systems repository for the Solar Bench PRoject
We will be using the Arduino IDE to help develop the software needed to control the ESP-32 microcontroller. The Arduino IDE is user-friendly, well-documented, and is great for beginners.
- Visit the Arduino website to install the latest version of the Arduino IDE.
- After getting the latest version of the Arduino IDE, follow this tutorial as it provides an in-depth guide to adding the ESP32 board as a recognized board to the Arduino IDE (You may skip the installation test step, but ensure that the example sketches can be found).
- Now you need to add all the necessary libraries to compile the program. Go to Sketch -> Include Library -> Manage Libraries and add the following libraries:
- Google Cloud IoT Core JWT
- PubSubClient
- MQTT
- Vector
- Go to Tools -> Board -> ESP32 Arduino. Select any ESP32 board.
- Verify that the sketch compiles without errors. (Sketch -> Verify)
The following links are useful to help configure the Arduino Environment
Espressif Arduino Core Documentation
Example Tutorial
- sudo python esptool.py write_flash_status --non-volatile 0
- sudo python esptool.py --chip auto --port /dev/cu.usbserial-0001 --baud 115200 --before default_reset --after hard_reset write_flash -u --flash_mode dio --flash_freq 40m --flash_size 4MB 0x0 factory/factory_WROOM-32.bin
- sudo python esptool.py --chip auto --port /dev/cu.usbserial-0001 --baud 115200 --before default_reset --after hard_reset write_flash -u --flash_mode dio --flash_freq 40m --flash_size 4MB 0x0 factory/factory_WROVER-32.bin
- sudo python esptool.py erase_flash
- sudo python esptool.py read_flash_status
- sudo python esptool.py flash_id
Intro to ESP32
EEPROM for ESP32
Install Google Cloud
Install Google Cloud Help
Google Cloud Platform for ESP32 1
Google Cloud Platform for ESP32 2
ESP32 Multithreading 1
ESP32 Multithreading 2