All | Aquariums | Arduino | Btrfs | Cars | Cats | Clubbing | Computers | Diving | Dreamstate | Edc | Electronics | Exercising | Festivals | Flying | Halloween | Hbot | Hiking | Linux | Linuxha | Monuments | Museums | Oshkosh | Outings | Public | Rc | Sciencemuseums | Solar | Tfsf | Trips



Table of Content for computers:

More pages: June 2024 April 2024 December 2023 August 2021 May 2020 February 2016 July 2014 December 2013 November 2013 January 2013 August 2011 July 2011 August 2010 June 2010 May 2010 March 2010 February 2010 December 2009 November 2009 March 2009 July 2002 October 2001



2010/06/25 Rfxcom, W800, and MR26a on misterhouse, X10Sec Garage and Mailbox Setup
π 2010-06-25 00:00 in Computers, Linuxha
I spent a long time reading and writing documentation on how to use those RF interfaces with misterhouse, and how to use XPL in general.

Instead of pasting the information here, here is the link with all the goods: https://web.archive.org/web/20120423061924/http://misterhouse.wikispaces.com/X10RFX10SecRFXCOM
or
https://github.com/hollie/misterhouse/wiki/X10RFX10SecRFXCOM (up to date, but formatting a bit broken).

I did also learn about RF and antenna design in the process. Here is the quarter wave antenna I built and that I'm now using on my MR26a:




And the simpler, but actually more effective dipole antenna I made and that I use for the W800RF32:




The serial W800RF32 is easier to extend with a long serial cable
The serial W800RF32 is easier to extend with a long serial cable

One of my first applications was to read an X10Sec module in my mailbox to know when said mailbox was opened:



Although, after 6 years of usage, I got tired of replacing the batteries on that DS10A, and I also lost a couple to water damage (it's been hard to waterproof it without killing the radio signals coming out of it). Also, on occasion I would lose a state change due to RF loss. I ended up bringing power and ethernet to my mailbox for IP cams, so I ended up adding an insteon iolinc to read the mailbox open status and at the same time control a flood light to illuminate the mailbox if it gets opened at night:

iolinc has a 2nd relay in parallel with its own relay in put to act as an OR gate and leave the output on even if the input (mailbox) has gone back down
iolinc has a 2nd relay in parallel with its own relay in put to act as an OR gate and leave the output on even if the input (mailbox) has gone back down

got a weather proof box this time, tight fit
got a weather proof box this time, tight fit

lots of wires going to the mailbox now, but I've always prefered wired to wireless
lots of wires going to the mailbox now, but I've always prefered wired to wireless

The next one was to know when my garage doors were opened or closed.
The first thing was to move the door sensors to be at the bumper level, which included drilling holes in the gardrail, no small feat without diamond tip drills which I didn't have. After several hours of making new holes and adjusting the sensors, they are now set to detect the car's bumper as opposed to looking for the car's tires which made it easy to close the door on top of the hood ...


Next, I installed X10Sec sensors on each door so that I know when they get opened or closed.



Technical notes:

  • X10Sec modules send their code 4 times, but if you miss it because the RF band was noisy or the antenna a bit out of reach (even though I tried hard with a dipole antenna put in the attic), then you have no way of querying the state.
  • X10Sec modules are however nice enough to rebroadcast their state every hour or so in case you missed the previous state update.
  • Here is the code I wrote for misterhouse:

    #08/05/2010 11:34:22 State Garage2 is alertbattlowmin #08/05/2010 11:34:22 State Garage2 is normalbattlowmin

    my %x10rfstate; #noloop

    foreach my $dev (["x10sec_garage1", "Main Garage Door"], ["x10sec_garage2", "Small Garage Door"], ["x10sec_mailbox", "Mailbox"]) { my $obj = $dev->[0]; my $name = $dev->[1];

    $obj = &::get_object_by_name($obj); $x10rfstate{$obj} = $obj->state if (not defined $x10rfstate{$obj});

    if ($obj->state_now) { my $oldstate = $x10rfstate{$obj}; my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(); $year += 1900; $mon++;

    print_log "X10SEC: $name is ".$obj->state." (was $oldstate)";

    open(LOG, ">>/var/log/x10sec"); printf LOG ("%.4d/%.2d/%.2d %.2d:%.2d:%.2d $name: ".$obj->state." (was $oldstate)\n", $year,$mon,$mday,$hour,$min,$sec); close(LOG);

    if ($obj->state ne $oldstate) { if ($obj->state =~ /alert/) { system('date | Mail -s "'.$name.' Just Opened" EMAIL'); } elsif ($obj->state =~ /normal/) { system('date | Mail -s "'.$name.' Just Closed" EMAIL'); } else { system('date | Mail -s "'.$name.' UNKNOWN STATE" EMAIL'); } $x10rfstate{$obj} = $obj->state; } } }

    # vim:sts=4:sw=4

    2010/06/18 3rd Upgrade for gargamel, my main home server, going for lower power
    π 2010-06-18 00:00 in Computers, Linux
    My first Gargamel started around year 2000, it was a dual P3 Xeon with the huge cartriges, with a Marlin Spike Intel motherboard (MS440GX) with 6 SCSI busses and 26 drives at its peak (a whopping 2TB of hard disk space back then).
    I don't have watt usage numbers on it back then, but I'm sure it was quite high (>400W with all the drives).

    My original gargamel server
    My original gargamel server

    This server worked a good 6 years or so, and I eventually replaced it in 2006 with a dual P4 Xeon server board I got from my new then work. Drives also got bigger, so I removed SCSI and the 3 external disk arrays, switched to SATA with port multipliers, and settled with 12 internal drives (2 boot drives, 5x250GB and 5x500GB) for a total usable space of 3TB with a "much lower" power usage. Typical power was now in the 280-300W range for the entire server closet.
    Note that my base usage in the closet with computer off is still 70W (UPS is 23W by itself, cable modem and 24 port switch is another 30W, and the other random stuff brings it to 70W).

    Gargamel V2 with Sata and PMP
    Gargamel V2 with Sata and PMP

    Eventually, another 5 years later, I was tired of debugging a couple of issues with the server that was sometimes low on memory that was hard/expensive to find vs bigger DDR3 dims. I also wanted to reduce the power consumption of that power hungry P4 Xeon Server board. One thing I did that helped a while ago was to write some software to make sure all the drives suspended (spun off), which explains the big spikes in power (drives spinning or spun down). See my Spinning down WD20EADS Drives and fixing load cycle page.
    Thanks to help from coworkers who followed PC trends, I went for an Intel Sandy Bridge MB (it was hard to find one with a serial port for serial console booting, and onboard IDE, and 2 PCI slots, but eventually I think I got the last one available :) ). I paid a few dollars extra for an Intel i3 2100T dual core CPU, which is only 2.53Ghz, but that's more than plenty and it only uses 35W, which is awesome.

    As a result, I came down to about 270W average for the computer closet (200W for the computer) to about 210W average (140W for the computer). It will now full idle at 180W (110W for the computer). Sure, one might say 110W is still a lot, but for a server with 10 drives, I/O cards, around 16 USB devices connected, dual ethernet, and dual sound (5 + 7 channels), that's not so bad. In the end, the power graph looks better, so that's good enough for me :)

    The hole is where I changed the server
    The hole is where I changed the server

    The here Christened Gargamel V3!
    The here Christened Gargamel V3!

    all wired up
    all wired up

    2010/06/18 Powering UPSes with Marine or AGM batteries
    π 2010-06-18 00:00 in Computers, Electronics, Linuxha, Solar
    So, isn't it a bit ironic that if I have solar panels that power my entire house and then some during the day, if PG&E power goes off, my inverter has no choice but to shut off too, likely both because it uses PG&E as a phase offset source, and because it would likely be bad to feed power on a down PG&E line (or at least would make it harder for PG&E to diagnose, not counting the fact that the power grid acts as a regulator in case there is too much or not enough power).

    Anyway, I wanted to have power a bit longer than 10mn when PG&E power went out, so I looked into UPS solutions while powering from a Marine or a AGM (Absorbed Glass Material) battery, both being better options than a car battery (car batteries are not meant to be deep cycled or use for extended periods of time and they do put out hydrogen when you charge them, which is undesireable inside a house).

    Interesting bits I found out:

  • This page http://www.type2.com/library/electrip/battbas.htm has decent battery info, and this one gives a bit more about AGM batteries http://www.windsun.com/Batteries/Battery_FAQ.htm . Yet, even marine or AGM batteries are not meant to be discharged at high rate. If you do, they may not even put out half their rated capacity.
  • UPSes aren't meant to be used as inverters for long time power off situations. Some will actually use more than one battery (increases voltage, decreases amps, which is good for lowering draw, but makes it a pain when you need multiple big matching marine batteries).
  • Drawing 1400VA from an APC UPS at 24V is about 60A! That's about 3-4 times what the average copper wire going to your house outlet is supposed to carry. These pages: http://en.wikipedia.org/wiki/American_wire_gauge and http://www.powerstream.com/Wire_Size.htm give some guidelines, but long story short, you need a very thick wire to carry that many amps over more than 10cm without heating up your wires (never good) and wasting a lot of power through resistive loss.
    I first quadrupled up my initial wire but then realized that it only took me from 18 gauge to 12 gauge, which was a bit low, so doubled that up with a cable I cut off from a jumpstart cable (that one was plenty thick, it was more an issue to solder it to the rest due to how massive it was and how underpowered my soldering iron was for the job).
  • In the end, I got a couple of mostly matching AGM batteries and went ahead with those for my 24V APC 1400 SmartUPS. I know my runtime wouldn't be fantastic but good enough considering (at least until I can find another free marine battery :) ).

    At 400W of actual use, that was 40% of the load for the APC 1400 inverter and a self test estimated that I would get about 1H of runtime, which gave 16Ah usable for my AGM batteries instead of about 55Ah at a lower draw (when new, and they were not new). It's a bit disappointing on one side, but on the other side, 1H of runtime for my computer gear ain't too bad, especially for AGM batteries that cost $20 a pieces (cheaper than the stock 7Ah batteries).


    first I quadrupled the wire.
    first I quadrupled the wire.

    this is a big ass gauge jumper cable
    this is a big ass gauge jumper cable

    what it looks like connected
    what it looks like connected


    Anyway, even if this isn't quite the runtime I was hoping for, and it seems hard to find any UPS with a good VA rating by using a single 12V battery (not too surprising due to the amp problem I pointed out), this is still pretty cool.


    More pages: June 2024 April 2024 December 2023 August 2021 May 2020 February 2016 July 2014 December 2013 November 2013 January 2013 August 2011 July 2011 August 2010 June 2010 May 2010 March 2010 February 2010 December 2009 November 2009 March 2009 July 2002 October 2001

    Contact Email