This is the general instructions for how to get a pebble watch to talk to an ESP8266 and turn NeoPixels different colours.
Video: https://www.youtube.com/watch?v=BeIQ47WBVXs
- Pebble watch
- ESP8266 ESP-01
- NeoPixel strip (or ring or matrix or single pixel)
- ESPTool
- ESPlora
- Pebble SDK and command line tools
Thanks to Andy Gelme for his excellent workshop on the ESP8266 and getting me up to speed on the Lua side.
- Using ESPTool, flash the ESP8266 with NodeMCU development branch (bins are in this gist) so it has WS8212 support.
- Using ESPlora, change config.lua to have SSID / PASSWORD of your network in them - upload all lua files to the ESP8266
- Wire up the WS2812 strip so data line is connected to GPIO 2 (change this in server.lua if you use a different pin).
- Reset the ESP8266 and note it's IP address in ESPlora when it comes up. You should now be able to hit the web server using
curl --data "red=255&green=0&blue=255" http://<IP address>
- Using CloudPebble, copy app.js contents into the app.js file (make a watch app project and use Pebble JS)
- Change the HOST IP address to that of your ESP8266
- Compile and then download the PBW file
- Use the developer configuration (as documented by Pebble SDK setup) to run:
pebble install watch_led.pbw
That's it - you should be able to hit it as expected.
@ajfisher: This is really cool, thank you! Could you also provide a simple schematic with the wiring?