Git Product home page Git Product logo

esp-notifier's Introduction

ESP-Notifier

WiFi enabled IoT button based on ESP8266 - intended to be used with Node-Notifier


TODO: image




WORK IN PROGRESS

This is very early software, please tread carefully and at your own risk



Table of contents:

Other documents:



Setup:

  1. Clone or download and extract this repository (see releases)
  2. Rename the file config.h.template to config.h and open it with a text editor
  3. Set your WiFi settings in config.h (make sure to adequately protect this file)
  4. Start the desktop client and copy its IP address
  5. Open the file ESP-Notifier.ino in the Arduino IDE
  6. Install your ESP board in the IDE (follow this guide)
  7. Install the library ArduinoJson in the IDE
  8. Edit settings at the top of this file (like the server IP address)
  9. Upload the sketch with the Arduino IDE (Ctrl + U)
  10. Follow the example build or the schematic



Example build:

Schematic:

Follow this schematic to build the base model of ESP-Notifier:

schematic image

I used an ESP8266EX development board but this should work on any ESP dev board,
once GPIO pin mappings are changed accordingly in the .ino file.

The resistor's value is approximate.

The blue diamond shape indicates the points where I used headers to make the button and power supply detachable.
To see the original schematic without these markers, click here.


Parts list:

  • ESP8266EX development board (you can also use the non-EX ESP but it's larger)
  • a 4.7kΩ resistor
  • about 3x4cm of perforated circuit board, matching the size of the ESP dev board
  • female and male headers
  • a momentary push button (pretty sure you're looking for an SPST type switch)
  • a 5v power supply with at least 500mA (like an old phone charger)

Instructions:

  1. Install the firmware on the ESP (follow the setup guide).


  1. Place the resistor on the perforated board, between the ESP's GPIO pin you've chosen (14 aka D5 by default) and
    the G or GND pin of the ESP, to act as a pull-down resistor for the switch.
    In my example, the resistor is physically sandwiched between the dev board and the perforated board, so the whole thing stays as compact as possible.


  1. Hook up the momentary switch between the ESP's GPIO pin you've chosen (default 14 aka D5) and the 3.3V pin of the ESP development board.
    If you don't use a development board, you can also probably use the 5V / VV pin.


  1. Use the female and male headers to make the button and power wires detachable (optional).
    Power headers should be hooked up to the ESP dev board's pins VV or VIN and GND or G.
    Button headers are hooked up between chosen GPIO pin (default 14 aka D5) and 3V3 or alternatively the 5V source from the power supply.


  1. Hook up the 5V power supply to the VV or VIN pin (+) and the GND or G pin (-) of the ESP dev board.


  1. Hook up the button to the headers or directly to the pins described in step 4.


  1. Check if it works by pressing the button :)


Troubleshooting:

If something didn't work out for you, please hook up the ESP dev board to your PC, open the serial monitor in the Arduino IDE and check what's going wrong.
If you still need help, feel free to join my Discord server to ask me:

Discord



Legal stuff:

License:

ESP-Notifier's firmware is licensed under the MIT License


Disclaimer:

This is very early software, please tread carefully and at your own risk.
Also make sure you adequately protect the config.h file, as it contains your WiFi password.


Dependencies:





Made with ❤️ by Sv443
If you like ESP-Notifier please consider supporting me

esp-notifier's People

Contributors

imgbotapp avatar sv443 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.