[SmartThings Edge] Issue with default function to send Z-Wave configuration parameters

@erocm1231

To avoid possible bugs with older devices, in all my drivers I use this 2’s complement conversion before sending configuration or preference parameters.

 --2's complement value if needed
        local parameter_value_send = parameter_value_set
        if parameter_size_set == 4 and parameter_value_set > 2147483647 then
          parameter_value_send = parameter_value_set - 4294967296
        elseif parameter_size_set == 2 and parameter_value_set > 32767 then
          parameter_value_send = parameter_value_set - 65536
        elseif parameter_size_set == 1 and parameter_value_set > 127 then
          parameter_value_send = parameter_value_set - 256
        end
        print("new_parameter_value Sent >>>>",parameter_value_send)

        -- Sent configuration parameter to device
        device:send(Configuration:Set({parameter_number = parameter_number, size = parameter_size_set, configuration_value = parameter_value_send}))
2 Likes