OpenWrt Forum Archive

Topic: OpenWRT to run my lawn-mower...

The content of this topic has been archived on 30 Apr 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

Hey everyone,

I have always wanted to try to hook up a computer to a lawn mower and see how well it could manuver the mower.  OpenWRT and a supported router seems like an excellent unit to attatch to the mower because it is small, low power, and in a fairly well sealed box.  It also has wireless capabilities, allowing most of the processing to be done on a desktop/laptop machine, with the mower acting like a dumb terminal...

I was wondering if anyone else has used openwrt with a supported router for controlling equipment?  In my case, what would be the best way of controlling the steering and throttle (assuming a self propelled push mower)?  I guess I would have to use a serial or usb port to interface with small electric motors to controll the wheels, etc? 

Ben

ipkg install lawnmower-controller? j/k wink
it would be pretty cool to have tho tongue

During the LUG-Camp in Wuppertal/Germany there were three guys named Jan, Peter and Daniel who presented a really-really-really cool WRT+Atmel+Jeep Hummer model, where the Hummer was steered by a WLAN client...

I've made a photo of the scenario, but sadly it died due to a memory stick problem, so we can only hope the guys show up and tell themselves.

rofl. id like to see pics of both the hummer and the lawnmower if you get it going.

hi...  this sounds fun!
in my paltry experience, a parallel port would make this much easier than a serial port.  A parallel port provides 8 lines for controlling relays and (4 i think?) lines for sensing relay states. 

if you're not sure what I'm getting at, you can send a specially-crafted byte to a parallel port  to turn each of the 8 bits/relays to the position you require, but a serial port would send all those eight bits serially... one after the other.  It would seem you'd need more chips outside the serial port, on the lawnmower side, to allow it to decipher the wrt's instructions, than you would for a parallel port.  On the other hand, you might need more chips to implement a parallel port in a wrt than a serial port.  not sure.

... are there any WRT-compatible boxes out there that have a parallel port? Otherwise, why not build a small interface with - say - an Atmel AVR, hook it up to the serial port (wouldn't even need the Max232 chip for voltage adjustment), then use the AVR I/O lines? That way, you could build a minimal protocol between the WRT and the Atmel to do lots of fun stuff ... (FYI ... Mega163 e.g. has a total of 32 (!) I/O lines, including 8 A/D capable lines, 2 interrupt-capable lines, hardware RS232, ...)

D@mn, giving myself ideas here wink

I believe there is an asus box with a parallel port?  Unfortunatly I'm not much of a hardware guy, I've always been interested in the software side of the lawnmower problem.  As I'm mowing my mind tends to think of different ways the task could be automated.

This is why I had asked if anyone has used OpenWRT to 'control' something.  It seems like a fairly powerful, rather inexpensive, computer. 

Another interesting application would be in a car.  It could play MP3's from a USB drive to a USB soundcard.  You could even upload your songs to your car while you are sitting in your house.  Or it could share a cell phone internet connection for its passengers.  This would use a USB bluetooth interface to a bluetooth enabled cell phone.

You can drive most servos and motors using a parallel port, see http://www.doc.ic.ac.uk/~ih/doc/par/ for more info. I've managed to use an old 286 to control LEDs this way, yet to experiment with anything more exciting.

You could also connect a Basic Stamp (http://www.parallax.com) to a serial port on a wrt54g or other broadcom router. This has lots of general purpose I/O ports and you can just use 2 of these as send and recieve lines to a serial port, the rest can connect to any servos you need. You program them via a Basic style language which is pretty easy to use. What i'd suggest doing is have a load of simple commands which the wrt54g sends over the serial line to the Basic Stamp which then turns on the appropriate servo/motor.

The discussion might have continued from here.