{Driver} Connector Relay Hubitat Driver (DD7006 P-Box) local control

@jcongdon01 sorry it took longer than expected to rework the driver, This one works for the 7006 Bridge (It works for my Window Screens, that's all I have to test on)
If this still doesn't work check in the Connector app to see what firmware version bridge is on and if there is an update for it. My DD7006 is on Firmware A1.1.9_B0.3.4 that I know uses API v1.03. I'm curious if the DD7002B uses an older firmware that is using one of older API updates still. There's always the possibility that if it still doesn't work your router/firewall is blocking the multicast (the bridge expects commands to be sent via Multicast). I linked to a test driver to test multicast on your network.

If Multicast fails we'll need to figure out if your router/firewall can unblock it. This part is way above my ability but I'll do what I can to help you figure it out

you can create a virtual device with this test driver (written by Hubitat's gopher.ny Multicast socket how-to) If successful it should come back with something like this in the logs

Multicast socket log example

dev:49702026-03-25 12:56:13.564 PM

info

:inbox_tray: Multicast RX ← {"payload":"FFEFEFEFFEEFEFDFDEEFCEEFEFEFEFEFFDEFF1774457773500EF","fromIp":"192.168.1.35","fromPort":32100,"myIp":"0.0.0.0","myPort":32100}

dev:49702026-03-25 12:56:13.550 PM

debug

:white_check_mark: Multicast socket connected

dev:49702026-03-25 12:56:13.504 PM

debug

:outbox_tray: Multicast TX → 238.0.0.18:32100 {"msgType":"GetDeviceList","msgID":"1774457773500"}

Multicast test Driver

metadata {
definition(
name: "MulticastSocketeer",
namespace: "hubitat",
author: "Victor U. / Fixed"
) {
command "testSocket1"
command "testSocket2"
command "closeSocket"
}
}

import groovy.json.JsonOutput

def socket = null

private String getMulticastAddress() { "238.0.0.18" }
private Integer getMulticastPort() { 32100 }

void testSocket1() {
sendMulticast([
msgType: "GetDeviceList",
msgID : now().toString()
])
}

void testSocket2() {
sendMulticast([
msgType: "Ping",
msgID : now().toString()
])
}

void sendMulticast(Map payload) {
String json = JsonOutput.toJson(payload)
String addr = getMulticastAddress()
Integer port = getMulticastPort()

log.debug "📤 Multicast TX → ${addr}:${port} ${json}"

if (!socket) {
    socket = interfaces.getMulticastSocket(addr, port)
}

if (!socket.connected) {
    socket.connect()
    log.debug "✅ Multicast socket connected"
}

socket.sendMessage(json)

}

void parse(String message) {
log.info ":inbox_tray: Multicast RX ← ${message}"
}

void socketStatus(String message) {
log.warn ":warning: Socket status: ${message}"
}

void closeSocket() {
if (socket) {
socket.close()
socket = null
log.debug ":electric_plug: Multicast socket closed"
}
}

Fixed a small bug in Below drivers (@ 1:13pm Eastern time 3-25-2026) if downloaded after this time there shouldn't be any errors saving the drivers

Edited to remove old Driver links