Since the last update, we've gotten in the water one more time (in late July) and we've made some substantial design changes. First off, here's a video of my talk at Toorcamp that Alex was kind enough to put together:
During our July launch, we discovered a pretty serious limitation in our comms -- we lose connection on the 900 MHz at anything over about a quarter of a mile. You can really see it in our composite map from our October, June, and July launches:
The placemark farther from the shore, at the top of the ramp, is our shore station for the October and June launches, while the one out on the point was our ground station in July. If you measure on the map, you will see we maxed out about a quarter mile from the shore station, which is a massive bummer. OTOH, we were able to bring the boat back to the dock under its own power in July, which was a nice change.
One of our big takeaways from this was that our system needed some major overhauling, and we decided to redo it from the ground up (again). Among other things, we decided to move the REST interface off the boat and on to a control server. This allows us to more easily use cellphone and satellite communications, since most of those systems are designed to exclude inbound communications. The biggest changes are as follows:
- Remove the Arduino and go to a Beaglebone-only system. The BBB has the I/O capability to carry the whole load and it removes a major complication in the software. The difference in power consumption is not that high at the stage we are operating at today.
- Add a cellphone module. We are going to be using an Adafruit Fona in the longer term, but in the shorter term, one of our supporters has promised us the use of a portable hotspot.
- Replace the Wifi dongle with a Ubiquiti Nanostation. I already have the NanoStation, and this should end our odd dongle problems and provide a network access point for the onboard network. To this end, the new motherboard includes a boost converter to provide 15VDC PoE to the Nanostation.
- Reconfigure the enable/stop function to be driven by a latching relay in a new power distribution box. This arrangement allows us to make the stop button enact a hard cut of all motor and actuator power.
- Power distribution box with per-system power switches
- Beaglebone reset switch and console accessible from outside the drybox.
- New drybox and connectors. We'll be using SP-13s, since they are about the least expensive waterproof connectors available on eBay.
- Add an RC input to give us finer manual control. We bought a Turnigy 9XR with an FrSky XJT/X8R radio combo. Among the nice features of this radio, it has a serial output called S.BUS, an RSSI output, and telemetry back to the shore unit. We chose this one because the 9XR's firmware is open source and it has an embarrassment of buttons, switches and knobs.
- Mast-mounted omnidirectional status lights. This also neatly solves our running lights issue for longer range operations.
- The control server will be in the cloud, and the boat will contact it for commands.
- Use of KML as our internal representation for waypoints. This makes designing the interface super easy, since we can use a Google Maps plugin directly. The resulting files can be readily managed with github.
Our top priority right now is getting the new hardware squared away, along with its software. We're also going to try to get the next rev of the sails done before mid-September. This is especially important because I realized I made a serious math error that overestimated the necessary power of the tail by a factor of four or five. Redoing it means I can get the tail right this time.
I will also be at XOXO in a couple of weeks and at the Open Source Hardware Summit at the beginning of October -- if you are going to be there, please come say hi. Hackerboat will also have a booth at Seattle Mini MakerFaire on Sep 17-18. We'll definitely be outside, although not quite sure of where yet.