Tagalog: draft — for Kate / Janet to check. Hawakan ang totoong board habang nasa scene na ito — USB sa kaliwa. Hold your real board as you go, USB pointing left, so the picture matches what is in your hand.
Isang board lang ang gamit natin sa LAHAT — bot, controller, desk pet, lampara. One board for everything in the club. Learn it once. Lay it down with USB to the LEFT, chips facing up and this card matches your board.
Ang 4 na dapat tandaan · The four that bite
1. GPIO 34 35 36 39 = input lang. Walang output. Input ONLY. digitalWrite() on these does nothing at all — no error message, nothing moves. Sensors and sticks yes; LEDs and motors never.
2. Analog? ADC1 lang: 32 33 34 35 36 39. Any analog reading goes on ADC1. The ADC2 pins stop working the moment the radio turns on, and every bot uses the radio.
3. Huwag gamitin ang 2, 12, 15 kung hindi kailangan. Strapping pins: the chip reads them as it powers up. Pull one the wrong way and the board will not boot or will not accept code. GPIO 12 especially: never add a pull-up to it.
4. TX0 / RX0 (GPIO 1 at 3) = huwag galawin. That is the USB serial link. Use them for anything else and you lose both code uploads and the Serial Monitor.
| Parte | Ano ito | What it does |
|---|---|---|
| USB-C | Kuryente + code | Powers the board at 5 V and carries code and the Serial Monitor. Doing two jobs at once. |
| AMS1117-3.3 | Voltage regulator | 5 V in, 3.3 V out. The ESP32 dies on 5 V, so this part is what keeps it alive. Linear: the extra volts leave as HEAT (deep dive 10). |
| CH340C | USB → serial | Translator between your laptop's USB and the chip's UART0. Every upload and every Serial.print passes through it. |
| ESP32-WROOM-32 | Ang chip, sa loob ng metal | Two cores at 240 MHz, Wi-Fi, Bluetooth, 4 MB flash. The metal can is an RF shield and a heatsink. Never pry it off — the module is destroyed. |
| Antenna | Ang zigzag sa dulo | Printed copper zigzag. Keep metal, batteries and your hand away from this end or the range collapses. |
| EN | Reset button | Restarts your code from the beginning. Use it when the board freezes. |
| BOOT | Flash button | Held while plugging in or resetting, it forces flash mode. Needed only when an upload refuses. |
| LED (GPIO 2) | Builtin na ilaw | The blink in Lesson 6. It sits on GPIO 2 — which is also a strapping pin. |
| Pin | GPIO | Verdict | Notes |
|---|---|---|---|
| 3V3 | — | POWER OUT | 3.3 V out for sensors and modules. Never feed power IN here. |
| VIN | — | POWER IN | 5 V in from a battery or pack. Not 7.4 V — the regulator cooks. |
| GND × 2 | — | GROUND | Every circuit needs a shared ground. Two are provided. |
| EN | — | RESET | Pull low to reset. Same as the EN button. |
| D2 | 2 | ⚠ STRAPPING + LED | Onboard LED. Fine for the Lesson 6 blink; avoid for anything that holds it low at boot. |
| D4 | 4 | SAFE (ADC2, touch) | Good general pin. Its analog side is ADC2 — useless with the radio on. |
| D5 | 5 | SAFE | Default SPI chip-select. Mild strapping pin; in practice fine. |
| RX2 / TX2 | 16 / 17 | SAFE | Free UART2. Spare serial port for a GPS or another board. |
| D18, D19, D23 | 18, 19, 23 | SAFE | Default SPI (SCK, MISO, MOSI). Safe as plain pins too. |
| D21 / D22 | 21 / 22 | SAFE — I²C | Default SDA / SCL. Keep them for I²C and every module just works. |
| RX0 / TX0 | 3 / 1 | ⚠ LEAVE ALONE | USB serial. Taking these costs you uploads and the Serial Monitor. |
| D12 | 12 | ⚠ STRAPPING | Never add a pull-up. High at boot sets 1.8 V flash and the board will not start. |
| D13, D14, D27 | 13, 14, 27 | SAFE (ADC2, touch) | Good motor and button pins. Analog side is ADC2. |
| D15 | 15 | ⚠ STRAPPING | Works, but do not let anything pull it down at boot. |
| D25 / D26 | 25 / 26 | SAFE — the only DACs | The board's two real analog OUTPUTS. For a tone or a smooth voltage. |
| D32 / D33 | 32 / 33 | ✔ BEST — ADC1 + touch | Analog in that survives the radio, and full output. The most useful pins on the board. |
| D34 / D35 | 34 / 35 | 👁 INPUT ONLY — ADC1 | Read only. No output, ever, silently. |
| VP / VN | 36 / 39 | 👁 INPUT ONLY — ADC1 | Read only. Perfect for a joystick axis or a battery divider. |
| GPIO 6–11 | 6–11 | WALA · NOT PRESENT | The flash pins. Not brought out to any header — so the worst mistake is one this board will not let you make. Good news. |
| GPIO 0 | 0 | WALA · NOT PRESENT | Strapping pin on the chip, but on our 30-pin board it is wired to the BOOT button only. |
30 − 4 na power (3V3, VIN, 2 GND) − EN − 2 serial (TX0, RX0) = 23. Tanggalin ang 4 na input-lang kung kailangan mo ng output = 19. Iwasan ang 3 strapping = 16 na talagang malayang pin. That arithmetic is exactly why the Bat controller needs a PCF8574 I²C expander: an Xbox layout wants about 21 inputs and the board simply does not have them. Count your pins BEFORE you design, not after.
Saan ito sa atin: bawat lesson, bawat bot, ang Bat controller, ang desk pet, ang brownout lamp. Decided 30 Oct 2026: one board type in the club, so every printed part, every pin habit and every piece of code carries over from one project to the next.