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

2012-06-25 Thread Ian Smith
On Fri, 22 Jun 2012 06:47:48 -0600 (MDT), Warren Block wrote:
  On Fri, 22 Jun 2012, Ian Smith wrote:
  
   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 :)
  
  Well, there is devel/arduino.  It's not emdedded Linux, but an IDE for
  writing and downloading code.  The Arduino is a small embedded controller
  based on the Atmel AVR microcontrollers.  They are quite powerful, easy to
  program, and accessible for experimenters.  You can skip the Arduino
  environment if you like, using the same lower-level tools like avr-gcc
  directly.  And the Arduino board can be used as a programmer, downloading
  code to plain AVR chips and avoiding the need for more Arduino boards.  Talk
  about the Arduino on FreeBSD is generally on the freebsd-embedded mailing
  list.

Thanks Warren.  I got the wrong idea that Arduino ran an embedded Linux 
from a friend, a Linux-using Electrical Engineer, but not a programmer. 
I'd also (too) briefly glanced at www.arduino.cc and noted Windows, Mac 
and Linux references, and Linux binaries, but had no idea you had ported 
the GUI.  Could you perhaps try pushing the FreeBSD port upstream to 
Arduino, so people can find out that it exists from there?

I hope to explore further once I get 9.x running; this 8.2-R system 
is chokka, not enough remaining space for a JDK, nor even a JRE :)

  The Microchip PIC microcontrollers compete with the AVR.  There are some
  FreeBSD ports for programming those, but there are many varying chips and the
  hardware needed to program some of them differs.  I don't know if there is
  anything directly comparable to the Arduino IDE.  ARM processors have become
  so cheap that they are starting to compete in this arena also.

I looked at PICs ages ago, but just wasn't enticed by their instruction 
set; as an old S/3[67]0 bod I've always fallen for the more orthogonal 
processors like the Signetics 2650 (hands up who's heard of that!), 
680[59]/68K and more lately AVRs, Harvard architecture despite little- 
endianness.  Not sure there's room left in my head for MIPS or ARM ..

   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.
  
  Another option: the freebsd-wireless list has had some very interesting
  traffic about the TP-Link TL-WR1043ND, a $50 MIPS-based wireless router with
  Atheros 802.11n chipset, USB, and gigabit Ethernet which can run FreeBSD
  directly.  Not sure how usable it is at present.

Interesting.  I'm subs'd to wireless@ and embedded@ (previously small@) 
but obviously haven't been paying enough attention :)  Thanks again.

cheers, Ian
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to freebsd-questions-unsubscr...@freebsd.org


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

2012-06-25 Thread Warren Block

On Mon, 25 Jun 2012, Ian Smith wrote:


On Fri, 22 Jun 2012 06:47:48 -0600 (MDT), Warren Block wrote:
 On Fri, 22 Jun 2012, Ian Smith wrote:

 Well, there is devel/arduino.  It's not emdedded Linux, but an IDE for
 writing and downloading code.  The Arduino is a small embedded controller
 based on the Atmel AVR microcontrollers.  They are quite powerful, easy to
 program, and accessible for experimenters.  You can skip the Arduino
 environment if you like, using the same lower-level tools like avr-gcc
 directly.  And the Arduino board can be used as a programmer, downloading
 code to plain AVR chips and avoiding the need for more Arduino boards.  Talk
 about the Arduino on FreeBSD is generally on the freebsd-embedded mailing
 list.

Thanks Warren.  I got the wrong idea that Arduino ran an embedded Linux
from a friend, a Linux-using Electrical Engineer, but not a programmer.
I'd also (too) briefly glanced at www.arduino.cc and noted Windows, Mac
and Linux references, and Linux binaries, but had no idea you had ported
the GUI.  Could you perhaps try pushing the FreeBSD port upstream to
Arduino, so people can find out that it exists from there?


There was an updated entry mentioning the port in the Playground, which 
now seems to have reverted back to the old not-yet-working procedure for 
FreeBSD 6.1.  And I see that 1.0.1 is out, so now the port needs to be 
updated.  There doesn't appear to be a way for me to edit that.  I can 
send mail to the site about mentioning the FreeBSD port on the downloads 
page.  Or you can, if you like.


Something I forgot to mention earlier is that it may now be possible to 
buy Arduinos or compatibles at Radio Shack stores in the US.

___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to freebsd-questions-unsubscr...@freebsd.org


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

2012-06-22 Thread Ian Smith
In freebsd-questions Digest, Vol 420, Issue 10, Message: 17
On Wed, 20 Jun 2012 19:54:27 -0600 Modulok modu...@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):
 http://lists.freebsd.org/pipermail/freebsd-arm/
 http://lists.freebsd.org/pipermail/freebsd-mips/

  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
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to freebsd-questions-unsubscr...@freebsd.org


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

2012-06-22 Thread Warren Block

On Fri, 22 Jun 2012, Ian Smith wrote:


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 :)


Well, there is devel/arduino.  It's not emdedded Linux, but an IDE for 
writing and downloading code.  The Arduino is a small embedded 
controller based on the Atmel AVR microcontrollers.  They are quite 
powerful, easy to program, and accessible for experimenters.  You can 
skip the Arduino environment if you like, using the same lower-level 
tools like avr-gcc directly.  And the Arduino board can be used as a 
programmer, downloading code to plain AVR chips and avoiding the need 
for more Arduino boards.  Talk about the Arduino on FreeBSD is generally 
on the freebsd-embedded mailing list.


The Microchip PIC microcontrollers compete with the AVR.  There are some 
FreeBSD ports for programming those, but there are many varying chips 
and the hardware needed to program some of them differs.  I don't know 
if there is anything directly comparable to the Arduino IDE.  ARM 
processors have become so cheap that they are starting to compete in 
this arena also.



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.


Another option: the freebsd-wireless list has had some very interesting 
traffic about the TP-Link TL-WR1043ND, a $50 MIPS-based wireless router 
with Atheros 802.11n chipset, USB, and gigabit Ethernet which can run 
FreeBSD directly.  Not sure how usable it is at present.

___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to freebsd-questions-unsubscr...@freebsd.org


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

2012-06-21 Thread Wojciech Puchar

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.)


add -- to your language list so first 2 would disappear and third will 
become C.



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


Why do you want something like microcontroller to run any OS?

What do you call this? Embedded programming? Generic hardware programming?


running unix on microcontroller-style hardware is what i call nonsense.

Writing your program that runs from first executed instruction is what i 
call normal programming of such devices.


The proper way is to

1) buy a microcontrooler chip, make your hardware using it, possibly buy 
already made boards. microcontrollers are 1$, some more capable 32-bit 
ones (ARM compatible usually, some are MIPS) for 2-3$.


2) throw away all included libraries because they are mostly mess.
prepare something that can be used as crt0.s
Better write it yourself in assembly. shouldn't be larger than 5 
instructions anyway, a bit more if ARM interrupt vectors are needed to be 
filled.


Some assembly knowledge is very useful, in spite of writing most in C.

3) read documentation. All embedded devices (like A/D converters, PWM 
generators etc.) are described. With 32-bit micros start from memory MAP 
chapter and then device description. You will just find out at what 
address your peripheral is accessible.


4) lets say for example that 32 GPIO pins are accessible at address 
0x40001000 for setting ports, 0x40002000 for resetting ports, 0x40003000 
for reading out value, and 0x40004000 for setting direction 
(input/output).


#define GPIO0_SET ((int*)0x40001000)
#define GPIO0_RESET ((int*)0x40002000)
#define GPIO0_READ ((int*)0x40003000)
#define GPIO0_DIR ((int*)0x40004000)


5) use it in your program.

*GPIO0_DIR=0x; //sets all pins to output
*GPIO0_SET=0x; //sets every other pin to 1
*GPIO0_RESET=0x; //set the rest to 0



if you have questions send it privately. microcontrollers are wrong place 
for unix system and it's overcomplexity relatively to the task.


___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to freebsd-questions-unsubscr...@freebsd.org


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

2012-06-21 Thread David Collins
I have one of these

http://www.nerdkits.com/

They pack everything you need in and a few examples, quite neat but
you need to do some electronics

On 21/06/2012, Wojciech Puchar woj...@wojtek.tensor.gdynia.pl wrote:
 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.)

 add -- to your language list so first 2 would disappear and third will
 become C.

 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

 Why do you want something like microcontroller to run any OS?
 What do you call this? Embedded programming? Generic hardware
 programming?

 running unix on microcontroller-style hardware is what i call nonsense.

 Writing your program that runs from first executed instruction is what i
 call normal programming of such devices.

 The proper way is to

 1) buy a microcontrooler chip, make your hardware using it, possibly buy
 already made boards. microcontrollers are 1$, some more capable 32-bit
 ones (ARM compatible usually, some are MIPS) for 2-3$.

 2) throw away all included libraries because they are mostly mess.
 prepare something that can be used as crt0.s
 Better write it yourself in assembly. shouldn't be larger than 5
 instructions anyway, a bit more if ARM interrupt vectors are needed to be
 filled.

 Some assembly knowledge is very useful, in spite of writing most in C.

 3) read documentation. All embedded devices (like A/D converters, PWM
 generators etc.) are described. With 32-bit micros start from memory MAP
 chapter and then device description. You will just find out at what
 address your peripheral is accessible.

 4) lets say for example that 32 GPIO pins are accessible at address
 0x40001000 for setting ports, 0x40002000 for resetting ports, 0x40003000
 for reading out value, and 0x40004000 for setting direction
 (input/output).

 #define GPIO0_SET ((int*)0x40001000)
 #define GPIO0_RESET ((int*)0x40002000)
 #define GPIO0_READ ((int*)0x40003000)
 #define GPIO0_DIR ((int*)0x40004000)


 5) use it in your program.

 *GPIO0_DIR=0x; //sets all pins to output
 *GPIO0_SET=0x; //sets every other pin to 1
 *GPIO0_RESET=0x; //set the rest to 0



 if you have questions send it privately. microcontrollers are wrong place
 for unix system and it's overcomplexity relatively to the task.

 ___
 freebsd-questions@freebsd.org mailing list
 http://lists.freebsd.org/mailman/listinfo/freebsd-questions
 To unsubscribe, send any mail to
 freebsd-questions-unsubscr...@freebsd.org

___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to freebsd-questions-unsubscr...@freebsd.org


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

2012-06-20 Thread Modulok
List,

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:

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.

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.

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

Thanks!
-Modulok-
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to freebsd-questions-unsubscr...@freebsd.org


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

2012-06-20 Thread Edward M

On 06/20/2012 06:54 PM, Modulok wrote:

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


Mars rover is robotic/embedded.
I am using this site myself.

 http://www.societyofrobots.com/

___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to freebsd-questions-unsubscr...@freebsd.org


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

2012-06-20 Thread Bernt Hansson

2012-06-21 03:54, Modulok skrev:

List,

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:

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.

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.

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

Thanks!
-Modulok-


That ballpark is quite large. I'll give you some links

http://www.linuxcnc.org/
http://arduino.cc/
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to freebsd-questions-unsubscr...@freebsd.org