The circuits and designs here are for the WEMOS D1 Mini ESP8266 device. The pin numbers in the software map to the numbers of the ESP8266 device, not the identification pins on the WEMOS board. In other words, if you use these diagrams the devices will just work with the default pin settings in the software. If you want to use different pins you can change the settings of your device to match.

On the right you can see the standard circuit for a device. Note that you don't have to have all these connected at once, although you could.

You can find more hardware details, including designs for 3D printable cases, here .


Adding a BME280 allows a box to sense temperature, air pressure and humidity. It can then use these values locally or send them to another box for display or to trigger a servo.

Note that the BME280 sensor must use the indicated pins. If you want to use the PIR senor as well as the BME280 you can connect the PIR sensor to a different pin and then change the configuration of the device.


A MAX7219 dot matrix display can be used to display messages and sensor values. The software supports two different font sizes and scrolling text.

If you want to use a MAX7219 display at the same time as a BME280 you must connect them both to the same pins. They are using the I2C connection and should be able to share this.


You can connect a printer with a serial interface and print messages and sensor values.

Analogue Input

The ESP8266 supports a single analogue input which you can use to read a potentiometer value to make a rotary encoder. You can use the value from the encoder to control things like light brightness and servo positions.