Mysensors 2.0 ESP8266 serial gateway
- 
					
					
					
					
 I set in sketch static ip aadress and if esp booting and connected to lan i see in serial monitor 
 Connected with home, channel 1
 dhcp client start...
 chg_B1:-40
 0;255;3;0;9;TSM:READY
 f r-40, scandone
 ...................pm open,type:2 0
 ......................................................................................................................................................................................................................................................................................................................0�~?�4�����OCAZ��0;255;3;0;9;MCO:BGN:INIT GW,CP=RNNGE--,VER=2.0.1-beta
 0;255;3;0;9;TSM:INIT
 0;255;3;0;9;TSM:INIT:TSP OK
 0;255;3;0;9;TSM:INIT:GW MODE
 scandone
 state: 0 -> 2 (b0)
 state: 2 -> 3 (0)
 state: 3 -> 5 (10)
 add 0
 aid 1
 cnt
 chg_B1:-40
 
- 
					
					
					
					
 #include <EEPROM.h> 
 #include <SPI.h>
 #include <ArduinoOTA.h>// Enable debug prints to serial monitor 
 #define MY_DEBUG// Use a bit lower baudrate for serial prints on ESP8266 than default in MyConfig.h 
 #define MY_BAUD_RATE 9600// Enables and select radio type (if attached) 
 #define MY_RADIO_NRF24
 //#define MY_RADIO_RFM69#define MY_GATEWAY_ESP8266 #define MY_ESP8266_SSID "home" 
 #define MY_ESP8266_PASSWORD "123456789"// Set the hostname for the WiFi Client. This is the hostname 
 // it will pass to the DHCP server if not static.
 #define MY_ESP8266_HOSTNAME "ota-gateway-CH.100"// Enable UDP communication 
 //#define MY_USE_UDP// Enable MY_IP_ADDRESS here if you want a static ip address (no DHCP) 
 #define MY_IP_ADDRESS 10, 124, 77, 101// If using static ip you need to define Gateway and Subnet address as well 
 #define MY_IP_GATEWAY_ADDRESS 10, 124, 77, 176
 #define MY_IP_SUBNET_ADDRESS 255, 255, 255, 0// The port to keep open on node server mode 
 #define MY_PORT 5003// How many clients should be able to connect to this gateway (default 1) 
 #define MY_GATEWAY_MAX_CLIENTS 1// Controller ip address. Enables client mode (default is "server" mode). 
 // Also enable this if MY_USE_UDP is used and you want sensor data sent somewhere.
 //#define MY_CONTROLLER_IP_ADDRESS 10, 124, 77, 46// Enable inclusion mode 
 #define MY_INCLUSION_MODE_FEATURE// Enable Inclusion mode button on gateway 
 // #define MY_INCLUSION_BUTTON_FEATURE
 // Set inclusion mode duration (in seconds)
 #define MY_INCLUSION_MODE_DURATION 60
 // Digital pin used for inclusion mode button
 #define MY_INCLUSION_MODE_BUTTON_PIN 3// Flash leds on rx/tx/err 
 // #define MY_LEDS_BLINKING_FEATURE
 // Set blinking period
 // #define MY_DEFAULT_LED_BLINK_PERIOD 300// Led pins used if blinking feature is enabled above 
 #define MY_DEFAULT_ERR_LED_PIN 16 // Error led pin
 #define MY_DEFAULT_RX_LED_PIN 16 // Receive led pin
 #define MY_DEFAULT_TX_LED_PIN 16 // the PCB, on board LED#if defined(MY_USE_UDP) 
 #include <WiFiUDP.h>
 #else
 #include <ESP8266WiFi.h>
 #endif#include <MySensors.h> void setup() { ArduinoOTA.onStart( { 
 Serial.println("ArduinoOTA start");
 });
 ArduinoOTA.onEnd( {
 Serial.println("\nArduinoOTA end");
 });
 ArduinoOTA.onProgress([](unsigned int progress, unsigned int total) {
 Serial.printf("OTA Progress: %u%%\r", (progress / (total / 100)));
 });
 ArduinoOTA.onError([](ota_error_t error) {
 Serial.printf("Error[%u]: ", error);
 if (error == OTA_AUTH_ERROR) Serial.println("Auth Failed");
 else if (error == OTA_BEGIN_ERROR) Serial.println("Begin Failed");
 else if (error == OTA_CONNECT_ERROR) Serial.println("Connect Failed");
 else if (error == OTA_RECEIVE_ERROR) Serial.println("Receive Failed");
 else if (error == OTA_END_ERROR) Serial.println("End Failed");
 });
 ArduinoOTA.begin();
 Serial.println("Ready");
 Serial.print("IP address: ");
 Serial.println(WiFi.localIP());} void presentation() { 
 // Present locally attached sensors here
 }void loop() { 
 // Send locally attech sensors data here
 ArduinoOTA.handle();
 }
 

 
					
				 
					
				 
					
				