mirror of
https://github.com/DCC-EX/CommandStation-EX.git
synced 2024-12-23 12:51:24 +01:00
MDNS Generic library integration
This commit is contained in:
parent
6cdde5d3c6
commit
ad09360a54
@ -29,6 +29,10 @@
|
|||||||
#include "CommandDistributor.h"
|
#include "CommandDistributor.h"
|
||||||
#include "WiThrottle.h"
|
#include "WiThrottle.h"
|
||||||
#include "DCCTimer.h"
|
#include "DCCTimer.h"
|
||||||
|
#include "MDNS_Generic.h"
|
||||||
|
|
||||||
|
EthernetUDP udp;
|
||||||
|
MDNS mdns(udp);
|
||||||
|
|
||||||
EthernetInterface * EthernetInterface::singleton=NULL;
|
EthernetInterface * EthernetInterface::singleton=NULL;
|
||||||
/**
|
/**
|
||||||
@ -175,6 +179,8 @@ bool EthernetInterface::checkLink() {
|
|||||||
server->begin();
|
server->begin();
|
||||||
LCD(4,F("IP: %d.%d.%d.%d"), ip[0], ip[1], ip[2], ip[3]);
|
LCD(4,F("IP: %d.%d.%d.%d"), ip[0], ip[1], ip[2], ip[3]);
|
||||||
LCD(5,F("Port:%d"), IP_PORT);
|
LCD(5,F("Port:%d"), IP_PORT);
|
||||||
|
mdns.begin(Ethernet.localIP(), "dccex"); // hostname
|
||||||
|
mdns.addServiceRecord("dccex._withrottle", 2560, MDNSServiceTCP);
|
||||||
// only create a outboundRing it none exists, this may happen if the cable
|
// only create a outboundRing it none exists, this may happen if the cable
|
||||||
// gets disconnected and connected again
|
// gets disconnected and connected again
|
||||||
if(!outboundRing)
|
if(!outboundRing)
|
||||||
@ -242,7 +248,11 @@ void EthernetInterface::loop2() {
|
|||||||
if (!clients[socket].connected()) { // stop any clients which disconnect
|
if (!clients[socket].connected()) { // stop any clients which disconnect
|
||||||
CommandDistributor::forget(socket);
|
CommandDistributor::forget(socket);
|
||||||
clients[socket].stop();
|
clients[socket].stop();
|
||||||
|
#if defined(ARDUINO_ARCH_AVR)
|
||||||
clients[socket]=NULL;
|
clients[socket]=NULL;
|
||||||
|
#else
|
||||||
|
clients[socket]=(EthernetClient)nullptr;
|
||||||
|
#endif
|
||||||
//if (Diag::ETHERNET)
|
//if (Diag::ETHERNET)
|
||||||
DIAG(F("Ethernet: disconnect %d "), socket);
|
DIAG(F("Ethernet: disconnect %d "), socket);
|
||||||
return; // Trick: So that we do not continue in this loop with client that is NULL
|
return; // Trick: So that we do not continue in this loop with client that is NULL
|
||||||
@ -262,6 +272,8 @@ void EthernetInterface::loop2() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
mdns.run();
|
||||||
|
|
||||||
WiThrottle::loop(outboundRing);
|
WiThrottle::loop(outboundRing);
|
||||||
|
|
||||||
// handle at most 1 outbound transmission
|
// handle at most 1 outbound transmission
|
||||||
|
@ -46,7 +46,7 @@
|
|||||||
#define MAX_SOCK_NUM 10
|
#define MAX_SOCK_NUM 10
|
||||||
#else
|
#else
|
||||||
#include "Ethernet.h"
|
#include "Ethernet.h"
|
||||||
#define MAX_SOCK_NUM 4
|
// #define MAX_SOCK_NUM 4
|
||||||
#endif
|
#endif
|
||||||
#include "RingStream.h"
|
#include "RingStream.h"
|
||||||
|
|
||||||
|
@ -103,6 +103,7 @@ framework = arduino
|
|||||||
lib_deps =
|
lib_deps =
|
||||||
${env.lib_deps}
|
${env.lib_deps}
|
||||||
arduino-libraries/Ethernet
|
arduino-libraries/Ethernet
|
||||||
|
MDNS_Generic
|
||||||
SPI
|
SPI
|
||||||
monitor_speed = 115200
|
monitor_speed = 115200
|
||||||
monitor_echo = yes
|
monitor_echo = yes
|
||||||
@ -251,6 +252,7 @@ framework = arduino
|
|||||||
lib_deps = ${env.lib_deps}
|
lib_deps = ${env.lib_deps}
|
||||||
stm32duino/STM32Ethernet @ ^1.3.0
|
stm32duino/STM32Ethernet @ ^1.3.0
|
||||||
stm32duino/STM32duino LwIP @ ^2.1.2
|
stm32duino/STM32duino LwIP @ ^2.1.2
|
||||||
|
MDNS_Generic
|
||||||
build_flags = -std=c++17 -Os -g2 -Wunused-variable
|
build_flags = -std=c++17 -Os -g2 -Wunused-variable
|
||||||
monitor_speed = 115200
|
monitor_speed = 115200
|
||||||
monitor_echo = yes
|
monitor_echo = yes
|
||||||
@ -266,6 +268,7 @@ framework = arduino
|
|||||||
lib_deps = ${env.lib_deps}
|
lib_deps = ${env.lib_deps}
|
||||||
stm32duino/STM32Ethernet @ ^1.3.0
|
stm32duino/STM32Ethernet @ ^1.3.0
|
||||||
stm32duino/STM32duino LwIP @ ^2.1.2
|
stm32duino/STM32duino LwIP @ ^2.1.2
|
||||||
|
MDNS_Generic
|
||||||
build_flags = -std=c++17 -Os -g2 -Wunused-variable
|
build_flags = -std=c++17 -Os -g2 -Wunused-variable
|
||||||
monitor_speed = 115200
|
monitor_speed = 115200
|
||||||
monitor_echo = yes
|
monitor_echo = yes
|
||||||
|
@ -3,7 +3,8 @@
|
|||||||
|
|
||||||
#include "StringFormatter.h"
|
#include "StringFormatter.h"
|
||||||
|
|
||||||
#define VERSION "5.2.27stm32ECvf"
|
#define VERSION "5.2.27stm32ECvfmdns"
|
||||||
|
// 5.2.XX - MDNS Generic library integration for Ethernet
|
||||||
// 5.2.XX - Variable frequency for DC mode
|
// 5.2.XX - Variable frequency for DC mode
|
||||||
// 5.2.27 - Bugfix: IOExpander memory allocation
|
// 5.2.27 - Bugfix: IOExpander memory allocation
|
||||||
// 5.2.26 - Silently ignore overridden HAL defaults
|
// 5.2.26 - Silently ignore overridden HAL defaults
|
||||||
|
Loading…
Reference in New Issue
Block a user