I have an inject node to a UDP out node and a UDP in node with correct IP and port setup. I'm just not sure how to inject the 15 byte word. Do I need to convert each byte from hex to binary and inject it as a buffer?
According to the Command.Response packet structure, the 3rd byte should be the DataSize so i would guess that should be 1 and the value 0xf should be in thee 4th byte.
You will need to calculate the CRC and update the 14th byte
PS, in a function, quoting the hexadecimal values is unnecessary AND new Buffer(..) is depreciated - you should be using Buffer.from([0x47, 0x57, ...])
I do hope your home network is secure!! Exchanging a PIN in clear text over UDP is not "security"
Really, you should put any fires on their own network with only the Node-RED server allowed to connect.
And please don't connect that instance of Node-RED to the Internet! Given recent hacks, I don't think you want some random hacker setting your fire to 31℃ while you are on holiday for 2 weeks (or at any time really!).
Only enough to fill many hard drives! Do a few online searches and you will soon find some stories to make your toes curl and plenty of helpful (and more than enough unhelpful) advice.
My take is that, while individual risk is low, any device that could burn the house down probably should get a bit of extra care.
If you can, it is worth putting such devices on a network that cannot reach the Internet and where the Internet cannot reach it. Doesn't really need to be physically separated. A VLAN or even just a simple network segment that has to be routed to (e.g. if your main network is on 192.168.0.x, use 192.168.42.x or similar) but of course, you will need to do a bit of reading on how to get that to work. If you are using a server with 2 network cards, it is pretty easy to set up, otherwise it may depend on your router.