Re: OT: Robotics or embedded or hardware programming... what is this called?
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?
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?
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?
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?
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?
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?
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?
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-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