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
Progress is going really well and I’m happy so far. Unfortunately I didn’t want to show the body yet as it is so far from finished but as I haven’t posted an update in a while I decided to just go with it.
The body is ever so slightly lop sided by a few mm here and there which is a shame however from a short distance you wouldn’t notice, it stands up straight and weight distribution is equal throughout the base plate so I’m happy with it. Ok, ‘professionally’ the body’s a mess however for my zero experience in that kind of work, I’m reasonably happy.
This is the front of it, top is a mounted webcam, to the left of that is a phidgets temperature sensor and top right is a phidgets light sensor. I am waiting to add 8 colored status LEDs around a small flat panel 5v stereo speaker as a ‘mouth’ (I got it from a Nokia phone bundle).
(more…)
Tags: battery pack, distance sensor, IR remotes, irda, LED, light sensor, Linux, Linux robot, MAX232, motor controller, nimh, phidget, phidgets sensor, picolcd, picopsu, polycarbonate glue, sabertooth, serial port, stereo speaker, temperature sensor, the robot, usb phidgets, usb sensor kit, webcam
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
Following on from the previous article, I’ve written some scripts which you’ll find in the /root/scripts/ directory of the prebuilt image. I’ve attached and commented them here, as they could also be useful elsewhere.
bridge.sh #For setting up a simple bridge
(more…)
Tags: 532a, APNIC Box, bandwidth management, bandwidth rate, bridge, cbq, ifconfig, iproute2, iptables, lcd, Linux, picolcd, qdisc, routerboard, routerboard 532a, shaping, tc, time, usblcd, usleep
Follow on from 01 Oct 08 APNIC Box – Linux on a Mikrotik 532a, Part 1
Custom Hardware Modifications
Here’s a labelled image of the inside of the device. You can also look towards the bottom left of the image for my simple solder modifications. Enlarge the image to see the labels.
1. External 2.4GHz/5GHz antenna. Same on opposite side.
2. 5V solder point
3. 5V connector for miniPCI USB card
4. 2x 2USB Headers. 1 Header in use providing 2x USB interfaces, one to regular host connector for mass storage or other usb connection. Other port for picoLCD on top
5. 512MB CF card
6. miniPCI USB controller
On the underside of the board there is a single miniPCI socket which houses an Atheros 5212 802.11a/b/g miniPCI card. It has two antenna outputs which run under the board and two the two external antennae. I haven’t taken a picture of this but if anyone really wants to see it, I will power down the device, get a picture of it and post it here.
Tags: 2.4ghz, 532a, 5ghz, 802.11, antenna, APNIC, APNIC Box, atheros 5212, Linux, mikrotik, minipci, minipci usb, picolcd, routerboard, routerboard 532a, solder, soldering, usb interfaces, usb ports
I put this device together for fun sometime around the start of 2007. The ideas that spawned this was using OpenWRT on a Linksys WRT54G access point. A surprisingly powerful and full linux distro with all kinds of advanced capabilities running on a Linksys wireless router which I’d previously thought to be a reasonably dumb device with computing power more comparable to a calculator than a PC. The project opened my eyes to embedded devices, and I wondered what device base I should start with. To cut a long story short and for reasons that I can’t even remember anymore I came across the Mikrotik Routerboard 532A and decided that I should start with that.
Conception
Here’s a picture of the device from the outside with some labels, view the full image to see them.
1. Status LEDs. Blue at the bottom left shows it’s on, orange at the top right shows that there’s wifi activity.
2. Ethernet (eth0)
3. Standard Serial Console (57600, 8 N 1)
4. Ethernet (eth1)
5. Ethernet (eth2)
Tags: adsl2+, APNIC, APNIC Box, distro, ethernet, isp, linksys router, Linux, Linux routing, modem, openwrt, picolcd, public IP, redundancy, routerboard 532a, serial console, switch
I’ve posted previously about my embedded device and picolcd. I wanted to put some thoughts down about using picolcd.
The easiest way to drive your picolcd is with lcdproc I’ve found. The device doesn’t require any special drivers which is great, as long as you have USB support working you’re fine. Make sure uhci-hcd and usbcore are loaded, you should be able to use ehci-hcd as well as it supports USB 1.1 and 2.0 but I haven’t tested that.
Use lsusb to make sure that the device is shown and recognised. If you see:
Bus 002 Device 003: ID 04d8:0002 Microchip Technology, Inc.
then great. Your device is connected, working and your machine supports USB.
(more…)
Tags: drivers, ehci-hcd, embedded, lcdproc, libhid, liblcdusb, libusb, lsusb, pico lcd, picolcd, picolcd on linux, routerboard, uhci-hcd, usb, usbcore
I have two separate internet providers, two separate static ranges, one from each provider, and a LAN. The purpose of the exercise here was to split traffic between the two providers on an equal 50/50 basis.
(more…)
Tags: Linux, mikrotik, minipci, openwrt, picolcd, router, routerboard 532a, usb, wireless