diff --git a/README.md b/README.md new file mode 100644 index 0000000..9c40c64 --- /dev/null +++ b/README.md @@ -0,0 +1,72 @@ +The Linear ACT-34B is a gate remote. +product page: http://www.linearcorp.com/product_detail.php?productId=867 +manual: http://www.linearcorp.com/pdf/manuals/ACT-31B_ACT-34B.pdf +FCCID: EF4ACP00872 +The Linear ACT-31B is the same than the ACT-34B, but have only one button instead of four. + +The Monarch 318LIPW1K(-L) is a compatible/clone of the Linear ACT-31B. +product page: http://www.communitycontrols.com/Product/?PID=196 +manual: http://s3.amazonaws.com/CommunityControls/PDFs/CC-Monarch-318LIPw1K.pdf +FCCID: SU7318LIPW1K + +megacode +======== + +The value is encoded using Linear LLC MegaCode scheme. +It uses AM/ASK/A1D pulse position for the radio signal. + +The radio transmission uses the 318MHz frenquency. +The signal is encoded using Linear LLC MegaCode scheme. +It uses AM/ASK/A1D pulse position for the radio signal. +24 bits are transmitted: +- 1 sync bit +- 16 bits for the remote code +- 4 bits for the facility code +- 3 bits for data bits (the channel/button used) + +24 bursts are transmitted, plus 1 blank burst, within 150 ms. +Each burst is a 6 ms bitframe. +Withing the burst there is a 1 ms pulse after 2 or 5 ms. +The blank burst does not include a pluse and is used to separate transmissions. +The first pulse is used to synchronize and is alwasy after 5ms within the burst. + +sdr +=== + +This folder contains tools to be used with Software Defined Radio (SDR). + +A RTL-SDR has been used to capture the signal. +Use *sdrangelove* to figure out the frequency. +It is around 318MHz, but +/- 100kHz. +Use *rtl_fm* to record the transmission: + rtl_fm -f 317.962M -M am megacode.pcm +A few remote transmissions have been captured and the recordings are saved in *samples* + +*megacode.pcm* will have signed 16 bits little endian sample, at 24000Hz. +Use *decode.rb* to decode this recording: + ./decode.rb megacode.pcm + +To record is an opprotunistic way (someone uses an unknown remote further away), you have to tweak *rtl_fm*: + rtl_fm -f 317.9M:318.1M:20k -g 10 -l 700 -M am megacode.pcm + +pic +=== + +This folder contains firmwares for the transmitter and receiver microcontrollers. + +The PCB of the ACT-31B is the same than the ACT-34B, with only one switch out of four populated. +It uses a PIC12C508A (SM package) microcontroller. +This microcontroller is EEPROM based (designated by the 'C' in the name) which the PICkit 2 can't program. +It is programmed using the test points, but only once since it's a One Time Programmable (OTP) chip. + +A pin compatible flash based chip can be used instead. +Most P12FXXX are, like the PIC12F629/PIC12F675 (simplest alternative), PIC12F617 (more flash but no EEPROM), and PIC12F1840 (high end). +They come in SN packages, which is thiner then the original SM package. +But the pitch is the same and the pins can be soldered on the pads. + +The 318LIPW1K uses a re-programmable chip (flash based). +It uses a PIC12F629 (SN package) microcontroller. +Monarch also adversitve that the code is programmable. +I could not find the software. +The programming header is even present on the board. +But the microcontroller has read protection enabled.