Device Discovery (UPnP, SSDP etc...)
Posted: Sun Sep 14, 2014 2:41 pm
So, we've got two choices with IoT devices: have them connect to and made available via the cloud or a local directory server, or make them directly discoverable via protocols such as UPnP. I'm partial to the latter, but I'm not sure it'll be possible with the current AT protocol due to limited multi/broadcast support
Partial SSDP should be possible by regularly multicasting NOTIFYs but not responding to searches, and providing the necessary xml files with a small on-board http server. I'd prefer a less verbose protocol, however - any suggestions?
Any other protocol is going to suffer from the same problems, right?
- The module will send UDP multicast packets, so SSDP NOTIFY is possible. I haven't figured out how to get it to receive multicast packets, however: there's no functionality for specifying to which address to bind to.
- Broadcast packets are also possible to a certain degree: sending to 192.168.1.255 works, sending to 255.255.255.255 crashes the module.
- There's no command for getting the netmask, gateway or any other network parameter apart from IP address, so we can't automatically determine the broadcast address.
- A local directory server could be found using DNS, but mDNS requires multicast reception capabilities I believe.
Partial SSDP should be possible by regularly multicasting NOTIFYs but not responding to searches, and providing the necessary xml files with a small on-board http server. I'd prefer a less verbose protocol, however - any suggestions?
Any other protocol is going to suffer from the same problems, right?