AnonymousInactiveApril 9, 2009 at 7:11 pmPost count: 2
I’m writing my own program (in C on a Linux box) to control my EZ-Rain via a USB PLC and I think I must be missing some key piece of information.
I send out a standard length “Get sprinkler timers request” message (0x45) and I get back a standard length ACK message but I was also expecting to get an extended “Get sprinkler timers response” message (0x41). I never get one. It doesn’t matter which timer bank I try.
Can anyone explain (more helpfully than “You screwed up”) how I could be getting back the ACK but not the timer data? I am logging all the USB data byte by byte and there is no partial message or anything like that.
SteveAnonymousInactiveApril 9, 2009 at 10:52 pmPost count: 1001
I have never seen an SD message sent with an ED message response. It would not be expected protocol to get an SD ACK where the cmd2 field has the response to the original SD message and have that followed by an ED message from the responding device. Can’t say that the EZFlora does not do that for sure but it would be a very unusual sequence. I would make the outbound 0x45 command an ED message and see if that generates an ED response. ED messages are so unusual for I1 devices that they are not even repeated by the general I1 device population. That is one of the reasons why folks who are starting to use I2 devices are seeing high quality SD communication with less reliable ED communication because the majority of installed I1 devices do not repeat ED messages. Also, the older SignaLinc RF powerline couplers do not process ED messages. I’m not even sure the PLC will send an ED message let alone handle an ED response. The PLC is the original powerline interface device that has been around forever.
My guess is that you will have to issue an SD Peek command for each Timer Bank value you want to retrieve. The SimpleHomeNet Utility Suite uses individual SD Peek commands to retrieve the Timer Bank values, one byte at a time. There is a memory map chart on the right side of the EZFlora INSTEON Messages/Commands document that shows where the Timer Bank bytes are stored.
EDIT: a check of the PLM/PLC comparison chart on the Smarthome web site confirms that the PLC does not support ED messages.
EDIT2: the following is the command trace from the SHN Utility reading Program 1 Timer values. The MSB 0x28 command establishes the Most Significant Byte address followed by Peek 0x2B commands reading locations 0008-000F.
1 To ID:0d.fc.71 flags:0F cmd1:28 cmd2:0
2 To ID:0d.fc.71 flags:0F cmd1:2B cmd2:8
3 To ID:0d.fc.71 flags:0F cmd1:2B cmd2:9
4 To ID:0d.fc.71 flags:0F cmd1:2B cmd2:A
5 To ID:0d.fc.71 flags:0F cmd1:2B cmd2:B
6 To ID:0d.fc.71 flags:0F cmd1:2B cmd2:C
7 To ID:0d.fc.71 flags:0F cmd1:2B cmd2:D
8 To ID:0d.fc.71 flags:0F cmd1:2B cmd2:E
9 To ID:0d.fc.71 flags:0F cmd1:2B cmd2:FAnonymousInactiveApril 10, 2009 at 3:57 pmPost count: 2
I’m getting the information about the ED responses to SD messages from http://www.simplehomenet.com/Downloads/EZRain Command Set.pdf. The description for the SD message “Get Sprinkler Timers Request” (0x45) says “EZFlora responds with an Extended-length Get Sprinkler Program Response message”. This documentation could be wrong but that would suprise me.
I suppose I could use the individual peek/poke commands to read and write the timers but since Simplehomenet went to all the trouble of making a special command to do it a whole bank at a time, I thought I would use it. BTW, I have rev 2.3 of the EZRain, perhaps the ED messages were implemented in a later version?
Can you give me the link to where you found the info about the PLC not supporting ED messages? That >really< suprises me!
SteveAnonymousInactiveApril 10, 2009 at 4:46 pmPost count: 1001
The Smarthome site is http://www.smarthome.com. Go to the information on the 2412S (serial PLM), under the More Info tab is the comparison chart for PLM versus PLC function.
I saw the same information you referred to in your last post. I think that chart is wrong. The EZFlora was released long ago when none of the I1 devices used ED commands, did not repeat ED commands, and the application interface device, PLC, did not support ED commands. However, even if the EZFlora is returning an ED response to the SD 0x45 command, you would need a PLM (2412s) as the powerline interface to see it.
Although the Insteon 1 architecture does document the ED message, none of the original Insteon devices used them. It is only in the last few years that new Insteon devices have started to use ED messages. Now there are reliability issues with ED because the vast majority of installed Insteon devices do not repeat ED messages. The ED messages are not blocked, just not repeated by the older devices. Insteon devices repeating messages is one of the reasons Insteon has good reliability. Search the Smarthome forum for references to the HouseLinc2 software product running communications reliability tests for SD and ED messages. You will see that folks who have great SD reliability (practically 100%) have problems with ED messages because the older Insteon device install base does not support ED.
EDIT: the Smarthome HouseLinc2 software supports the PLM only (in fact a special HL2 enabled PLM only). You cannot run HL2 with a PLC.
- You must be logged in to reply to this topic.