# Huiyang Embedded # Beijing Huiyang Technology Co., Ltd. > ESP32 hardware development and firmware design, explained from Espressif official examples. Site: https://esp32-embedded.com Scope: ESP32-based hardware development and firmware design. English is the default. Chinese is on the same URL. Contact: Leo · WhatsApp +86 17052886709 · https://wa.me/8617052886709 Technical exchange is welcome without a purchase order. ## Pages - https://esp32-embedded.com/ - https://esp32-embedded.com/projects.html - https://esp32-embedded.com/modules.html - https://esp32-embedded.com/custom.html - https://esp32-embedded.com/discuss.html - https://esp32-embedded.com/about.html ## Projects Each project page uses four sections: Overview, Hardware, Software flow, Core points. - https://esp32-embedded.com/projects/12v-220v.html — 12V to 220V DC Boost Module (MAX1771). A MAX1771-based DC-DC boost converter that steps 12V up to 220V DC, designed for high-voltage loads such as Nixie tubes and tube amplifiers. - https://esp32-embedded.com/projects/chao-mi-ni-sheng-ya-mu-kuai-transfer.html — Ultra-Mini Boost Module (SX1308). A compact boost converter based on the SX1308, suitable for portable power applications. - https://esp32-embedded.com/projects/eda-piano.html — EDA-Piano: 12-Key Touch Piano (ESP8266 + SC12B). A low-cost 12-key touch piano based on ESP8266 and SC12B, with chord support, OLED display, and WiFi control. - https://esp32-embedded.com/projects/diy-2.html — BBTalkie: A Hands-Free Mini Walkie-Talkie Based on ESP32. A portable ESP32-based walkie-talkie that uses an embedded neural network for voice activity detection and keyword spotting, enabling push-to-talk-free operation. - https://esp32-embedded.com/projects/blink.html — Blink status LED. The first proof a board is alive. On a product this is the power or status lamp. - https://esp32-embedded.com/projects/hello-world.html — Hello World UART heartbeat. Tells you in one page whether the toolchain, flash path and serial monitor work. - https://esp32-embedded.com/projects/wifi-station.html — Wi-Fi Station join. Join an existing router and get an IP. Almost every cloud product starts here. - https://esp32-embedded.com/projects/wifi-softap.html — Wi-Fi SoftAP hotspot. The device hosts its own hotspot for phone-based provisioning or local control. - https://esp32-embedded.com/projects/wifi-scan.html — Wi-Fi Scan. List nearby APs and RSSI. Used for channel choice and provisioning lists. - https://esp32-embedded.com/projects/wifi-power-save.html — Wi-Fi Power Save. Stay associated with less current. Required reading for battery products after Station. - https://esp32-embedded.com/projects/http-server.html — HTTP Server local page. Serve a page on the device to change settings. Common for small-batch debug. - https://esp32-embedded.com/projects/http-client.html — HTTP Client to the cloud. Device-side GET/POST. Fits REST backends. - https://esp32-embedded.com/projects/mqtt-tcp.html — MQTT TCP telemetry. The usual channel for sensors and remote commands. - https://esp32-embedded.com/projects/sntp.html — SNTP time sync. Where time comes from when there is no RTC chip. Logs and TLS depend on it. - https://esp32-embedded.com/projects/gatt-server.html — BLE GATT Server. A phone finds and controls the device. Starting point for local setup. - https://esp32-embedded.com/projects/gatt-client.html — BLE GATT Client. The module reads someone else’s sensor or wearable. - https://esp32-embedded.com/projects/deep-sleep.html — Deep Sleep. How a battery node sleeps and wakes. Wake pins must not float. - https://esp32-embedded.com/projects/light-sleep.html — Light Sleep. Faster wake than deep sleep, with more state kept. - https://esp32-embedded.com/projects/native-ota.html — Native OTA. How firmware is updated after shipment. Partition tables start on board one. - https://esp32-embedded.com/projects/nvs.html — NVS persistent keys. SSID, calibration and serial belong here, not in RAM. - https://esp32-embedded.com/projects/spiffs.html — SPIFFS small filesystem. Pages, tiny logs and cert files can live in flash. - https://esp32-embedded.com/projects/gpio.html — GPIO in and out. Buttons, relays, level detect. The I/O baseline. - https://esp32-embedded.com/projects/uart-echo.html — UART Echo. Starting point for meters, PLCs and modules. RS485 is only a level shift. - https://esp32-embedded.com/projects/i2c-simple.html — I2C simple read/write. Humidity, IMU, display bridges — most sensors live here. - https://esp32-embedded.com/projects/spi-master.html — SPI Master. Bus for displays, external flash and fast ADCs. - https://esp32-embedded.com/projects/adc.html — ADC analog sample. Battery voltage and analog sensors. Attenuation and calibration matter. - https://esp32-embedded.com/projects/ledc.html — LEDC PWM. Dimming, fans, servos. Hardware PWM, not bit-bang. - https://esp32-embedded.com/projects/led-strip.html — RMT LED strip. WS2812-class strips. RMT for timing; EMI for certification. - https://esp32-embedded.com/projects/twai.html — TWAI / CAN. Industrial and automotive bus. The chip is a controller; you still need a transceiver. - https://esp32-embedded.com/projects/modbus.html — Modbus. The language existing industrial hosts already speak. Serial or TCP. - https://esp32-embedded.com/projects/sd-card.html — SD card storage. Field logs for the customer. Design the slot for hot-plug. - https://esp32-embedded.com/projects/mdns.html — mDNS LAN discovery. Find the device on the LAN without memorising its IP. - https://esp32-embedded.com/projects/wifi-prov.html — Wi-Fi Provisioning. How a production unit receives its SSID. Required to ship. - https://esp32-embedded.com/projects/console.html — Console factory CLI. The factory test port. Do not leave debug commands open for end users. ## Modules Parts catalog (CPU, power, sensors, display, and empty groups until parts are added). Not bound to projects. - https://esp32-embedded.com/modules/esp32-devkitc.html — ESP32-DevKitC. The usual first board. It can join Wi-Fi and talk to a phone. - https://esp32-embedded.com/modules/esp32-s3.html — ESP32-S3-DevKitC. More pins and native USB. Fits panels, cameras and small on-device models. - https://esp32-embedded.com/modules/esp32-c3.html — ESP32-C3-DevKitM. Small and cheap. A good fit for battery sensors. - https://esp32-embedded.com/modules/esp32-c6.html — ESP32-C6-DevKitC. Joins newer routers, and can head toward Thread or Zigbee. - https://esp32-embedded.com/modules/esp32-s2.html — ESP32-S2-DevKitM. Wi-Fi only, with native USB. For accessories that skip Bluetooth. - https://esp32-embedded.com/modules/esp32-h2.html — ESP32-H2-DevKitM. No Wi-Fi. Bluetooth or 802.15.4 for locks, lamps and leaf nodes. - https://esp32-embedded.com/modules/doctype-html-html.html — ESP32 MCU Selection Reference. Choose by package, Flash, GPIO, and power; verify against the original page and your own measurements. ## Short answers Engineer questions written so an AI search can cite a single URL. - https://esp32-embedded.com/answers/esp32-gpio-led-not-blinking.html — ESP32 status LED does not blink. What should I check first? - https://esp32-embedded.com/answers/esp32-wifi-station-no-ip.html — ESP32 joined Wi-Fi but never gets an IP. Where do I look? - https://esp32-embedded.com/answers/esp32-deep-sleep-current.html — Why is ESP32 deep-sleep current still high? - https://esp32-embedded.com/answers/esp32-mqtt-not-connecting.html — ESP32 MQTT client never stays connected. What usually breaks? - https://esp32-embedded.com/answers/esp32-ble-phone-cannot-find.html — Phone cannot find the ESP32 BLE device. What is missing? - https://esp32-embedded.com/answers/esp32-uart-rs485.html — How do I talk to a meter on RS-485 from ESP32 UART? - https://esp32-embedded.com/answers/esp32-i2c-no-ack.html — ESP32 I2C scan finds nothing. What is usually wrong? - https://esp32-embedded.com/answers/esp32-st7789-spi-tft.html — How do I wire a 2.0 inch ST7789 SPI TFT to ESP32? - https://esp32-embedded.com/answers/esp32-ota-partition.html — ESP32 OTA fails after the first update. What should be on the board? - https://esp32-embedded.com/answers/esp32-nvs-ssid.html — Where should ESP32 store SSID and calibration so they survive reboot? - https://esp32-embedded.com/answers/esp32-twai-transceiver.html — Does ESP32 TWAI mean I can drop the board on a CAN bus? - https://esp32-embedded.com/answers/esp32-wifi-provisioning.html — How does a production ESP32 get its SSID without a USB cable?