Turn an exact ESP32 board and BME280 breakout into a confirmed pin-and-power plan before generating firmware.
A reference-reviewed teaching example for an I2C environmental sensor. The wiring has not been physically tested by Teach the Company, so the prompt first makes the learner identify and confirm their actual board, module, pins, toolchain and electrical limits.
Project video
A video will appear here only when it is real, publicly accessible and has matching metadata. The current entry does not use a placeholder as evidence.
Hardware and boundaries
- Board
- Espressif ESP32-DevKitC V4 example family
- Revision
- The actual board revision and module marking must be confirmed by the learner.
- Toolchain
- Arduino-ESP32 example; exact IDE/CLI and core versions must be confirmed before code is generated.
- Logic
- 3.3 V board logic; confirm the exact breakout and supply before connection.
- Power
- USB-powered development board; sensor current and complete power budget must be checked for the exact parts.
| Qty | Item | Model | Revision / check | Purpose |
|---|---|---|---|---|
| 1 | Development board | Espressif ESP32-DevKitC V4 example family | Confirm the printed board and ESP32 module revision | Runs the firmware and provides the example I2C bus. |
| 1 | Environmental sensor breakout | Adafruit BME280 I2C or SPI breakout | Confirm the exact product/revision and pin labels | Measures temperature, humidity and pressure in the teaching example. |
| 4 | Jumper wire | Female-to-female | Inspect before use | Carries 3.3 V, ground, SDA and SCL. |
| 1 | USB data cable | Suitable for the exact development board | Known data-capable cable | Powers and uploads to the board. |
Wiring map
Reference-reviewed against the linked Espressif Arduino I2C and Adafruit BME280 pinout documentation. Not physically tested by Teach the Company. Some clones, revisions and other BME280 breakouts differ.
Diagram description: Reference diagram: ESP32 3V3 to BME280 VIN, GND to GND, GPIO21 to SDI/SDA and GPIO22 to SCK/SCL. Every endpoint must be checked against the labels on the actual boards before connection.
| Board pin | Module pin | Signal | Electrical note |
|---|---|---|---|
3V3 | VIN | Power | Example uses 3.3 V so power and logic share the same level; confirm the exact breakout. |
GND | GND | Common ground | Connect ground before interpreting signal behavior. |
GPIO21 | SDI | I2C SDA | Arduino-ESP32 documentation lists GPIO21 as the generic ESP32 default SDA pin. |
GPIO22 | SCK | I2C SCL | Arduino-ESP32 documentation lists GPIO22 as the generic ESP32 default SCL pin. |
Copy the safe starting point
Only the accepted, finished prompt is public. It asks for the actual board, module, pins, toolchain and electrical facts before it allows wiring, code or upload instructions.
You are a careful microcontroller integration assistant. Help me produce a board-specific, testable implementation without guessing my hardware or wiring. Before you provide final wiring, firmware, build commands, upload commands or pin-dependent advice, ask me for all of the following: 1. Exact development board manufacturer, product name, board revision and the marking on the microcontroller/module. 2. Exact sensor, actuator or breakout manufacturer, model and revision; ask for a clear pin-label photo or official pinout link if the identity is uncertain. 3. Toolchain and exact version: Arduino IDE/CLI, PlatformIO, ESP-IDF or another named environment, including the selected board package and target. 4. My actual proposed connection for every wire: board pin, module pin and signal name. Do not replace this with a typical pinout. 5. Power source, supply voltage, logic voltage, expected current and whether grounds are already common. Ask about external drivers, pull-ups or level shifting where the hardware can require them. 6. Intended behavior, timing, communication protocol, expected output and what should happen when the sensor is missing or returns an error. 7. Existing source files, libraries and upload/debug port, if any. Then normalize my answers into two short tables: - Pin and power map: board pin | module pin | signal | voltage/current note. - Build map: board target | framework/toolchain version | libraries | upload/debug method. Check the proposed map against the exact board and module documentation. Call out boot/strapping, reserved, input-only, ADC, pull-up, current, voltage and common-ground constraints that apply. Never infer that a similarly named clone has the same pinout. Stop if mains voltage, high current, batteries without suitable protection, unclear grounds or incompatible logic levels are involved. Ask: “Is this exact pin, power and build map correct? Reply YES, or reply NO with corrections.” Accept short YES/NO quick replies. Do not continue until I confirm YES. After confirmation, provide only what is supported by the confirmed map: 1. Final BOM with exact models/revisions and required support parts. 2. Final wiring table plus a concise text diagram. 3. Complete minimal source code with explicit pin constants and error handling. 4. Reproducible build and upload steps for the confirmed toolchain. 5. Expected serial/output evidence and a bounded troubleshooting checklist. 6. A verification record that separately labels: reference review, build result, upload observation and physical hardware result. Never report a build, upload or physical test as successful unless I provide the corresponding real result or you actually performed that exact check with an authorized connected tool. Preserve uncertainty and cite the exact documentation used.
How to use it
- 01
Copy or download the finished prompt.
- 02
Paste it into the agent you use for the project.
- 03
Answer with the exact markings, toolchain, real wiring proposal, power information and intended behavior.
- 04
Check the normalized pin/power and build maps; reply YES only when every row matches the physical hardware.
- 05
Generate and build the minimal firmware, then record build, upload and physical results separately.
Actual results and limits
Observed
- The public prompt and project record passed automated content, route and consistency tests in the Teach the Company source tree.
- No firmware build was run for this adaptable example.
- No upload was observed and no physical ESP32/BME280 assembly was tested by Teach the Company.
Limits
- This is a planning and teaching foundation, not a claim that one exact hardware assembly was completed.
- Board clones and BME280 breakouts can use different labels, regulators, pull-ups, addresses and pin arrangements.
- The example covers low-voltage I2C only; it does not authorize mains, high-current or safety-critical work.
- A successful compile does not prove that upload, wiring or sensor behavior works on physical hardware.