Having recently moved to a new apartment, one of the first things that I decided to do was build an RC entry system
Here’s some pictures:
![]() |
![]() |
The black box at the top is a simple Velleman RC control kit and the black box below is a 240VAC->12VDC regulated converter. The Velleman RC receiver has two relays, one connected to an electric strike lock and the other connected over the button input in the entryphone which unlocks the main door.
On the RC transmitter there are two buttons, and as they are currently connected, one opens the main door and one unlocks the electric strike on the apartment door, with a 5 second timer on each.
This works well so far and I have paired the transmitters with the receiver so that default unpaired transmitters will not activate the relays. A few weeks on, having already locked myself out once, the next step is to extend this project.
I intend to have the RC transmitter connected separately to some embedded linux board, probably the spare Alix and Phidgets boards I have from the robot I built a while ago. The linux board will signal over a separate frequency to this door entry system. The linux board will perform a variety of functions from logging entries to automated surveillance. Additionally the linux board will have net access and possibly run asterisk. I can either SMS my way in or alternatively call in to asterisk and do some voice authentication. More to follow when I actually have time to get this done..
Tags: alix, asterisk, embedded linux, phidgets, rc transmitter, sms, velleman
For those Debian lovers I have finally found a great embedded distro. I’ve always stayed away from the multitude of distros available, each with their own package manager or lack of, each with their own preinstalled software or again, lack of, and each with their own caveats.
I began my jorney into Linux with SuSE about 11 years ago at the time of writing, and have also given RedHat a fair chance in the past. In my first employment I was forced to battle against Slackware for two years, and about 7 years ago, discovered Debian.
(more…)
Tags: alix, Alix Robot, apt, debian, distro, embedded distro, package manager, RedHat, Slackware, SuSE, Voyage, Voyage Linux
Well finally, here is the promised video…
The majority of the previous hardware issues have also now been solved which is good. The degrading CF cards was caused by a bad Alix board (I’d probably blown a resistor somewhere at some point). A replacement Alix board has arrived while I sell the other on eBay as faulty for any enthusiast who may wish to try and repair it. I am also using a SanDisk genuine SD card in an SD to CF adapter rather than some unbranded CF card. No filesystem errors and the disk now behaves as it should.
The motor controllers sometimes dropping/misinterpreting commands during heavy load was solved by a number of different fixes. Firstly, I believe with the USB to TTL converters the data lines are pulled up to 5v with a 4.7K resistor. I added a second 4.7K resistor in parallel to Tx to give the controller more of a chance against interference. I also added various smoothing capacitors, and edited my serial port byte transmit tool to restore the serial port settings graceefully on exit. Oh – I also cut the cables from their default 1m to the 12cm that I needed.. No more dropped commands.
(more…)
Tags: 4.7K resistor, alix, Alix board, DC to DC adapter, degrading CF, Linux robot, motor client, motor server, nc, netcat, parallel, sabertooth motor controllers, SD to CF adapter, smoothing capacitors, usb to ttl
Progress has as always been good lately. The robot boots up quickly and appears on the wireless LAN, with openssh running. The internal Atheros miniPCI wasn’t doing the trick and wireless performance was shaky at best. I’m using an Alfa Networks USB adapter (r8187) and an 8dBi gain antenna now, so this has some distance now!
I was also getting frustrated with the laggyness of the board while VLC was running for streaming audio and video and so I decided on an IP Camera (Edimax), which is connected directly to the LAN port on the Alix board (I don’t have any reason to use it for anything else).
The motor control script works well and the device is responsive. At this point I can drive the device around
relatively easily and accurately, stream video and audio back to my laptop, which again is connected wirelessly.
Using ‘espeak’ you can easily generate a synthesized voice to provide easy text to voice:
Everything is working great and I’m pleased so far. The only reason why there isn’t a video up yet is because I haven’t had the time! There will be one up shortly.
(more…)
Tags: 8dbi, alfa networks, alix, antnna, atheros, cf card, distance sensor, edimax, espeak, gain, hardware sensors, ip camera, Linux, motor control, phidgets, picolcd, power consumption, r8187, SD card, serial, usb, usb to ttl, vlc
Since I’ve been working on the alix board for the robot it’s become increasingly useful to just compile software on the board itself rather than on a host machine – with an AMD Geode 500MHz processor, it’s certainly capable.
I generally work on a USB hard drive attached to one of the spare ports whilst I’m testing stuff live, and then I back up the hard drive every so often.
I made some modifications to the cp2102.c kernel module and I wanted to recompile the kernel on the board directly as I had some other modules I needed, such as for the wifi card. 2.6.18 compiled eventually over about 7 hours but after wanting to make further kernel changes, I decided that I didn’t have another 7 hours to wait. I decided to use distcc to compile ‘locally’ but use the processing power of any number of other servers.
(more…)
Tags: /etc/hosts, 2.6.18, 3c2, alix, apt-get, build kernel, cc, CC=distcc, compiled, cp2102, distcc, distccd, DISTCC_HOSTS, distributed compiler, g++, gcc, Intel Xeon, kernl module, ld, libc6, libc6-dev, Linux, make, the robot
Some hardware has arrived!
So my working space is a little bit of a mess at the moment. There’s no better way of getting started than just getting straight to the point.
The Alix 3c2 main board arrived in good health and works well. On the underside is a 512MB CF card and an Atheros MiniPCI Wifi. I’ve soldered single core wire to the I2C bus pinout. GND, CLK, Data & +3v.
I’ve also soldered bell wire across the power input. It accepts a wide input and so I’ve decided on 12v.
This is my prototype “power distribution board”. Currently it consists of 2 12V/2A regulators, some resistors and a 1000uF/30V smoothing capacitor. It provides 12v to the Alix board, and 12v to the motor controller. If both motors stall, they can use up to 6A, so whilst this is fine for testing the controller board, I’m going to have to replace one of the regulators with a transformer system to provide the necessary power to the motors.
(more…)
Tags: 12v, 38400 8n1, 3c2, 512MB CF card, alix, alix 3c2, atheros, atheros 5212, capacitor, card reader, clk, data, debian, debootstrap, gnd, Hardware, i2c, i2c bus, i2cdetect, Linux, minipci, motor, null modem, power distribution board, prototype, pxe boot, regulator, resistor, serial cable, serial console, smoothing capacitor, solder, transformer, wifi, wire
Dear Blog,
Just to let you know that I most certainly haven’t forgotten about the robot project, I’ve just had a really busy week. I’ve ordered some hardware and expect to have the ALIX main board here in the next day or two. I think my next post will be over the weekend and will hopefully detail [successful] linux installation steps!
Tags: alix, Linux, Linux robot, Robot
Follow on from: http://www.adamsinfo.com/the-robot-hardware-list-wheel-plan-more-ideas/
I’ve given up on trying to source separate motors, motor controllers, encoders and brackets. I’m concerned that my knowledge of mechanics and motors is limited, and that I’m going to spend too much time and money trying to build a movement package myself.
I’ve decided to go for a good motor/controller/encoder package here:
http://www.active-robots.com/products/motorsandwheels/rd01-drive.shtml
I’ll need two of these, and will have to replace the wheels with the omni directional wheel things I found and linked to in my last post.
I’ll drill the brackets into a thin metal plate, and start building perspex on top. I don’t seem to have paid enough attention to battery/device weight/motor/power and am concerned that the motor and battery combination will not move the device. I don’t yet have an idea of how much it will weigh, but I’ve realized that the perspex is going to have to be as thin and light as possible, and I’m going to have to bear weight in mind with any unnecessary or redundant extra parts.
(more…)
Tags: alix, APNIC, atheros, CF, embedded, i2c, Linux robot, motor, picolcd, Robot
Thanks to some further thought and some great comments and suggestions, I’ve got a clearer idea of what I’d like to build, and I’ve devised a preliminary hardware list. I’ve divided this into various categories to help planning and ordering.
Discuss this in the forums here: http://www.adamsinfo.com/forum/linux-robot/the-robot-hardware-list-wheel-plan-more-ideas-steps-to-launch/
Hardware
My bad wheel plan mockup for 4 wheels and omnidirectional movement:
Please excuse the awful graphics
The base layout should be as follows. The diamond shape is a very thin metal plate which will have the motors and motor casing attached. The metal plate will be at the very bottom of the device. The square (overlayed) will be the acetate base of the unit, and build up to form the base “box”.
I’d like the motor’s to be simple 6-9v, 10W max. motors
Each motor will be held on it’s own bracket and will not be connected via an axle. Each motor will require independant control via a motor controller. The motor controller will be required to convert digital input to variable voltage (5v/7v/9v?) output. 4 speed (4.5v/6v/7.5v/9v>) would also be fine.
(more…)
Tags: alix, analog, camera, cf card, digital, electronics, i2c, io ports, LED, Linux, Linux robot, microphone, motors, Robot, sensor, speaker