Announcement

Collapse
No announcement yet.

Problems using ProductDataRequest

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Problems using ProductDataRequest

    I've written a Google doc describing the problem I'm having probing a device fir product data (category, subcategory and firmware version). Here's the link.

    https://docs.google.com/document/d/1...t?usp=drivesdk

    I'm also copying the content below, but I've included the doc link in case the copy beliw doesn't format readably in the forum

    Thanks.


    Insteon Notes
    I've been working on my own home control software in Python running on RaspberryPi. My code can be found at https://github.com/MarkNahabedian/insteon_experiments. The RasberryPi uses a SmartHome PowerLinc serial modem (model #2413S) to signal the two lamps that I currently have under control. Each lamp is plugged in to a Smarthome ApplianceLinc V2 #2456S3 module (they were originally purchased when compact florescent bulbs were the liw power lighting option).

    I am able to turn the lamps on and off as a group or individually either interactively or according to a schedule.

    I am now trying to figure out the modem commands and responses so that I can poll each device for its category and subcategory and to get its current status. I’ve not yet gotten these to work, perhaps because I am misinterpreting the documentation (particularly the Insteon Modem Developer’s Guide). I’m hoping your support staff can help me out.

    GetModemInfo
    Here are the results of the GetModemInfo command:
    Sent: 02 60
    Received: 02 60 49 93 bf 03 11 9e 06
    This tells us the InsteonAddress(0x49, 0x93, 0xbf), Category(0x03), Subcategory(0x11), and FirmwareVersion(0x9e) for the modem itself.
    Trying to use the ProductDataRequest Command
    I’ve not figured out how to ask a device for its product information (category, subcategory and firmware version).

    The documentation suggests that the ProductDataRequest command is of standard length but returns an extended length response. I don’t know if the “extended” flag of the transmitted message should be true or false, so I’ve tried both values:

    Extended = true:
    Sent: 02 62 0f 82 9e 1f 03 00
    Received: 02 62 0f 82 9e 1f 03 00 15
    This resulted in a NAck, so I guess the extended flag should be false.
    Extended = false:
    Sent: 02 62 0f 82 9e 0f 03 00
    Received: 02 62 0f 82 9e 0f 03 00 06
    02 50 0f 82 9e 49 93 bf 2f 03 00
    The first received line is an Echo of the command with a (positive) Ack.
    The second line does not match the description for “Product Data Response” in the Insteon Command list:
    Extended Data as follows: D1: 0x00, D2-D4: Product Key, D5: DevCat, D6: SubCat, D7: Firmware, D8-D14: not specified


    What if we put the modem in monitor mode?
    Trying again in monitor mode.
    Verify that monitor mode is enabled:
    Sent: 02 73
    Received: 02 73 40 00 00 06

    Now try to read product data again:
    Sent: 02 62 0f 82 9e 0f 03 00
    Received: 02 62 0f 82 9e 0f 03 00 06
    02 50 0f 82 9e 49 93 bf 2f 03 00
    So I’m still not getting product info.

    What am I doing wrong?



    2019-01-02: indteon support case number 971061.




Working...
X