Hello,
At my house, I have a fairly new garage door opener system. The brand is Marantec.
The system has a main control board and several remote controls by which you can open or close (or stop) the door.
The system works by first programming each remote control with the same code and then pairing the remote with the main control board. In this way, each device, whether a remote or the control board, knows the code and can operate the door.
To physically program one remote with another remote (such that both have the same code), you must connect a three-pin jumper cable between the devices and press the button (there is only one button on each remote) on the master remote, wait a few seconds, push the button on the slave remote, wait a few seconds, and then the code transfer is complete.
My question is this:
How, programmatically, does the slave remote "learn" the code?
I am familiar with I2C, SPI, and RS232. I understand that you can move bytes back and forth. What I'm trying to understand is the topology of the algorithm that allows you to "program" one remote with another.
Is it a state machine? Are interrupts involved? I assume the code has to be stored in EEPROM; otherwise, upon releasing the transmit button, it would lose its data.
Any help, tips, direction-pointing, datasheets, application notes, or real life experience, would be great.
At my house, I have a fairly new garage door opener system. The brand is Marantec.
The system has a main control board and several remote controls by which you can open or close (or stop) the door.
The system works by first programming each remote control with the same code and then pairing the remote with the main control board. In this way, each device, whether a remote or the control board, knows the code and can operate the door.
To physically program one remote with another remote (such that both have the same code), you must connect a three-pin jumper cable between the devices and press the button (there is only one button on each remote) on the master remote, wait a few seconds, push the button on the slave remote, wait a few seconds, and then the code transfer is complete.
My question is this:
How, programmatically, does the slave remote "learn" the code?
I am familiar with I2C, SPI, and RS232. I understand that you can move bytes back and forth. What I'm trying to understand is the topology of the algorithm that allows you to "program" one remote with another.
Is it a state machine? Are interrupts involved? I assume the code has to be stored in EEPROM; otherwise, upon releasing the transmit button, it would lose its data.
Any help, tips, direction-pointing, datasheets, application notes, or real life experience, would be great.