All Projects → ayushsharma82 → Easyddns

ayushsharma82 / Easyddns

Licence: mit
Easy to Use ESP8266 DDNS Update Client Library.

Projects that are alternatives of or similar to Easyddns

Taskscheduler
Cooperative multitasking for Arduino, ESPx and STM32 microcontrollers
Stars: ✭ 613 (+538.54%)
Mutual labels:  arduino, library, esp8266
Esp Dash
A blazing fast library to create a functional dashboard for ESP8266 and ESP32
Stars: ✭ 548 (+470.83%)
Mutual labels:  arduino, library, esp8266
Dmxusb
DMXUSB emulates an ENTTEC-compatible DMXKing USB to DMX serial device with one, two, or n universes.
Stars: ✭ 66 (-31.25%)
Mutual labels:  arduino, library
Mysensors
MySensors library and examples
Stars: ✭ 1,150 (+1097.92%)
Mutual labels:  arduino, esp8266
Aunit
Unit testing framework for Arduino platforms inspired by ArduinoUnit and Google Test. Used with AUniter or EpoxyDuino for continuous builds.
Stars: ✭ 73 (-23.96%)
Mutual labels:  arduino, esp8266
Deepsleepscheduler
DeepSleepScheduler is a lightweight, cooperative task scheduler library with configurable sleep and task supervision.
Stars: ✭ 59 (-38.54%)
Mutual labels:  arduino, esp8266
Ws2812fx
WS2812 FX Library for Arduino and ESP8266
Stars: ✭ 1,113 (+1059.38%)
Mutual labels:  arduino, esp8266
Stickwatch
A DIY smart watch based on M5Stick of ESP32
Stars: ✭ 68 (-29.17%)
Mutual labels:  arduino, esp8266
Desk Lamp Alternative Firmware
An alternative firmware for the Mijia Xiaomi Desk Lamp
Stars: ✭ 54 (-43.75%)
Mutual labels:  arduino, esp8266
Hugo Esp8266
Hugo is a 4-button ESP8266 Wi-Fi Remote, Arduino compatible and simple to use.
Stars: ✭ 77 (-19.79%)
Mutual labels:  arduino, esp8266
Sming
Sming - Open Source framework for high efficiency native ESP8266 development
Stars: ✭ 1,197 (+1146.88%)
Mutual labels:  arduino, esp8266
Tft espi
Arduino and PlatformIO IDE compatible TFT library optimised for the STM32, ESP8266 and ESP32 that supports different driver chips
Stars: ✭ 1,215 (+1165.63%)
Mutual labels:  arduino, esp8266
Esp8266 deauther
Affordable WiFi hacking platform for testing and learning
Stars: ✭ 9,312 (+9600%)
Mutual labels:  arduino, esp8266
Victron.arduino Esp8266
Code to read the VE.Direct-Protocol from serial into a value array. Uses a non-blocking read loop and does checksum verification before adding the data.
Stars: ✭ 54 (-43.75%)
Mutual labels:  arduino, esp8266
Ai demos esp8266
Example code for using ESP8266 Development Boards with various electronic and mechanical components.
Stars: ✭ 63 (-34.37%)
Mutual labels:  arduino, esp8266
Bleeper
Library to manage your firmware configurations written in C++
Stars: ✭ 54 (-43.75%)
Mutual labels:  arduino, esp8266
Blinker Library
An IoT Solution,Blinker library for embedded hardware. Works with Arduino, ESP8266, ESP32.
Stars: ✭ 1,095 (+1040.63%)
Mutual labels:  arduino, esp8266
Homie Esp8266
💡 ESP8266 framework for Homie, a lightweight MQTT convention for the IoT
Stars: ✭ 1,241 (+1192.71%)
Mutual labels:  arduino, esp8266
Libraryepd
Library Arduino for 4.3 inch e-Paper by Waveshare
Stars: ✭ 50 (-47.92%)
Mutual labels:  arduino, esp8266
Digitrack
Attacks for $5 or less using Arduino
Stars: ✭ 53 (-44.79%)
Mutual labels:  arduino, esp8266

EasyDDNS

     


An easy to use DDNS Update Client library for ESP8266 & ESP32.

EasyDDNS Library can be implemented in your major projects as a sidekick. It is independent and does not interfare with rest of your code.

Supported DDNS Providers:

  • DuckDNS
  • No-ip
  • DynDNS
  • Dynu
  • ENom
  • all-inkl
  • selfhost.de
  • strato
  • freemyip
  • afraid.org
  • OVH.com

If you don't know what's DDNS, then you can find more info about DDNS here: WiKipedia


How to Install

(Best Method) Directly Through Arduino IDE

Go to Sketch > Include Library > Library Manager > Search for "EasyDDNS" > Install

Manual Install

For Windows: Download the Repository and extract the .zip in Documents>Arduino>Libraries>{Place "EasyDDNS" folder Here}

For Linux: Download the Repository and extract the .zip in Sketchbook>Libraries>{Place "EasyDDNS" folder Here}

Manually through IDE

Download the Repository, Go to Sketch>Include Library>Add .zip Library> Select the Downloaded .zip File.


Dependencies

For ESP8266:

For ESP32:


Example

#if defined(ESP8266)
  #include "ESP8266WiFi.h"
  #include "ESP8266HTTPClient.h"
#elif defined(ESP32)
  #include "WiFi.h"
  #include "HTTPClient.h"
#endif

#include <EasyDDNS.h>

const char * ssid = "your-ssid";
const char * password = "your-password";

WiFiServer server(80);

void setup() {
  Serial.begin(115200);
  WiFi.mode(WIFI_STA);
  WiFi.begin(ssid, password);
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println(WiFi.localIP()); // Print the IP address
  server.begin();

  /*
    List of supported DDNS providers:
    - "duckdns"
    - "noip"
    - "dyndns"
    - "dynu"
    - "enom"
    - "all-inkl"
    - "selfhost.de"
    - "dyndns.it"
    - "strato"
    - "freemyip"
    - "afraid.org"
  */
  EasyDDNS.service("duckdns");

  /*
    For DDNS Providers where you get a token:
      Use this: EasyDDNS.client("domain", "token");
    
    For DDNS Providers where you get username and password: ( Leave the password field empty "" if not required )
      Use this: EasyDDNS.client("domain", "username", "password");
  */
  EasyDDNS.client("12345.duckdns.org", "token"); // Enter your DDNS Domain & Token

  // Get Notified when your IP changes
  EasyDDNS.onUpdate([&](const char* oldIP, const char* newIP){
    Serial.print("EasyDDNS - IP Change Detected: ");
    Serial.println(newIP);
  });
}

void loop() {
  // Check for new public IP every 10 seconds
  EasyDDNS.update(10000);
}

Support Me

You can always buy me a coffee :) , It supports my work and in return you get to keep up-to-date version of my libraries.


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].