1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

RPi + Other Software Detect Hyperion with SSDP client

Discussion in 'Software Support' started by mathman, 2 January 2021.

  1. mathman

    mathman New Member

    Messages:
    5
    Hardware:
    RPi1/Zero, RPi3, +nodeMCU/ESP8266
  2. TPmodding

    TPmodding Administrator Staff Member Administrator

    Messages:
    2,009
    Hardware:
    RPi1/Zero, RPi2, RPi3, +Arduino, +nodeMCU/ESP8266
  3. Lord-Grey

    Lord-Grey Moderator Staff Member Developer

    Messages:
    389
    Hardware:
    RPi3, 32/64bit
    @mathman If you are on Linux you can do

    sudo tcpdump -vv -A -s 0 'port 1900 and host 239.255.255.250 and udp'

    to test, if there are hyperion ssdp services shared.

    e.g. you should find packages like the following

    HOST: 239.255.255.250:1900
    CACHE-CONTROL: max-age=1800
    LOCATION: http://192.168.2.199:8090/description.xml
    NT: upnp:rootdevice
    NTS: ssdp:alive
    SERVER: Ubuntu 20.04.1 LTS/20.04 UPnP/1.0 Hyperion/2.0.0-alpha.9
    USN: uuid:0dd3ad96-ee41-593f-8451-6db14fbf484b
    HYPERION-FBS-PORT: 19400
    HYPERION-JSS-PORT: 19444
    HYPERION-NAME: My Hyperion Config

    Alternatively, you can use for a quick check:

    https://github.com/fboender/pyupnpclient

    Output is like the following, Hyperion running on 1. is Ubuntu, 2. LibreElec, 3. Windows
    Hyperion (192.168.2.199) @ http://192.168.2.199:8090/description.xml
    Hyperion (192.168.2.150) @ http://192.168.2.150:8090/description.xml
    Hyperion (192.168.2.110) @ http://192.168.2.110:8090/description.xml

    Hyperion announces on

    // announce targets
    _deviceList.push_back("upnp:rootdevice");
    _deviceList.push_back("uuid:"+_uuid);
    _deviceList.push_back(SSDP_HYPERION_ST); with SSDP_HYPERION_ST("urn:hyperion-project.org:device:basic:1");

    Hope that helps.
     
    • Thank you Thank you x 1
  4. mathman

    mathman New Member

    Messages:
    5
    Hardware:
    RPi1/Zero, RPi3, +nodeMCU/ESP8266
    Hi @Lord-Grey,

    Thanks for response.

    It works when i send raw packet without use of node-ssdp package.
    Code:
    socket.send('M-SEARCH * HTTP/1.1\r\nHOST:239.255.255.250:1900\r\nMAN:"ssdp:discover"\r\nMX:2\r\nST:upnp:rootdevice\r\n\r\n')
    So i used this way.