Device Driver Command with Parameter Range in Map Not Saving

I'm trying to create a custom command on a device driver that takes milliseconds ranging from 0 to 25500. However, when I create a command like this:

command "setBlinkDurationMS", [[name: "Set Blink Duration", type: "NUMBER", range: 0..25500, description: "Milliseconds (0 to 25500)"]]

It errors out when I save like this:

Through trial and error I found the upper limit on number is 130. 129 saves successfully. 130 does not. Why this limitation or is this a bug?

One of the columns in the database that stores the command is limited to 512 characters. You'll notice that the range you specified is being enumerated while being saved.
For now you should just drop the range property and sanitize the value in the driver code.

2 Likes