Data storage not working with boolean values?

Also, it seems it’s easily tested. A Decoder does not need to return details that are related to the payload, so you could test with things like:

function Decoder(bytes, port) {
  switch(bytes[0]) {
    case 0x01:
      return {
        a: true,
        b: "string",
        c: 12.3
      };
    case 0x02:
      return {
        ...
      };
    ...
  }
}

And then use a device’s Simulate uplink to test.