Hardware
The hardware consists of 8x LED Matrix Links and a nodeMCU which is the esp8266 ESP-12E with USB and broken out to .1in headers. For power I will either use a LiPo battery or 5V USB battery pack.
Each link is a 8x8 LED matrix with a controller board. The controller board is a PCB the same size as the LED matrix with the AS1107 which is controlled via SPI and takes care of all the work of multiplexing the LEDs. It's the same as the popular MAX7219 but a bit cheaper and wider voltage range.
Software
Twitter Notes
Originally you could connect to Twitter directly with their search API. Now you have to authenticate with user specific API keys. Since the code was running on the Arduino originally it was better to offload connecting to Twitter and authenticating. Since this worked well I kept the same setup with the esp8266. The PHP Twitter gateway runs on my own web server. For more info on the gateway check my links for the Github repo.
Code
Upon startup the micro connects to an AP but also creates its own AP to serve up the configuration page. Then checks for an internet connection and gets its public IP. The public IP was going to be so you can connect to configure it but the Karma hotspot acts as a router. Still could be useful. The configuration page shows the status, local/public IP, MAC, and current hashtag set.
Once connected it connects to my web server to get the latest tweets and saves them to a queue. Then the display time for each tweet is set based on the time between refreshes which is defaulted to 5mins. Retweets are filtered out (I can't remember why). I set the number of tweet to retrieve at 20 so that we have plenty to display since Twitter only retrieve so many and depending on how active the hashtag is. Usually it only gets less than 10.
Finally after the 5min we rinse and repeat
Loved this project at #BringAHack!