- 1. Introduction
❱
- 1.1. ESP32 Family
- 1.2. Pinout Diagram
- 1.3. Dev Environment
- 1.4. Quick Start
- 1.5. Abstraction Layers
- 1.6. FAQ
- 1.7. Help & Troubleshooting
- 2. From std to no_std
❱
- 2.1. Cross Compilation
❱
- 2.1.1. For Microcontroller
- 2.1.2. Toolchain
- 2.2. no_std
- 2.3. Panic Handler
- 2.4. no_main
- 2.5. Peripherals
- 2.6. Init ESP HAL
- 2.7. LED
- 2.8. Linker Script
- 2.9. Flash
- 3. PWM
❱
- 3.1. PWM in Depth
- 3.2. LED PWM Controller
- 3.3. MCPWM in ESP32
- 4. Fading LED
❱
- 4.1. Code
- 4.2. External LED
- 5. Embassy
❱
- 5.1. Blinky with Embassy
- 6. Buzzer
❱
- 6.1. Circuit
- 6.2. Active Beep
- 6.3. Play Songs
❱
- 6.3.1. Music notes
- 6.3.2. Music module
- 6.3.3. Song module
- 6.3.4. Code
- 7. Voltage Divider
- 8. Ultrasonic
❱
- 8.1. How it works?
- 8.2. Circuit
- 8.3. Code
- 8.4. Using Buzzer
- 9. PIR Sensor
❱
- 9.1. Adjustments
- 9.2. Circuit
- 9.3. Motion Detection
- 9.4. Burglar Alarm
- 10. Servo Motor
❱
- 10.1. PWM and Servo Position
- 10.2. Circuit
- 10.3. LEDC PWM
- 10.4. Code
- 10.5. Servo With MCPWM
- 11. ADC
❱
- 11.1. ADC in ESP32
- 12. LDR
❱
- 12.1. How it works?
- 12.2. LDR With LED
❱
- 12.2.1. Code
- 13. Wi-Fi
❱
- 13.1. Station Mode
- 13.2. Access Website (Embassy)
❱
- 13.2.1. Connecting Wifi
- 13.2.2. HTTP Request
- 13.3. Webserver on ESP32
❱
- 13.3.1. Wi-Fi module
- 13.3.2. Serve Webpage
- 13.3.3. Exposing to Internet
- 13.4. Static IP
- 13.5. Control LED
❱
- 13.5.1. API and Webpage
- 13.6. Create Wi-Fi
❱
- 13.6.1. Setup Wi-Fi
- 13.6.2. Web Module
- 13.6.3. How to Run?
- 14. I2C
❱
- 14.1. I2C in Embedded Rust
- 14.2. ESP32 I2C
- 15. OLED Display
❱
- 15.1. How it works?
- 15.2. Circuit
- 15.3. Crates
- 15.4. Hello, Rust!
- 15.5. Draw Image
❱
- 15.5.1. Code
- 15.5.2. MultiByte
- 15.5.3. Code
- 15.5.4. BMP File
- 16. Thermistor
❱
- 16.1. NTC and Voltage Divider
- 16.2. ADC
❱
- 16.2.1. Maths
- 16.2.2. ADC Non-Linearity
- 16.3. Non-Linear
❱
- 16.3.1. B Equation
- 16.3.2. Steinhart Equation
- 16.4. Circuit
- 16.5. Print ADC
- 16.6. Temperature on OLED
❱
- 16.6.1. Code
- 17. SPI
❱
- 17.1. SPI in Rust Ecosystem
- 17.2. ESP32 SPI
- 18. SD Card (MMC/SDC)
❱
- 18.1. Circuit
- 18.2. Read From SD Card
- 18.3. Write To SD Card
- 19. RFID (RC522)
❱
- 19.1. Hardware
- 19.2. MIFARE
- 19.3. Flow
- 19.4. Circuit
- 19.5. Read UID
- 19.6. Read Data
❱
- 19.6.1. Dump Memory
- 19.7. Access control
❱
- 19.7.1. AccessBits Calc
- 19.8. Write Data
❱
- 19.8.1. Change Auth Key
- 19.9. Project Ideas
- 20. Joystick
❱
- 20.1. Movement and ADC
- 20.2. Pin layout
- 20.3. Circuit
- 20.4. Print ADC Values
- 21. Bluetooth
❱
- 21.1. BLE
❱
- 21.1.1. GAP
- 21.1.2. GATT
- 21.1.3. Code
- 21.1.4. Notification
- 22. LCD
❱
- 22.1. How it works?
- 22.2. Pin Layout
- 22.3. Circuit
- 22.4. Hello, Rust!
- 22.5. Supported Characters
- 22.6. Custom Characters
❱
- 22.6.1. Generator
- 22.6.2. Display on LCD
- 22.6.3. Multi Generator
- 22.6.4. Multi Custom
- 22.6.5. Symbols Index
- 23. e-Ink (e-Paper)
❱
- 23.1. How it works?
- 23.2. Circuit
- 23.3. Draw Text
- 23.4. Draw Image
- 23.5. Weather Station
❱
- 23.5.1. icons
- 23.5.2. Wi-Fi
- 23.5.3. API
- 23.5.4. Dashboard
- 23.5.5. Fun
- 24. TFT Display
❱
- 24.1. Circuit
- 24.2. Write Text
- 24.3. Draw Image
- 25. Projects