SAE AS-4C, also known to the robotics community as JAUS (Joint Architecture for Unmanned Systems) version 4 has been out for a few years now and is making inroads in the robotics community. Essentially it is a set of standards that define how components of robotic systems talk to each other. One of the goals and why the DoD is pushing it is to increase the likelihood that many separate entities can contribute working components and improve the capabilities of existing systems.
The standard beganin the government some years ago but has moved to the Society of Automotive Engineers. One of the big changes since moving to SAE is the use of XML files to capture aspects of the standards so that they are explicitly defined and to allow automated code generation tools to build and test the software that implements them. One such tool is the Jaus Tool Set. Read More
Most c++ developers who work with GNU/Linux are familiar with Make for building applications. I first created my own make files while using avr-gcc and for simple projects that don’t have lots of files or subprojects this is fine. But as a project grows or you want to split a large project into sub-projects, Make be difficult to work with on its own. A crop of tools such as Autotools, CMake, and QMake are out there just to make the creation of Makefiles easier. SCons goes a different route of pulling away from make and using Python as it’s backbone.
When I get a new development board I like to make sure I can set up the development environment on my laptop which includes GCC and the rest of the toolchain for cross-compiling. Cross compiling in this case is compiling a C or C++ program on your pc or laptop that will run on another architecture such as AVR (Arduino) or BeagleBone (Arm). The method we’ll use for this will generate both the tool chain and all the software that runs on the board. You can always download the pre-built images, but this will build them from scratch to give us more flexibility to customize the system. This post will show you how to build this image and load it on to the BeagleBone. Using gcc to build C++ programs will follow. Read More
Tags: Beagle Bone
Tom Nardi over at The Power Base put together a guide for building OpenWRT. OpenWRT is a great linux distro that became popular with router boards. Most people use it as an alternative to the stock firmware that comes with a Linksys or similar home router to add features otherwise not available for a system in that price range. Read More
The BeagleBone has a row of four LEDs next to the ethernet connector that can be controlled easily. On a board like the Arduino, you’re writing to a memory location mapped to an output pin. For devices like the BeagleBone that run linux, it’s more like writing to a virtual file and letting the kernel do the rest. What’s nice about this setup is that any programming language that can write to files can control your LEDS
Since the BeagleBone comes with Python, controlling the LEDs with a Python script is the easiest way to demo the LEDs without the need to compile or cross-compile. Read More
Tags: Beagle Bone
The BeagleBone is the latest offering from the BeagleBoard people offering a similar architecture (less the DVI and USB hub). They cut the size down and changed the form factor similar to the Arduino (and an Altoid box) to offer stacking shields, or “capes” as they wish to call them. The storage is contained in a tiny MicroSD card which makes programming easier than flashing NAND and bricking the board while you find a JTAG less likely.
The System Reference Manual is at http://beagleboard.org/static/BONESRM_latest.pdf Read More
Tags: Beagle Bone