Simpler BuilderKit wiring


The builder kit comes with 9 jumper wires and 5 resistors, but it’s possible to have all three functions with just 5 jumper wires and 3 resistors, with some modifications to the firmware.
It’s recommended to follow the official instructions during the initial workshops, but if you want to run the kit for longer periods of time and wish to reduce clutter, this would come handy.

Pull-up the button
ESP8266 has internal pullup resistor on most GPIO pins. pinMode(14, INPUT_PULLUP) enables the pullup.
After that, digitalRead(14) reads 1 when button is up/released, and reads 0 when button is down/pressed. It’s the reverse of a normally connected button.

The Four-Pin Switch: Hooking it up explains the internals of this little button nicely.
When the button is pressed, its upper left and lower right pins are connected together. This connects Huzzah’s pin 14 to the ground, so digitalRead(14) reads 0.
When the button is released, Huzzah’s pin 14 is not connected to anything, and the internal pullup resistor makes digitalRead(14) read 1.

Skip the LED
Huzzah has a red LED at pin 0, and a blue LED at pin 2.
digitalWrite(0 or 2, 1) turns off an onboard LED, and digitalWrite(0 or 2, 0) turns on an onboard LED. It’s the reverse of an external LED.

Move the TMP36
Every resistor around the TMP36 is REQUIRED for it to function properly and avoid damage. (My colleague almost burned down the office by wiring a temperature sensor incorrectly.)
But they can be moved so that less jumper wires are needed. It’s important to ensure the circuit is equivalent.
Also, don’t place the TMP36 too close to the ESP8266; otherwise, heat dissipated from the microcontroller can affect the readings.


Awesome consolidation! We’re working on a new rev of the builder kit likely based on the NodeMCU dev kit, which will eliminate the need of the voltage divider. Using the internal pullup is a good idea and definitely worth doing. We’ll keep this in mind when we start wiring out the new version!