Giter Club home page Giter Club logo

esp8266-dash-button's Introduction

ESP8266 Dash Button

full

This is a small box with only one button. Every time you push the button. It will connect to WiFi and access an URL.

WiFi SSID and Password can be configured through ESP-TOUCH protocol and the URL can be changed by UDP packet. Two LEDs on it's case shows status of module and circuit.

Internal Structure

This button consists of following parts: Two AA batteries and battery holder, ESP8266 module and circuit, a big button for better experience, case, button cover.

How it works

When button is pressed, the circuit powers ESP8266 module and the module will connect to WiFi with SSID and password in flash memory. Once Wifi connection is established, this button will request a certain URL in flash memory and turn itself off to save power.

How to config WiFi network and URL

There is an minimal Android app in this repo that can do configuration wirelessly.

The app is a barely working one and it lacks advanced features for now. However it does work. You can hold button on ESP8266 board for 5 seconds and it will enter ESP-TOUCH mode. The Android code is a bit messy because they are decompiled from a obfuscated APK file.

You can connect your phone to target WiFi network, fill textbox with SSID and password and press "ESPTouch", then the app will encode SSID and password in length of UDP packets and broadcast packets to all devices. If ESP8266 decodes WiFi information successfully, it will broadcast a UDP packet back to your phone to end pairing process and listen UDP packets for URL. You can enter URL into third textbox and press "SET URL" to finish setting process.

If you want to change the URL only, press button once when it is in ESP-Touch mode.

How to make one

You can use the gerber files in this repo or you can order PCB with OSH Park directly.

After you solder all parts and ESP-12 module, you can either compile the source code on your own or use the pre-compiled bin files.

How to do more things with IFTTT

Currently IFTTT can not be triggered with a HTTP request. So I created a App Engine app to send a Email to IFTTT. The app can print all email it received in log file so you can create account with App Engine Email Address.

Here is an example of add Google Calendar entry with button.

esp8266-dash-button's People

Contributors

deqingsun avatar vielmetti avatar

Watchers

Vikneshwar Thandeswaran 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.