ESP32 and ESP8266 Development

  1. Networking and Connectivity
    1. Wi-Fi Functionality
      1. Station Mode (STA)
        1. Scanning for Networks
          1. WiFi.scanNetworks()
            1. Network Information Retrieval
            2. Connecting to an Access Point
              1. WiFi.begin() Function
                1. Connection Status Monitoring
                2. Handling Wi-Fi Events
                  1. Connection Events
                    1. Disconnection Events
                      1. IP Address Assignment
                    2. Access Point Mode (AP)
                      1. Creating a Wi-Fi Network
                        1. WiFi.softAP() Function
                        2. Configuring AP Settings
                          1. SSID Configuration
                            1. Password Protection
                              1. Channel Selection
                                1. Maximum Connections
                              2. STA + AP Mode
                                1. Simultaneous Station and Access Point Operation
                                  1. Use Cases for Dual Mode
                                    1. Configuration Considerations
                                    2. Wi-Fi Manager Libraries for Dynamic Configuration
                                      1. Captive Portal Setup
                                        1. Saving and Loading Wi-Fi Credentials
                                          1. Reset and Reconfiguration
                                        2. Network Protocols
                                          1. HTTP/HTTPS
                                            1. Making GET Requests
                                              1. HTTPClient Library
                                                1. Response Handling
                                                2. Making POST Requests
                                                  1. Data Formatting
                                                    1. Content Types
                                                    2. Creating a Web Server
                                                      1. WebServer Library
                                                        1. Serving HTML Pages
                                                          1. Serving JSON Data
                                                            1. Handling HTTP Requests
                                                              1. GET Requests
                                                                1. POST Requests
                                                                  1. URL Parameters
                                                              2. MQTT (Message Queuing Telemetry Transport)
                                                                1. Core Concepts
                                                                  1. Broker
                                                                    1. Client
                                                                      1. Topic
                                                                        1. Publish
                                                                          1. Subscribe
                                                                            1. Retain Messages
                                                                            2. Connecting to an MQTT Broker
                                                                              1. Client Configuration
                                                                                1. Authentication
                                                                                2. Publishing Sensor Data
                                                                                  1. Topic Structure
                                                                                    1. Data Formatting
                                                                                    2. Subscribing to Commands
                                                                                      1. Callback Functions
                                                                                        1. Message Processing
                                                                                        2. Quality of Service (QoS) Levels
                                                                                          1. QoS 0 (At most once)
                                                                                            1. QoS 1 (At least once)
                                                                                              1. QoS 2 (Exactly once)
                                                                                            2. NTP (Network Time Protocol)
                                                                                              1. Synchronizing Onboard Time
                                                                                                1. Configuring NTP Servers
                                                                                                  1. Time Zone Handling
                                                                                                  2. mDNS (Multicast DNS)
                                                                                                    1. Device Discovery on a Local Network
                                                                                                      1. Assigning Hostnames
                                                                                                        1. Service Advertisement
                                                                                                      2. Bluetooth (ESP32 only)
                                                                                                        1. Bluetooth Classic
                                                                                                          1. Serial Port Profile (SPP)
                                                                                                            1. Setting Up SPP Communication
                                                                                                              1. Pairing and Data Exchange
                                                                                                                1. Device Discovery
                                                                                                              2. Bluetooth Low Energy (BLE)
                                                                                                                1. Core Concepts
                                                                                                                  1. GATT (Generic Attribute Profile)
                                                                                                                    1. Services
                                                                                                                      1. Characteristics
                                                                                                                        1. Descriptors
                                                                                                                        2. Creating a BLE Server
                                                                                                                          1. Service Definition
                                                                                                                            1. Characteristic Configuration
                                                                                                                              1. Advertising Services
                                                                                                                                1. Handling Client Connections
                                                                                                                                2. Creating a BLE Client (Scanner)
                                                                                                                                  1. Scanning for Devices
                                                                                                                                    1. Connecting to BLE Servers
                                                                                                                                      1. Reading and Writing Characteristics
                                                                                                                                      2. Beacons
                                                                                                                                        1. iBeacon Format
                                                                                                                                          1. Eddystone Format
                                                                                                                                            1. Broadcasting Beacon Data
                                                                                                                                        2. ESP-NOW
                                                                                                                                          1. Low-Power, Connectionless Wi-Fi Protocol
                                                                                                                                            1. Peer-to-Peer Communication
                                                                                                                                              1. Registering Peers
                                                                                                                                                1. MAC Address Management
                                                                                                                                                  1. Sending and Receiving Data
                                                                                                                                                  2. Broadcast and Unicast Communication
                                                                                                                                                    1. Use Cases for ESP-NOW
                                                                                                                                                      1. Sensor Networks
                                                                                                                                                        1. Remote Control Applications