WS558 publish states but ignore commands

Posted 3 days ago by Chiara

Post a topic
Un Solved
C
Chiara

Dear Sirs,

could you please test this Bash script ( https://github.com/sfoglia/iot_tester/blob/main/milesight_test.sh ) with a Milesight WS558 and let me know if you can get the relays to respond?

The device is activated and connected via LoRaWAN and MQTT. I can receive its status updates, but I cannot get any downlink command to work.

I tested trying all relays ON/OFF and sequential activation of relays L1–L8. The script reports MQTT publish OK, and all messages appear on the ug/downlinkdata topic. However, none of the relays responds.

Here is an example of the payload generated by the script:

{
  "devEui": "notshown",
  "confirmed": true,
  "fPort": 85,
  "data": "CEBA"
}

The script generates the following payloads:

  • All relays ON: CP// (hex: 08ffff)

  • All relays OFF: CP8A (hex: 08ff00)

  • Relay L1 ON: CAEB (hex: 080101)

  • Relay L8 ON: CICA (hex: 088080)

I also receive the following MQTT acknowledgement notifications:

{
  "acknowledged": false,
  "applicationID": "1",
  "applicationName": "PROVA",
  "devEUI": "notshown",
  "deviceName": "KM1",
  "fCnt": 47,
  "reference": "",
  "time": "2026-10-29T22:27:56+01:00"
}

The acknowledged: false field makes me wonder whether the device is actually receiving the downlinks, whether the payload format is correct, or whether something is wrong with the MQTT-to-LoRaWAN integration.

Could someone with a WS558 please test these commands and confirm the correct downlink payload format, FPort, and MQTT topic?

Any suggestions or working examples would be greatly appreciated.

Thank you in advance!

0 Votes


0 Comments

Login or Sign up to post a comment