Quantcast
Channel: MSP430 Technical Forums
Viewing all articles
Browse latest Browse all 2077

interphone hack

$
0
0

a little context first. I live in an appartment building that has a metallic door at the entrance. in theory one can make that open either by using a pin tumbler lock, an optical keycard or you can call someone by dialing the appartment number on the interphone. none of which are adequate: the yale lock is broken and 'costs too much to repair' to quote the administrator, the optical keys are both fragile and too big for my pockets and training my cat to open the door when I call would be too much of a challenge.

so how about 'improving' that interphone? once someone calls the appartment number the in-house interphone starts receiving power (9V DC) and the resident is expected to push a talk button, identify the guest and optionally activate the door opening button. it proved that all these steps need to be followed:
 

wait for call
talk_enable
wait (at least) 100ms
talk_disable
wait 100ms
open_enable
wait 100ms
*door opens*
open_disable

see first picture for the signals - CH1 - output, CH2 - trigger

in the first revision of this project I was using a large 12V battery in the house. that was connected to a RC relay that is able to send a signal to a msp430f5510. that uC was waiting for the 9V wake-up call, control the button presses via two mosfets and it was also using the RC signal to 'authenticate' the person outside. the TX was supposed to be my ez430 chronos watch sending OOK signals. but unfortunately the radio signal was not powerfull enough, even if the tiny radio was cranked up to max and the distance was not that big.

oh well.

somehow I didn't want to have a power hungry dsp processing chip in the house for voice recognition (that was my initial plan b ).

so given the fact that the only signal from the outside is the 9V wakeup call I decided to 'authenticate' the user by timing 2 consecutive calls. nobody in their right mind would call my number, hang up and call again in a strict (0.2sec) timeframe, right? right? :)

here comes the latest revision. the same uC connected to a coin-cell battery for a whoopingly tiny 1.39uA quiescent current (LPM4 ftw). this power source is used because I don't want to load that interphone system since it's a black box to me. plus I need the uC to be able to time activity on the 9V power line between 2 calls, when there is no power on it. this scenario also comes with the nice benefit that the interphone unit remains completely stock and my pcb is just placed in parallel with it.

 

see pic 2.  the current pcb is inside the in-house interphone enclosure, the old devel version was stuck to the wall (pcb on the right - actually that pcb was an early revision of the solar charger project).

all I have to do now to enter the main door is to call my number twice in a given timeframe. the timeframe is either given by time spent after the first call (current implementation) or by counting seconds after the talk button was 'depressed' by the uC (a slight click is heard in the speakers in that moment).

no more keys, cards or talks to the administrator. I just hope thieves can't read my code [1].

[1] https://github.com/rodan/interphone
 

Attached Thumbnails

  • DA0B7945.JPG
  • DA0B7957.JPG
  • DA0B7967.JPG

Viewing all articles
Browse latest Browse all 2077

Trending Articles