All Projects β†’ kaizoku-oh β†’ firebase-iot-demo

kaizoku-oh / firebase-iot-demo

Licence: MIT license
πŸ”₯ ESP8266 Firebase Arduino client developed using Platformio sending DHT11 and MQ5 data to Firebase Realtime Database

Programming Languages

C++
36643 projects - #6 most used programming language
c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to firebase-iot-demo

anonymous-web
πŸ’¬ A PreactJS powered progressive web (chat) application (Not active)
Stars: ✭ 28 (+40%)
Mutual labels:  firebase-realtime-database
Arduino-Blinkenlight
Non-blocking blinking patterns and smooth fade effects for your LEDs.
Stars: ✭ 26 (+30%)
Mutual labels:  platformio
club penguin game
A simple 2D multiplayer online game built using Flutter and Flame engine
Stars: ✭ 65 (+225%)
Mutual labels:  firebase-realtime-database
Maix-LogoClassifier
A simple logo classifier developed using Maixduino framework and PlatfomIO, to run on K210 MCU on Sipeed's Maix dev board.
Stars: ✭ 25 (+25%)
Mutual labels:  platformio
RAK811-tracker
Example code for RAK811 nodes with GPS on board, transmitting their coordinates in the payload of the LoRaWAN packet in a format that is compatible with TTN Mapper.
Stars: ✭ 14 (-30%)
Mutual labels:  platformio
Chat-App-Android
Chat app based on the MVVM architecture using Kotlin, ViewModel, LiveData, DataBinding and more.
Stars: ✭ 70 (+250%)
Mutual labels:  firebase-realtime-database
platform-lattice ice40
Lattice iCE40: development platform for PlatformIO
Stars: ✭ 34 (+70%)
Mutual labels:  platformio
Gmail-Clone
A Gmail Clone which built with ReactJS and Redux. You can sign in with your Google Account, compose a new e-mail and send realtime emails to the project.
Stars: ✭ 48 (+140%)
Mutual labels:  firebase-realtime-database
Effortless-SPIFFS
A class designed to make reading and storing data on the ESP8266 and ESP32 effortless
Stars: ✭ 27 (+35%)
Mutual labels:  platformio
SmartSpin2k
Transform your spin bike into a Smart Trainer!
Stars: ✭ 88 (+340%)
Mutual labels:  platformio
FireLamp JeeUI
Project Fire Lamp based on EmbUI framework (GPL license)
Stars: ✭ 77 (+285%)
Mutual labels:  platformio
EUC-Dash-ESP32
Bluetooth Dashboard for electric unicycles (EUCs) for ESP32(ttgo t-watch). requires PlatformIO to build
Stars: ✭ 24 (+20%)
Mutual labels:  platformio
Arduino-Log
Simple application log library. supporting multiple log levels, custom output & flash memory support.
Stars: ✭ 132 (+560%)
Mutual labels:  platformio
arduino-bme280
πŸ’§ Arduino library for Bosch Sensortec BME280 – combined temperature, pressure, humidity sensor. The library allows using the sensor over I2C or SPI on any board that supports Arduino.
Stars: ✭ 25 (+25%)
Mutual labels:  platformio
nuclei-sdk
Nuclei RISC-V Software Development Kit
Stars: ✭ 65 (+225%)
Mutual labels:  platformio
nextdriver
An Arduino-based controller for Celestron CG5-series equatorial mounts
Stars: ✭ 21 (+5%)
Mutual labels:  platformio
Evobus
mamcose.me
Stars: ✭ 16 (-20%)
Mutual labels:  firebase-realtime-database
Wortuhr
Software fΓΌr eine ESP8266 basierte Wortuhr mit verschiedenen Layouts
Stars: ✭ 30 (+50%)
Mutual labels:  platformio
MiniWXStation
ESP8266 and BME280 sensor for a minimalist weather station to put on your terrace
Stars: ✭ 28 (+40%)
Mutual labels:  dht11
platform-nordicnrf52
Nordic nRF52: development platform for PlatformIO
Stars: ✭ 82 (+310%)
Mutual labels:  platformio

Firebase IoT Demo with ESP8266

This project uses ESP8266 to read sensors, connect to Firebase and push data to Realtime Database. Temperature and Humidity data is read from DHT11 sensor, Gas leak detection is read from MQ5 Gas sensor finally device heartbeat is sent every 2 secondes to Firebase to ensure device cinnection. Note that you can simulate the sensors with random values by uncommenting 'DONT_HAVE_SENSORS' define.

Getting Started

These instructions will get you a copy of the project up and running on your ESP8266 for development and testing purposes.

Prerequisites

This project uses the Arduino framework and PlatformIO IDE for building and flashing the app into ESP8266. The data sent from the device is stored in Firebase Realtime Database.

Installing

Once installed PlatformIO and created firebase project, download this project

git clone https://github.com/kaizoku-619/firebase-iot-demo.git

Setup credentials

cd firebase-iot-demo/include

Inside 'include' directory create a new file named 'Creds.h' and replace with the values of your WiFi SSID, Password and Firebase host of your Firebase project and Firebase Auth which you can find them in this link by replacing [###########] with your Firebase project name. https://console.firebase.google.com/project/[###########]/settings/serviceaccounts/databasesecrets

#define SSID "XXXXXXXXXXX"
#define PASSWORD "XXXXXXXXXXXXXXX"

#define FIREBASE_HOST "XXXXXXXXXXXXX.firebaseio.com"
#define FIREBASE_AUTH "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"

Simulate Sensors

If you don't have sensors attached to your ESP8266 or you want to quickly test the application and consult data in Firebase database without the need of attaching sensors, you can simply uncomment DONT_HAVE_SENSORS define.

#define DONT_HAVE_SENSORS

Update Firebase Fingerprint

Build the project using PlatformIO, Once project built you'll see .piolibdeps folder created with the 3 new libraries installed:

  • DHT sensor library
  • Adafruit Unified Sensor
  • FirebaseArduino

Open FirebaseArduino/src/FirebaseHttpClient.h and scroll to the end of the page, you'll find FirebaseFingerprint[] which its value need to be changed.

To generate a fingerprint, go to this website and copy your Firebase host link without the https part (your might look something like this your-prject-name.firebaseio.com) and click on Fingerprint Site. Copy the newly generated fingerprint in the place of the FirebaseFingerprint[] value and replace the columns with spaces.

Upload the code and you're good to go.

License

This project is licensed under the MIT License - see the LICENSE.md file for details

References

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].