IoT

GitHub: https://github.com/debsahu/TheButton Things we want to achieve: Low on power consumtion: ESP8266 is OFF when the button is not pressed debsahu/ESP_External_Interrupt Portable: Uses 18650 battery, lasts years Talks to Home Assistant: debsahu/HARestAPI

Idea: Wouldn’t be cool for many McLighting (RGB LED lighting using NeoPixels) to talk to each other and synchronize? Implementation: Here is my naive attempt at this, which requires McLighting to be served as stand-alone web-client. Link: https://github.com/toblum/McLighting/tree/experimental/Arduino/MeshyMcLighting Features Uses painlessMesh to create mesh network and broadcasts state to every node Does not need WiFi connection to internet, standalone mode + mesh Web interface is borrowed from “WS2812FX esp8266” example, completely served on ESP8266 Can do minimal file upload to SPIFFs Completely Async! Uses Task Scheduler, no more tickers No delays in entire code Has RESTful API (same API as McLighting, use set_mode for setting mode, speed, brighness) Async Websockets (ws://HOSTNAME/ws on port 80, same API as McLighting) Async MQTT/Home Assistant Intergration (Only SERVER connects to outside world) Auto Mode (same as McLighting) Button Mode (same as McLighting) Async WiFiManager for SERVER Limitations/TODO For stability, compile both SERVER and CLIENTS on IwIP variant 1.4 Higher Bandwidth (very flaky in IwIP v2) Use Arduino ESP8266 GIT version (Issues with v2.4.1: not memory optimized) WS2812FX has delays meant for ESP32. Track issue here NeoAnimationFX has no delays.

An attempt to use RTL-SDR to read values from wireless electric/gas/water meters and visualize these values on Home Assistant. Based on RTLAMR Project: https://github.com/bemasher/rtlamr Home Assistant and Python Code: here

Idea: Get LIVE stock price on ESP8266 Implementation: Develop a simple Arduino library that retrieves live stock prices from RobinHood in JSON format and processes it for ESP8266. In one example, we demonstrate a whole bunch of stock prices scrolling through a dot-matrix display. Arduino Library: https://github.com/debsahu/RobinhoodAPI

Here is a naive attempt at predicting a particular stock’s price and displaying it on a ESP8266. This algorithm is not the best one out there, but what is being shown here is the ability to port it elsewhere and easily integrate these complex models with micro-controllers (ESP8266) and other devices. GitHub: https://github.com/debsahu/StockPredictionPython Install MATLAB 2017a Runtime v9.2 from here Goto Python/matlab_stock_python_lib folder and install “stock” python library using `python setup.py install` Use “requirements.txt” file to install required libraries. Console: “$ pip -r install requirements.txt” Enter appropriate values for MQTT server in “upload_stock_pred.py” and run “python upload_stock_pred.py” Upload Arduino files on your esp8266 using Arduino IDE

Idea: Control components on Home Assistant directly from ESP8266. Implementation: Develop an Arduino Library that can be used in various projects without the requirement of setup of a MQTT sensor + automation on HA. This uses RESTful API commands (link). Arduino HARestAPI Library: https://github.com/debsahu/HARestAPI

Idea: Did you ever want to use ESP8266 to communicate to Home Assistant directly? Implementation: Here we use a color sensor to read colors and change a RGB light in Home Assistant to the color observed. Arduino Code: Link RGB Lights connected to Home Assistant McLighting: https://github.com/toblum/McLighting

Idea: Use ESP8266 to talk to Twitter Get User Data or Tweet or Search Twitter Display the data on a Dot-Matrix display Implementation: I created an Arduino library to talk to Twitter using its Web API made for ESP8266. There are other approaches like using a bearer token arduino-twitter-api, but comes with limitations in terms of not being able to send tweet. This Arduino library TwitterWebAPI can both search/read and post tweets. All the instructions and usage of library is described on my GitHub library page https://github.com/debsahu/TwitterWebAPI

Idea: If there is smoke, smoke alarm detects it ESP8266 detects this digital signal from smoke detector, connects to WiFi and sends data to a MQTT server Esp8266 turns itself OFF Implementation: Try to find where on the smoke detector is the 3.3V digital signal when it detects smoke Lets look at Kiddie RF-SM-DC Third pin from top corner seems to send out 3.3V signal to speaker when it detects smoke Lets connect our previously created ESP8266 circuit that wakes from external interrupt. Configure Home Assistant to process MQTT message and send notifications. Source code for this idea can be found on my GitHub: https://github.com/debsahu/Internet_Fire_Alarm