OK - now I understand. The relay driven by the computer is a very smart "switch" which changes the condition of the MCT-100 loop, and causes the Transmitter to send a signal to another Receiver. So if you wire the relay connector block to the MCT-100 loop input, it will work fine. That part is straightforward. I could not tell if the MCT-100 is current or voltage driven, but it will work with the relay either way.
I'm not familiar with the zoneminder. I'll have to look into that. I wanted to do some of that at home to let me know when someone drives into our driveway.
BTW, I am a hardware person - soldering iron and that stuff. This software is a challenge that I am trying to learn. I am one very small step above absolute beginner with this FreeBSD code. But volts and amps and ohms, that I understand. :-)
-----Original Message-----
From: owner-freebsd-***@freebsd.org [mailto:owner-freebsd-***@freebsd.org] On Behalf Of Achilleas Mantzios
Sent: Wednesday, July 06, 2011 8:21 AM
To: Dale Kline
Cc: freebsd-***@freebsd.org; Chris Hill; Ian Smith; freebsd-***@freebsd.org
Subject: Re: FreeBSD and controlling an alarm via relay
Hello, not quite.
Here is the idea (which has roughly worked in the past but with "peculiar"-exotic hardware (e.g. 14.4Kbps modem ) :
1) FreBSD server runs zoneminder.
2) A deamon polls zoneminder's sharedmem (IPC) to see if we have any kind of alert
(motion detection) produced. (that means that we verify that some camera detected unwanted motion)
3) Upon motion detection within the above daemon a script is called which sets some bits in some relay board
4) this relay board closes a NO circuit or opens a NC circuit in MCT100
5) MCT100 talks directly to visonic powermax+ control panel and triggers a burglar alarm
I had the above idea working 2-3 years back, with the following differences with regard to the above
a) a http://www.visonic.com/Products/Wireless-Property-Protection/Door-window-contact-mct-302 door/window
was used instead of the dedicated MCT-100 xmitter. MCT-302 had an additional hard-wired input (NO/NC/EOL) which behaved
like a distinct zone with its own xmitter, pretty much like the MCT-100 does. Problem with that was that the battery
went off too early and also the contact was completely damaged/malfunctioning in the end. That is why i opted
for the more dedicated MCT-100 xmitter which is designed to do just that, (as you said) sense for difference in current
in the circuit and transimt an event to the powermax+ central panel.
b) instead of a dedicated-specialized relay board, i was utilizing an old ZyXel modem, which i had connected in series
with the MCT-302 NC circuit. Normally the ZyXel allowed for current to pass through the circuit.
when the zoneminder-polling daemon detected an unwanted motion detection it run:
vm shell -l cuad1 -S offhook_onhook.pl
(vm comes with mgetty)
where offhook_onhook.pl looked like:
#!/usr/bin/perl
#
use Modem::Vgetty;
my $v = new Modem::Vgetty;
$v->device('DIALUP_LINE');
$v->send("ATH1");
sleep(2);
$v->send("ATH0");
This
$v->send("ATH1");
sleep(2);
$v->send("ATH0");
part seemed to do the trick just fine.
Thing, is that i am thinking these days, of trying either to re-do the old 1.23 zoneminder port for FreeBSD 8.2
or join ***@freebsd.org, in his effort to have a fully functioning zoneminder 1.24 port with local bktr camera support.
Along with that, i want to get rid of the old "MCT-302/ZyXel model" way and try something better and faster.
That is the whole story, i hope i made it clear enough :)
Post by Dale KlineHi,
I guess I don't understand your application here. The Visonic is a battery operated UHF remote alarm transmitter, that looks at a wired loop for a change in condition (a door magnetic reed sensor, for example) and then it transmits an alert to a remote Radio Receiver (MCR-304) if that door opens or closes unexpectedly. The MCT100 has a three volt battery with an operating life of 45 - 50 months according to the spec. It does not need a voltage supply, nor would you want to turn it on and off during operation.
The green terminal blocks then connect to a floodlight (for example) that would turn ON after the UHF Receiver that is listening to the MCT100 Transmitter indicates that someone has opened or closed the door mentioned in the first paragraph.
Am I following what you want to do?
-----Original Message-----
Sent: Wednesday, July 06, 2011 5:50 AM
To: Ian Smith
Subject: Re: FreeBSD and controlling an alarm via relay
another thing that puzzles me is power.
This board : http://www.ebay.co.uk/itm/USB-Eight-Channel-Relay-Board-RS232-Serial-Controlled-/110710333092?pt=UK_BOI_Electrical_Components_Supplies_ET&hash=item19c6d99ea4
needs VDC 12V supply
while this one : http://www.ebay.co.uk/itm/USB-Four-4-Relay-Module-Board-Home-Automation-/180646300804?pt=LH_DefaultDomain_0&hash=item2a0f5bcc84
is self powered from USB.
batteries do not come cheap, and having an extra AC/DC adaptor is not very good either ...
Relay parameters: 5V / 72mA, 15A/24VDC (120VAC), 10A/250VAC or
Each switch 12VDC/15A or 240VAC/10A or
Open (No) and Closed (NC) Contacts rated for voltages: 12VDC/15A; 24VDC/15A; 125VAC/15A; 250VAC/10A
http://www.visonic.com/Data/Uploads/MCT_100_Installer_Guide_English_DE2241U.pdf
Should i assume my device that i want my relay to control will have voltage of 3V?
for which Voltage/Ampere figures should i opt? are those figures crucial?
thanx a lot
Post by Ian SmithPost by Achilleas MantziosPost by Chris Hill[snip]
I was thinking of some relay board (instead of the old modem),
possibly ethernet controlled
This box has relays and GPIO available via ethernet. It's probably
http://www.extron.com/product/product.aspx?id=ipltcr48&s=0
That is too big for my application, thanx anyway.
Most probably i'll go for something cheaper like this one
http://www.ebay.co.uk/itm/USB-Eight-Channel-Relay-Board-RS232-Serial-Controlled-/110710346488?pt=UK_BOI_Electrical_Components_Supplies_ET&hash=item19c6d9d2f8
These look quite well designed and built to me, reasonably priced new,
but check out the/a source site [1] for various models, 1- and 4-relay
boards too, or if you prefer, RS-232 serial rather than USB interface
for the 8-relay boards. There's also a simple parallel port to 8 TTL
outputs board (hi Tim!) and various other stuff. I'm tempted myself.
[1] http://sigma-shop.com/category/4/relay-boards.html
[2] http://www.sigma-shop.com/page/12/manuals.html
Post by Achilleas MantziosCould i use the ucom driver to talk to the USB device like a normal serial device, via /dev/cua*** ?
8 Data, 1 Stop, No Parity,Baud rate : 9600
FF 01 00 (HEX)
or
255 1 0 (DEC)
could i be able to specify those over ucom?
If so, great. If not and you have a serial port, the code will be the
same anyway, except the port used. I grabbed most of the manuals from
=======
The USB-serial device is automatically detected and mapped to /dev/
ttyUSB0 (or USB1 in case there is already a similar device).
My test script: (Thanks Julian!)
--------------------------------------------------------
# cat relay.sh
while true
do
echo -e "\xFF\x00\x00" > /dev/ttyUSB0 ; sleep .1
echo -e "\xFF\x00\x01" > /dev/ttyUSB0 ; sleep .1
echo -e "\xFF\x00\x00" > /dev/ttyUSB0 ; sleep .1
[..]
echo -e "\xFF\x01\x01" > /dev/ttyUSB0 ; sleep .1
echo -e "\xFF\x02\x01" > /dev/ttyUSB0 ; sleep .1
[..]
echo -e "\xFF\x07\x01" > /dev/ttyUSB0 ; sleep .1
echo -e "\xFF\x08\x01" > /dev/ttyUSB0 ; sleep .1
echo -e "\xFF\x01\x00" > /dev/ttyUSB0 ; sleep .1
echo -e "\xFF\x02\x00" > /dev/ttyUSB0 ; sleep .1
[..]
echo -e "\xFF\x07\x00" > /dev/ttyUSB0 ; sleep .1
echo -e "\xFF\x08\x00" > /dev/ttyUSB0 ; sleep .1
=======
If using sh[1] you might need to use \0377 instead of \xFF
Post by Achilleas Mantziosdo you know any application, perl library, utility or just a guide for standard C serial port programming?
Anything that can write bytes to a serial port - perl's overqualified :)
[..]
cheers, Ian
--
Achilleas Mantzios