Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding X10-Security protocol #30

Closed
wherzig opened this issue Apr 21, 2014 · 3 comments
Closed

Adding X10-Security protocol #30

wherzig opened this issue Apr 21, 2014 · 3 comments

Comments

@wherzig
Copy link

wherzig commented Apr 21, 2014

Hi,

rtl_433 is really great. This evening I was able to add reception of the X10 security protocol to rtl_433. I was able to receive a DS10A sensor with this (changed at 433 Mhz). It should also work with sensors for the Marmitec safeguard alarm system at 433 Mhz. See http://www.marmitek.com/de/produkt-details/home-automation-security/x-10-security/safeguard.php. I have this also at home.

It just took a few hours today. Your hints for short_limit, long_limit and reset_limit are really good. I did not think that I would be so easy!

You may add the following code to rtl_433 for this to rtl_433.c if you want to.
I am looking forward to add other protocols. Unfortunately I did only take a X10 DS10A security sensor to the hotel at vacations....

Have fun!

Regards

Willi


static int x10sec_callback(uint8_t bb[BITBUF_ROWS][BITBUF_COLS]) {
/* validate */
if (bb[1][0]^0x0f == bb[1][1] &&
bb[1][2]^0xff == bb[1][3]) {
fprintf(stderr, "X10SEC: id = %02x%02x code=%02x",bb[1][0],bb[1][4],bb[1][2]);
if (debug_output)
debug_callback(bb);
return 1;
}
return 0;
}

r_device x10sec = {
.id = 6,
.name = "X10-Security",
.modulation = OOK_PWM_D,
.short_limit = 1100,
.long_limit = 2200,
.reset_limit = 10000,
.json_callback = &x10sec_callback,
};

// add this to the init protocol section
register_protocol(demod, &x10sec);

@merbanan
Copy link
Owner

Clone on github and send a pull request and I will merge it.

@wherzig
Copy link
Author

wherzig commented Apr 23, 2014

Hmm. I am new to github.
Normally I use sourceforge.net with SVN.

You mean that I should clone your repository and do a fork? And then do the pull request? This is what I have found about it: https://help.github.com/articles/using-pull-requests

Right?

@zuckschwerdt
Copy link
Collaborator

Implemented with #671

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants