-
Download Python3, install PySerial and EspTool:
py -m pip install pyserial py -m pip install esptool
-
Download Arduino IDE, install ESP8266 board:
- File > Preferences > "Additional board manager URLs" > append "http://arduino.esp8266.com/stable/package_esp8266com_index.json"
-
Open this sketchbook in Arduino IDE and export the
server
andvoter
sketches as compiled binaries. -
Edit
upload_server.py
иupload_voter.py
to specify the COM port and Wi-Fi settings.(Optional) You may also want to edit
common.py
, for instance, to modify timeouts. -
Run
upload_server.py
andupload_voter.py
.To upload firmware to the voter, press its middle button on startup. That is required to put it in configuration mode.
-
To ensure that the firmware and the settings were written correctly, run
check_settings.py
.
All schemes were made in Easy EDA.
The exported voter PCB file is scheme/pcb/Gerber.zip
.
You can open it in most Gerber viewers, for example in altium.com/viewer.
On the PCB you can find a power switch and a UART shield for firmware upload and configuration.