Due to other, exciting distractions (which I will mention in a later post), I haven’t had a chance to keep the blog up to date. Still, work progresses on the boat, and that’s the important part. Last month, with the keel now in its new position about 30mm further back along the hull, and sealed into place, it was time to add the electronics board.
Posts Tagged “NanoBSD”
The new ALIX board has arrived. It’s to the left of the picture, sitting on top of a copy of the infamous Lyon’s Notes (which is appropriate). Also, the initial Atmel board with USBtiny programmer cable, serial cable to same development system, and a couple of WRAP boards thrown in for good measure.
It’s running my custom version of NanoBSD quite nicely, and can see the GPS without any difficulty. The GPS unit is a BU-353 unit (the USB version) which is out of the shot. It’s attached to the window, and gazing at the man-made stars. To give a breakdown of what’s in that photograph, the ALIX is on the left. In the USB port is the GPS, the RS-232 cable at the top of the board is communicating with my development machine (running FreeBSD). The red CAT5 cable is connecting the board to the “house network.” The Atheros CM9 radio is a miniPCI card mounted on the underside of the board. It works on 5.8GHz and on 2.4GHz. In this case, I’m using 5.8GHz because (apparently) it has better cross-water characteristics and the band isn’t as crowded. The mini coax cable is at the top-left of the picture, connected to a short, 9dBi antenna. You can also see a 12v cable with barrel plug. At the top-right of the picture is a WRAP board, also developed by PC Engines. It was being used as a testbed for the operating system, but that is no longer needed thanks to the ALIX.
After much tweaking and hacking with configuration files and kernel build options, I finally have a FreeBSD 8.3-RELEASE kernel and install running on a Wrap board. Technically, it’s NanoBSD, which is a scaled-down FreeBSD install, which boots from Compact Flash. The WRAP board is the PC Engines forerunner to the ALIX. When National Semiconductor and AMD stopped making Geode chips, the guys at PC Engines had to stop making their very popular WRAP board. I still have a few of them tucked away, for emergencies such as this.
I’ve been asked recently, about the software platforms used on board Beoga Beag. This seems as good a time as any, to talk about the various layers. As mentioned previously, the lower layer is a custom board, running an ATmega8 Atmel processor. The software (Igor and Otto) is custom-written in C for the boat.
Looking at the system power design, the majority of the circuits will run off a +5 volt rail. Those elements which need a different voltage, such as the main processor board, will derive their own requirements from the main Vcc rail.
There will be at least two Vcc busses on board. Labeled, oddly enough, as Vcc1 and Vcc2. The difference between them is that Vcc1 is always on, at all times, and Vcc2 (through VccN) are selectable by Igor.
The main processor runs off Vcc2, but Igor (and Otto) both run off Vcc1. In situations where voltage levels are critical, Vcc2 will be switched off and the boat will continue on whatever course had previously been set, until either voltage levels are healthy, the specified “wake-up” time has elapsed, or there are critical issues which require Mother to get involved. A critical situation could be something like a dramatic wind shift, or an error such as a mis-reading from a sensor.
The main computer on board Nostromo in the film Alien was called Mother. It seems only right that we should call our main processor by the same name.