This is the forum archive of Homey. For more information about Homey, visit the Official Homey website.

The Homey Community has been moved to https://community.athom.com.

This forum is now read-only for archive purposes.

Generic 'Add 433Mhz device' functionality (for my Chacon doorbel)

2

Comments

  • Has Athom already developed a 433 sniffer for Homey? I have a Renkforce (Conrad) Klikaan / klikuit system, a Elro and Alecto system. Unfortunately, all not supported :neutral: 

    When I use a Arduino with a 433MHz receiver and the RCswitch library I receive different values from a button. 1 value most but where do all those other from?

    I have never create a app before but 1 time must be the first. Before I can create a app I think I need the proper value from this button of my Renkforce (that's true?).





  • @BasVanDenBosch: Nop. I have tried the elro and I get to work one button. The Alecto app will not a single one work.
    @thayoung1: nice, I gone read this article. When I read this article I see that I'm not the only one with a lot of noise in the 433 signal.




  • bvdbosbvdbos Member
    edited December 2016
    Could you mail the non-working productnumbers to support@athom.com ? These apps are developed by athom and I think they have direct connections with the manufacturers
  • I got a Byron Doorbell/chime (90017 transmitter knob) on 433.92 (the cheapest at Formido). Unfortunately it's not supported by RFXcom so couldn't get a signal-definition from there. Then started recording from Homey (https://github.com/athombv/node-homey-433/blob/master/HOWTO_CREATE_SIGNAL.md) and wondered how much interference I have. So recorded a timeslot without sending a signal. This resulted in :
    Object {31: 1, 32: 2, 34: 3, 35: 1, 36: 1, 37: 1, 40: 2, 44: 1, 46:  1}
    Which seems like a rather clean background, not to much unwanted signals reaching Homey. How is this for others?

    Then with pressing the bell: Object {34: 1, 35: 1, 63: 7, 64: 4, 65: 98, 66: 2, 67: 5, 71: 1} So that's obvious, my signal is 65 bits long... A typical signal is:
    1396,632,1373,623,1374,600,399,1614,1375,628,378,1610,385,1612,382,1599,402,1591,395,1610,390,1609,1377,618,390,1602,396,1602,1389,605,394,1606,1382,614,393,1591,406,1601,395,1602,391,1600,1394,600,397,1603,1385,612,1386,614,1385,604,393,1625,1370,614,382,1603,399,1600,1383,610,1386,631,381

    So it's 10101001100101010101011001011001100101010110011010100110010110100 but the 0 differs between 381 and 631? Also, there's signals which don't start with 10101001 but these start with 0101010101 ?
     
    I'm a bit lost, how to proceed? How to find what my sof and eof could be?

  • Bas can you attach the entire recordData.
    When Homey is recording push as much as possible on your doorbell. Remove the noise (as you have done) with the value 65 (as signal length) and print the recorded array with: JSON.stringify(recordData); 

  • @BasVanDenBosch Not each value is a bit. It is a duration in ms how long there is an 'on' signal or not (for ASK encoding). In your case you can see two words: approx. [1380, 610] and [390, 1600] (sum is both 1990). As the intervals have some variation, set the sensitivity a bit higher (0.7-0.9 probably).
  • When looking around the internet for decoded rf signals I come across a project called rflink. It would appear that this project already has a database/code for several switches doorbells and other items that have been decoded. Maybe this is of some use for the people who are looking at decoding these signals.

    Source code can be found here but unfortunately not the latest version which should contain the decoded signal for the Byron BY35 which I am looking for. RFLink development tree/Source Code

  • Emile said:
    I'm going to add 433/868/IR debugging tools soon, where you can capture raw signals.
    Is there any apps can help to duplicate the 433 signals like the IR remote copy ? 
  • Not that I now but there is a tool to read out the signal. https://github.com/athombv/node-homey-433/blob/master/HOWTO_CREATE_SIGNAL.md

    Because there are a lot of questions about the 433 signals I'm busy to create a Meetup with some developers to analyze the problems and wishes.
  • Any updates on this?
  • JaxcJaxc Member
    Any update on using a generic 433 device, I have some Nice (brand) roller shutters. with a Ergo4 remote. and want to try to make an app for that...
  • maxxie01maxxie01 Member
    edited March 2018
    Jurgen, there is no basic or default app. You need to build it your self but it is possible.
    What you need:
    And you can come to one of the Homey Dev meet-ups, every first Wednesday of the month @sybrandsplace at Utrecht.

     

  • maxxie01 said:
    Jurgen, there is no basic or default app. You need to build it your self but it is possible.
    What you need:
    And you can come to one of the Homey Dev meet-ups, every first Wednesday of the month @sybrandsplace at Utrecht.

     

    How about the 433MHz app generator...? Is that not something that should be used?
  • JPeJPe Member
    maxxie01 said:
    Not that I now but there is a tool to read out the signal. https://github.com/athombv/node-homey-433/blob/master/HOWTO_CREATE_SIGNAL.md

    Because there are a lot of questions about the 433 signals I'm busy to create a Meetup with some developers to analyze the problems and wishes.
    Hi maxxie, can't you provide an instruction/training evening @sybrandsplace at Utrecht? seems many people struggling with this problem (me too).
  • Yes we can and we have it done 2 times before. I'm going to try to arrange this for June 6th. May 2 we have a meetup on HomeyDash. Also very interesting.
  • JPeJPe Member
    Yes we can and we have it done 2 times before. I'm going to try to arrange this for June 6th. May 2 we have a meetup on HomeyDash. Also very interesting.
    Is it going on this evening?
  • No this does not go through. We wait for the new homey version because here are probably many changes. 
  • JaxcJaxc Member
    I'll try to join next time :)

  • HarriedeGrootHarriedeGroot Unconfirmed, Member
    I created a tool to record, decode & analyze the signal based on https://github.com/athombv/node-homey-433/blob/master/HOWTO_CREATE_SIGNAL.md.
    It predicts some possible outcomes & selects the highest rated.
    The output is a signal definition for the Homy RFDriver.

    It can be found here: https://github.com/harriedegroot/Athom-Homey-RF-Signal-Analyzer.
    The tool is far from perfect, but maybe it's useful for anyone struggling with this problem?
  • JPeJPe Member
    edited August 2018
    @HarriedeGroot ;  nice job, looks promising, still have problems to get a result:

    When the contents of the recorded data are changed, (removed all false records) should the calculation then automatically start again or how to handle to recalculate? And when the Prediction settings are changed?

    This is my first and last sets of data, there are around 40 sets like this:
    [[6364,1425,773,1432,759,1436,763,1425,767,1433,767,1435,764,1425,769,1431,769,1427,768,1429,765,1433,766,720,1486,717,1500,718,1485,1436,768,720,1486,1432,766,1431,768,717,1487,1434,769,1423,769,1427,768,1432,768,714,1505,7068],
    [6350,1425,767,1431,769,1427,767,1428,764,1436,768,1429,766,1424,774,1423,769,1432,767,1427,772,1428,765,717,1489,729,1484,727,1486,1430,768,715,1497,1432,762,1436,756,724,1488,1435,765,1435,757,1437,767,1429,767,716,1501,7056]]

    The only result I get is:

    btw. where can I find console output?  edit found console output from brouwser

    2VM42:343 Error: No results
        at calculate (<anonymous>:319:27)
        at HTMLInputElement.$maxSofl.oninput (<anonymous>:114:38)
    2VM42:343 Error: No results
        at calculate (<anonymous>:319:27)
        at HTMLInputElement.$maxEofl.oninput (<anonymous>:116:38)
    4VM42:343 Error: No results
        at calculate (<anonymous>:319:27)
        at HTMLInputElement.$maxWordLength.oninput (<anonymous>:118:44)
    VM42:343 Error: No results
        at calculate (<anonymous>:319:27)
        at HTMLTextAreaElement.$recordData.oninput (<anonymous>:110:17)
  • HarriedeGrootHarriedeGroot Unconfirmed, Member
    edited August 2018
    Console can be found by pressing f12 (Google Chrome)
    All calculations are executed automatically (after recording, pasting/editing record data or changing settings).

    When I paste your signal, this the response:
    Signal: {
      "sof": [],
      "eof": [
        768,
        715,
        1503,
        7062
      ],
      "words": [
        [
          6357,
          1425
        ],
        [
          767,
          1430
        ]
      ],
      "interval": 10000,
      "sensitivity": 0.7,
      "repetitions": 20,
      "minimalLength": 23,
      "maximalLength": 23
    }
    
    Payload: 01111111111??????1??111
    Match:   83%
  • JPeJPe Member
    That's fine for you :)  but the result on my PC is:  :( 
    Error: No results
        at calculate (<anonymous>:319:27)
        at HTMLTextAreaElement.$recordData.oninput (<anonymous>:110:17)

    What do I wrong? I have tried with more lines, same result.
    What settings do I need with this signal for:

    Prediction settings

    Start of frame (sof) length

    min:  max: 

    End of frame (eof) length

    min:         max: 

    Words length:

    min:          max: 

    Tolerance:            ?

    This signal is a known signal I'm already using, so I know the definition you got out is not completely right:
    it must be something like this: 
    Signal: {
      "sof": [6357],
      "eof": [7062 ],
      "words": [
        [
          763,
          1425
        ],
        [
          1430,
          767
        ]
  • HarriedeGrootHarriedeGroot Unconfirmed, Member
    edited August 2018
    What is the exact value you paste in the 'signal recording' field?
    It expects a full signal recording with all lines in this format:
    [
      [signal 1],
      [signal 2],
      ...
      [signal n]
    ]

    So I pasted this (your data):

    [[6364,1425,773,1432,759,1436,763,1425,767,1433,767,1435,764,1425,769,1431,769,1427,768,1429,765,1433,766,720,1486,717,1500,718,1485,1436,768,720,1486,1432,766,1431,768,717,1487,1434,769,1423,769,1427,768,1432,768,714,1505,7068],
    [6350,1425,767,1431,769,1427,767,1428,764,1436,768,1429,766,1424,774,1423,769,1432,767,1427,772,1428,765,717,1489,729,1484,727,1486,1430,768,715,1497,1432,762,1436,756,724,1488,1435,765,1435,757,1437,767,1429,767,716,1501,7056]]

    Edit: I left all settings unchanged (a page refresh will reset the settings).
  • HarriedeGrootHarriedeGroot Unconfirmed, Member
    edited August 2018
    I fixed a small BUG in the prediction algorithm, Could you try again?

    This should be the improved result:
    Signal: {
      "sof": [
        6357
      ],
      "eof": [],
      "words": [
        [
          1436,
          763
        ],
        [
          752,
          1449
        ]
      ],
      "interval": 10000,
      "sensitivity": 0.7,
      "repetitions": 20,
      "minimalLength": 24,
      "maximalLength": 24
    }
    
    Payload: 000000000001110100100001
    Match:   100%
  • JPeJPe Member
    Page refresh did the trick, now I get results.
    Unfortunately not the results I expected to see, and I do not understand why not,
    For me, it looks obvious that 63xx is the "sof"  and 70xx is "eof", in all the valid data lines this is already there,
    the rest of the data contains only pairs of 14xx and 7xx  in two different orders, representing 0 or 1.
    Is this my misinterpretation or is there still a tiny bug in your code?
  • HarriedeGrootHarriedeGroot Unconfirmed, Member
    I probably need to take another look at why the eof is not detected.
    In the above predicted signal def, the sof and both words are correctly detected?
  • HarriedeGrootHarriedeGroot Unconfirmed, Member
    edited August 2018
    Made some small changes, this should fix the eof detection & scoring.

    The current output:
    Signal: {
      "sof": [
        6357
      ],
      "eof": [
        7062
      ],
      "words": [
        [
          1430,
          767
        ],
        [
          720,
          1491
        ]
      ],
      "interval": 10000,
      "sensitivity": 0.7,
      "repetitions": 20,
      "minimalLength": 24,
      "maximalLength": 24
    }
    
    Payload: 000000000001110100100001
    Match:   100%
  • JPeJPe Member
    Congratulations, you nailed it, works perfectly now, also with the raw captured data, thanks very much.
Sign In or Register to comment.