OT: Robotics or embedded or hardware programming... what is this called?

Ian Smith smithi at nimnet.asn.au
Fri Jun 22 06:38:43 UTC 2012

In freebsd-questions Digest, Vol 420, Issue 10, Message: 17
On Wed, 20 Jun 2012 19:54:27 -0600 Modulok <modulok at gmail.com> wrote:

 > Sorry for the off-topic post. There are a lot of technically adept people on
 > this list, so I thought I'd try my luck here:

On recent volcanic form, this scarcely measures on the OT scale :)

 > I want to get started programming for hardware. Motors, sensors, actuators, etc.
 > I have a programming background, (python, PHP, C++) but no experience with code
 > that drives hardware. (Motors, sensors, etc.)
 > I *don't* want closed-source "kit robots" where the point is to build the robot
 > the book and thats it. I also don't want ladder logic-based PMC's. Some kind of
 > micro-controller that runs a *nix flavor (or a BSD flavor!) would be great! (If
 > that's what I need.) Basically, I want to do stuff like "if input1() is True
 > then apply_voltage_on_output3()", etc. Build my own traffic light, coffee
 > maker, mars rover, automatic-plant waterer, whatever.

Sure.  Fun and potentially profitable stuff.  Wish I had a spare life ..

 > What do you call this? Embedded programming? Generic hardware programming?
 > Robotics programming? Are there prefabricated, standard embedded boards and
 > hardware specs that play together like PC parts do? In short, I don't even know
 > where to start.

Try browsing from http://lists.freebsd.org/pipermail/freebsd-embedded/ 
to see if that's of interest.  Getting FreeBSD up on various embedded 
platforms is the focus there, but I've seen robotics references too.

I see also, but haven't explored these (both look moderately busy):

 > Even general pointers to books/websites would be great. Once I know what it's
 > called I can google much more effectively ;)

I think once you find a platform you're interested in, you'll google up 
a perhaps bewildering array of support websites and forums, with books 
to suit.  For me it's about the processor instruction set and hardware 
functionality, but I gather you're looking for higher level language 
implementations, so you'll want to sniff and taste a few.

I thought I saw something somewhere (maybe just wishful thinking) about 
FreeBSD on the Arduino, which normally runs a sort of embedded Linux, 
that could be very interesting; the hardware is cheap (kits at Jaycar 
stores in Australia anyway), very modular design, and there are heaps of 
fascinating projects.  I want the quadricopter to follow me around the 
room at parties - at my age I need something really impressive :)

On the FreeBSD side there's advanced work, I gather, on ARM and Atmel 
MEGA 32-bit and MIPS platforms at least.  Personally I consider these 
'big iron' and far prefer writing in macro assembler for little Atmel 
Tiny25s and such, but that's strictly "Look Ma, no OS!" programming.

cheers, Ian

More information about the freebsd-questions mailing list