Giter Site home page Giter Site logo

somfy_remote's People

Contributors

afoeder avatar nickduino avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

somfy_remote's Issues

Sketch running on ESP8266

Hello,

did you try running your code on an ESP8266 basis? I tried it in combination with a CC1101 transmitter but it does not work. Does the digitalWrite routine mess up with the impuse timings?_

About the transceiver

Could you share some details on your schematic of the transceiver that you used?
You say that you use one from an existing remote, which remote exactly?
What kind of antenna design are you using? What's your reach?

New approach with SX1278 LoRa ESP32 board ?

Hi all,

after some frustrating experiments with the standard RF transmitters in terms of serious range issues in my house (yes, I have adjusted the frequency by soldering a 433.42 MHz SAW resonator!), I dropped my plan to build up my own Somfy Remote based on this approach.

So, I'm planning another approach based on a SX1278 LoRa ESP32 board, hoping to finally overcoming any range issues. Such boards are being offered for ~ $12 including OLED Display
on Aliexpress etc.

So, I hope to build a real good working Somfy Remote with these ambitions:

  • support of up more than 25 channels (99 would be a good number ;-) )
  • direct control as a "normal" remote by attached pushbuttons (channel +/- select, up, my, down, prog)
  • wifi control by IP commands for smart home enabling (should be easy to adopt to ANY Smarthome by supporting secure(!) IoT/Smarthome standard protocols)

I have already ordered some of these boards - they should arrive in Germany in 2-3 weeks.

Because my limited time and software/hardware skills I want to ask if anyone is interested in teaming up for this project?

Reliability Problem of RTS sending

Hello,

I am facing an issue of reliability with the 433.42 TX modules, I have 2 boards i replaced the 433.92 with the 433.42 MHz crystal. Sometimes they work like charm and sometimes not. Am trying them on Arduino Uno since on ESP8266 is not working at all even if use the digitalWrite syntax.

Is the isuue may be related to the Antenna of the TX modules? and what is the preferable antenna to be added to the TX module for better coverage.

Noting that i modified the sketch to support up to 8 RTS remotes, i created many EEPROM addresses with 4 bytes reservation for each address and the RTS Remote addresses increment are 4 as well (i.e REMOTE1 address is 0x235440 the REMOTE2 is 0x235444)

Thank you.

Symbol lengh 604 or 640?

Hi Nick,

First of all : Thanks much for sharing your great work !

Reviewing your codes, I have noticed that the frame symbol lenght is set to 640 µS whereas the "Pushstack web page" defines the Somfy RTS protocol with a 604µS. Is this a typo or could you advise why you adjust the value not in line with Pushstack RTS documentation?

Thank you in advance !

Link to Somfy_Remote.ino / Line L24:

#define SYMBOL 640

Pushstack web page:
https://pushstack.wordpress.com/somfy-rts-protocol/

Debugging

Hi!
I recently moved to apartment with somfy system.
I downloaded the code and changed it to fit the ESP8266 (I'm using Wemos D1 mini).
Did some soldering to the RF 433MHz module and replaced the crystal to 433.42MHz.
Now I'm trying to debug it why it's not working.
I probed the ESP8266 pin and I can see the signal but my somfy doesn't respond to the P command.

Any idea would be appreciated.
Thanks!

TUBE RTS Protocol // Somfy

Hello Nick,

The TUBE has a RTS remote control but the remote control address always have 7 positions, so, beside the RTS default protocol it has add a initial 2 on it, so like 0x265822A using RFLINK to check to read the remote control it indentifies as RTS with 7 position in the ID but in RFLINK or in Somfy_Remote we are unable to send frames like this. Can you check it?

Use of standard hardware

Hi,

did you think about using a CC1101 transceiver module instead of a self modified hardware?
Its the chip used in the Busware CUL (used to send somfy commands in fhem).

Regards

Alternate approach to sending 433MHz signal

Hi,

I'm opening this as an issue, because I have no idea how to send a message to you :p Feel free to close right away!

As I mentioned in the Nodemcu firmware repo, I'm working on an alternate approach to control somfy rollers. In my case, I installed outdoor aluminum rollers on all window in my house for security reasons, due to several robberies in the area. The motors are manufactured by the same factory as for somfy, but the receivers and hand controllers are another brand, and use the standard 433.92MHz band.

I thought to control the rollers from my phone, probably along the same lines as you are thinking. Therefore, I started looking into the 433MHz communication, looking to hack a controller, or maybe get a transmitter or something, but then after further thought I dropped the idea very early on.

You said that your approach would have the same security as the somfy controllers, and that is exactly what got me worried. My understanding (and please correct me if I'm wrong) is that there is virtually no security. Anyone with a 433MHz receiver could listen to the commands sent by your transmitters (either a hand controller or transmitter attached to an ESP), and then mimic the same train of pulses. In my case, it means that with less than USD$10 worth of hardware, and minimal software, that person could open all the rollers that I just installed in my house!

So, I figured that the 433MHz receivers and hand controllers have to be replaced.

Here's my approach:
Use the ESP with a tiny webserver onboard to pulse one of two gpio outputs for a predefined length of time. Each of those gpio outputs is connected to a relay big enough to drive a motor direction line. The length of the pulse is programmable, to allow different settings for the different rollers (different heights of the windows).
For an initial approach, what I intend is to connect the ESP relays in parallel with the 433MHz receiver relays, so that either can activate the motor directions. Yes, there is the danger that if one of the two is activating the roller in one direction, the other could activate it in the opposite direction, which could potentially damage the motor, but this is just for testing purposes. Once I figure all is working as intended, I intend to drop the 433MHz receivers.

Of course, my approach is intrusive: I have to go and open up the rollers and mess with the cables to install the ESP. Also, it requires one ESP per roller. In my case that's 23. But once done, the house is protected at minimum by the security of my wifi (wpa2), which is pretty good, and with some networking knowledge that could be vastly improved.

Anyways, I just thought to tell you about this :)

433.42 MHz

Thanks for your work
Where did you get 433.42 MHz Cristals?

max number of remotes per shade?

Hi together,
I played around with the sketch and it's working now for me. I control multiple shades (each with an own remote address). The problem I have that one shade doesn't work (the one I used for the first experiments). When I program it, shades go up and down but then the normal modes (up / down / my) don't work. --> sounds a bit like the wrong rollingcode although I send an initial one at the prog stage and count up then (same as for all the other shades where it works).
How many remotes are possible for one shade? I tried a lot and for that specific shade I definitly used >10 random addresses already. Is it possible that the shade just strores a few ones and doesn't accept to learn a new one (although the reaction at the programming step is the same as for the ones working (up/down swipe)).
Any idea how to find out what addresses are stored internally and how to delete them?
thanks in advance

Using with multiple blinds

Hey nickduino,

Is it possible to control up to 11 blinds separately? If so how would I go about it?

Thanks in advance,
Nick

Is it possible to send tilt commands?

Hello,

you did a very, very nice library;) I have an Arduino and now I am waiting for RF transmitter but when I checked your program I didn't see the tilt commands. Is there a way to do this via your library?

Can't Get it to Work

I use an FS1000A from which I removed the original resonater (433.92) with a new one (433.42). I know it still works because the FS1000A was still able to control another device. I then changed REMOTE to 0x2727 and newRollingCode to 1. After compiling I pressed the programming button on the original remote until the shade briefly moved. Then in the serial monitor I pressed the button p + [Enter]. Then I tried sending commands to move up and down but nothing happened. Here is one output from the serial monitor:

Descend
Frame : A7 40 00 15 00 27 27
With checksum : A7 4D 00 15 00 27 27
Obfuscated : A7 EA EA FF FF D8 FF
Rolling Code : 21

Note that there were some warning. The first couple are probably ok but the one for delayMicroseconds might be of concern.

SomfyRTSControl.ino: In function 'void BuildFrame(byte*, byte)':
SomfyRTSControl.ino:96:24: warning: right shift count >= width of type
frame[4] = REMOTE >> 16; // Remote address
^
SomfyRTSControl.ino:98:12: warning: large integer implicitly truncated to unsigned type [-Woverflow]
frame[6] = REMOTE; // Remote address
^
SomfyRTSControl.ino: In function 'void SendCommand(byte*, byte)':
SomfyRTSControl.ino:154:28: warning: large integer implicitly truncated to unsigned type [-Woverflow]
delayMicroseconds(89565);
^

support more then 1 blind

hi
I want to use one design to control several blinds.
how can I assign new commands like UP or DOWN for each blind individually(not group command)?

Thanks
Eitan

This is just what I need

But I have zero knowledge when it comes to programming. I'm great at following tutorials, but that is it.
How can I hack the RF transmiter? How can I make this happen? Would you mind pointing me the right direction?

Thank you!

ESP32 support

Hello,
I'm running my own small project on ESP32 and MQTT. I'd like to ask you if there is any update to use your .ino with ESP32 platform?

Y

Simulate Long-Press

I have a working version of the software but have misplaced the physical remote. Thus I can no longer:

"Long-press the program button of YOUR ACTUAL REMOTE until your blind goes up and down slightly"

to put the blind in Program mode (I would like to create a back up of the current remote using a new channel). Is there a way to simulate a "Long-press" using your code?

Thanks for the assistance.

Multiple Devices

Hi
How can i use the programm to control multiple blinds seperatly?

Thank you

Hardware

Hi Nickduino,

I will be more than interested to test your project with a raspberry pi.
Can you let me know which transmiter I can use? And how to set it up?

Feel free to contact me by email to chat in EN or FR, pseudo@gmail com

Thanks in advance

License

Hey Nickduino,

sorry to bother you this way but I found no other contact details. Could you add any kind of open source license to your project if you would like others like me to use it? Otherwise we are just not allowed to use your work and depend on your good will.

Thank you!

Provide a license

Hi @Nickduino, thanks a lot for your inspiring work that apparently is the baseline for many others :)

Would you please provide a license to your source code so that we can properly attribute you following the terms you've wished?

Thanks a lot!

'DDRD' was not declared in this scope

am getting errors when I try compiling the code for NodeMCU on Arduino IDE, following are the errors

Somfy_Remote:159: error: 'PORTD' was not declared in this scope

 PORTD |= 1<<PORT_TX;

 ^

Somfy_Remote:166: error: 'PORTD' was not declared in this scope

PORTD |= 1<<PORT_TX;

^

exit status 1
'DDRD' was not declared in this scope

Cloning the Remote Code without Sending new codes to Somfy Motors

Hello,

First of all i want to thank you for this great hop to be able to make Somfy RTS work on ESP8266.

I will test it on the Wemos D1 mini but i would like to know from where I should take the HEX number of the Somfy RTS Remote, for example Telis 4 remote. the HEX number is located somewhere on the remote ?

Thank you,

Trying to get this to work on an ESP8266 - Compiling errors for PORTD and DDRD

Hi and thanks for some interesting looking code.

I've tried this on a Mega 2560 and it seems OK. When I tried to compile for an ESP8266, I got errors that PORTD and DDRD werent declared.

I gather PORTD and DDRD arent valid for the ESP8266.

I saw you did comment about using an ESP8266 yourself sometime - hàve you done that? How could the code be changed to achieve that?

Please bear in mind that I am a complete and utter newbie, so you'll probably need to explain like I am five.

Many thanks for any help you can offer.

Receiving Somfy RTS signal

Hi all,
Is it possible to receive a signal from RTS remote and make the arduino do action after receiving?

Hardware not working

Hi
Thanks again for this code,
I am currently facing an issue, i bought everything necessary, setted up my esp, and did the crystal swap.
I enter into prog mode, push p using mqtt, but the blinds are not reacting, i tried with the default and swapped crystal. Nothing changes,
How can i do ?
What am i suppose to do ?
I copied the wiring from
https://www.youtube.com/watch?v=9RhHrYqp9FU
Nothing works
Please help me

How to simulate a Somfy Telis 4 RTS

How should I tell the software which of the four channels to use for the up down and stop commands?
All the blinds ended up in one group after I was done with programming, making it impossible to control them individually.

Not working on Arduino mega

I've recently bought a arduino mega and shield ready for rflink firmware (Arduino mega pinout: https://lynx2015.files.wordpress.com/2015/08/arduino-mega-pinout-diagram.png)
The connections are documented here: http://www.rflink.nl/blog2/images/rfl_sch.jpg
But I'm unable to figure how to adapt the port registry (I tried register J (DDRJ and PORTJ) but I'm not getting any response from the somfy engine.

Would you guys have some pointers to get this working ?


#define PORT_TX 0 // 14 of PORTD = DigitalPin 14

void setup() {
Serial.begin(115200);
pinMode(15, OUTPUT);
digitalWrite(15,HIGH);
DDRJ |= 1 << PORT_TX; // Pin 5 an output
PORTJ &= !(1 << PORT_TX); // Pin 5 LOW

DDRD and PORTD with ESP8266 (NodeMCU)

Thanks for this sketch! I'm looking to modify it to allow for controlling my Somfy awning over MQTT.

Problem: I'm using a NodeMCU ESP8266, and the ESP8266's GPIO registers are laid out differently than an Arduino's, so DDRD and PORTD do not work (and throw "DDRD/PORTD was not declared in this scope" error on compile).

The pinMode() and digitalWrite() functions do work, however. Are these commands an adequate alternative to DDRD (pinMode()) and PORTD (digitalWrite()) for setting the OUTPUT mode and the HIGH/LOW output of PORT_TX?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.