rfxcom / node-rfxcom

Node.js client for talking to an RFXtrx433 device
MIT License
61 stars 45 forks source link

Doesn't works with BLYSS remote with 5 units (lightning6) #44

Closed stephjj closed 8 years ago

stephjj commented 8 years ago

The Blyss remote for multi unit send unit code 8. The code throw an error for the first button (unit 8) Ex: Button 1 : BLYSS/0xBC1B/E/8 => Invalid unit number 8 Button 2 : BLYSS/0xBC1B/E/4 Button 3 : BLYSS/0xBC1B/E/2 Button 4 : BLYSS/0xBC1B/E/1 Button 5 : BLYSS/0xBC1B/E/3 Button All : BLYSS/0xBC1B/E/0

maxwellhadley commented 8 years ago

The Blyss remotes are a 'lighting6' device and are not yet supported in the npm version of this package. I assume you are using node-red-contrib-rfxcom in node-RED: this has a dependency on my fork, maxwellhadley/node-rfxcom, which it loads direct from Github, not npm. We are in the process of getting everything pulled into the npm version, but it's slow work. Range-checking of the various address elements is also at present only implemented in my fork.

The latest RFXCOM SDK documentation still shows the highest valid unit number as 5. If you are using an official Blyss remote then it looks like they have changed their protocol slightly. Please can you report this to Bert at support@rfxcom.com, including the model number of the remote & receivers you are using, so the SDK gets updated. I don't have any Blyss equipment here myself, so I just rely on the SDK manual. Can you also please re-raise this issue against maxwellhadley/node-red? Once that's done Kevin can close this one.

Regards,

Max

stephjj commented 8 years ago

Ok done with rfxcom.com, but I cannot raise a bug on a fork. A GitHub bug ?

maxwellhadley commented 8 years ago

How weird! Indeed you can't raise an issue on a fork.

One more thing. Please can you get a dump of the actual received bytes when you press the buttons on your remote? You can either use rfxmgr.exe, or (if you are using node-RED) enable rfxcom console debug by setting the environment variable RED_DEBUG=rfxcom. it is just possible that the unit number value is being modified on the way in, somehow.

stephjj commented 8 years ago

I dont think so. Before Node-Red,I was using OpenHab and the remote send an 8. Here the log from rfxmgr :Button 1 0B150003BC1B450801000050 Packettype    = Lighting6 subtype       = Blyss Sequence nbr  = 3 ID            = BC1B groupcode     = E unitcode      = 8 Command       = Off Command seqnbr= 0 seqnbr2       = 0 Signal level  = 5Button 20B150018BC1B450400000050 Packettype    = Lighting6 subtype       = Blyss Sequence nbr  = 24 ID            = BC1B groupcode     = E unitcode      = 4 Command       = On Command seqnbr= 0 seqnbr2       = 0 Signal level  = 5Button 30B15001EBC1B450200000050 Packettype    = Lighting6 subtype       = Blyss Sequence nbr  = 30 ID            = BC1B groupcode     = E unitcode      = 2 Command       = On Command seqnbr= 0 seqnbr2       = 0 Signal level  = 5Button 40B150022BC1B450100000050 Packettype    = Lighting6 subtype       = Blyss Sequence nbr  = 34 ID            = BC1B groupcode     = E unitcode      = 1 Command       = On Command seqnbr= 0 seqnbr2       = 0 Signal level  = 5 Button 50B150026BC1B450300000050 Packettype    = Lighting6 subtype       = Blyss Sequence nbr  = 38 ID            = BC1B groupcode     = E unitcode      = 3 Command       = On Command seqnbr= 0 seqnbr2       = 0 Signal level  = 5 Button All0B150028BC1B450001000050 Packettype    = Lighting6 subtype       = Blyss Sequence nbr  = 40 ID            = BC1B groupcode     = E unitcode      = 0 Command       = Off Command seqnbr= 0 seqnbr2       = 0 Signal level  = 5

Le Dimanche 28 février 2016 11h46, Max Hadley <notifications@github.com> a écrit :

How weird! Indeed you can't raise an issue on a fork.One more thing. Please can you get a dump of the actual received bytes when you press the buttons on your remote? You can either use rfxmgr.exe, or (if you are using node-RED) enable rfxcom console debug by setting the environment variable RED_DEBUG=rfxcom. it is just possible that the unit number value is being modified on the way in, somehow.— Reply to this email directly or view it on GitHub.

maxwellhadley commented 8 years ago

I've pushed a fix to GitHub that increases the maximum allowed unit code for BLYSS to 8 and changes the unit tests to match. I'm not sure of the best way to update an npm dependency which is actually on Github. Try npm update node-red-contrib-rfxcom, that might notice the change in version number on Github. If not, probably the simplest thing to do is to edit the file lib/lightning6.js: in line 48, change if (unit < 0 || unit > 5) { to if (unit < 0 || unit > 8) {

stephjj commented 8 years ago

Done.And it's working now. Tks.

Le Lundi 29 février 2016 21h38, Max Hadley <notifications@github.com> a écrit :

I've pushed a fix to GitHub that increases the maximum allowed unit code for BLYSS to 8 and changes the unit tests to match. I'm not sure of the best way to update an npm dependency which is actually on Github. Try npm update node-red-contrib-rfxcom, that might notice the change in version number on Github. If not, probably the simplest thing to do is to edit the file lib/lightning6.js: in line 48, change if (unit < 0 || unit > 5) {

to if (unit < 0 || unit > 8) { — Reply to this email directly or view it on GitHub.

maxwellhadley commented 8 years ago

This fix is now merged into v0.9.0 - closing the issue