The GPS Receiver

by Web FishJan 4, 2013 @ 10:47am

Provides current position (and optionally direction/speed). 

  • Current selection: Adafruit Ultimate GPS Breakout board
  • Status: Finalized

  • Criteria: Reliable satellite signal acquisition when installed inboard, standard I/O, small physical footprint, cost 
  • Finalists: Adafruit Ultimate GPS v.3, Sparkfun GPS LS20031
  • Main decision factors: External antenna connector (makes board mounting position and packaging less relevant), standard I/O on two GPIO pins, sensitivity

 (click image for larger view) 

Spec highlights:

  • -165 dBm sensitivity, 10 Hz updates, 66 channels
  • 5V friendly design and only 20mA current draw
  • PPS output on fix
  • Internal patch antenna + u.FL connector for external active antenna



  • Will not know for certain if external antenna is needed until the navionics bay design and mounting is finalized
  • As an added bonus module provides current time-stamp for syncing Netduino internal clock after reboot (no battery back-up for the clock on the Netduino board - anyone remembering early Apple II days?)


The Comm Uplink

by Web FishJan 1, 2013 @ 02:01pm

The only link between PilotFish and the rest of the (civilized) world. Provides a one-way channel for reporting position, status and other select telemetry.  

  • Current selection: Iridium 9602-I & SBD service
  • Status: Finalized

  • Criteria: Reliable coverage across the passage area, overall cost, standard I/O, manage-able power footprint, easy programmability/debugging, small physical footprint 
  • Finalists: Iridium 9602, Iridium 9603, SPOT Satellite Personal Tracker
  • Main decision factors: Universal coverage, cost (compared with the other Iridium terminals)

 (click image for larger view) 

Spec summary:

  • Frequency Range 1616 MHz to 1626.5 MHz
  • Multiplexing Method TDMA/FDMA
  • Idle current (peak) 195mA
  • Transmit Current (peak) 1.5A
  • Receive Current (peak) 195mA
  • SBD message transfer – average current 190mA
  • SBD message transfer – average power 1.0W



  • Iridium service cost is magnitudes higher than all systems based on the Low Earth Orbit satellite constellation. Unfortunately, LEO solutions do not have sufficient coverage over the North Pacific. On the flip-side, using a full-featured data modem allows us to customize the contents of the data message and provide additional telemetry to mission control;
  • Power draw upon transmission can be in the 2A+ - need to ensure navionics power pack can provide sufficient surge power (with or without solar boost)
  • Still need to determine the right antenna and antenna positioning


The Central Processor

by Web FishJan 1, 2013 @ 12:31pm

The heart of PilotFish navionics package. The board runs all decision-making software, reading input data from all sensors (navigation and others), controlling propulsion and directional control, feeding up-link telemetry data and ensuring data persistence for post-mission download. 

  • Current selection: Netduino Plus 2
  • Status: Finalized

  • Criteria: Low power footprint, as many I/O channels as possible, standard I/O, available off-the-shelf add-ons, standard storage, easy programmability/debugging, small physical footprint 
  • Finalists: Netduino Plus 2, Arduino Mega 2560
  • Main decision factors: 22 I/O pins with dynamic GPIO/Analog/UART/I2C allocation, Arduino shield compatible, sufficient code storage area, .NET Micro Framework, on-board SD card support

 (click image for larger view) 

Spec summary:

  • STMicro 32-bit microcontroller
  • Speed: 168MHz, Cortex-M4
  • Code Storage: 384 KB
  • RAM: 100+ KB
  • 22 GPIO pins
  • Up to 4 UARTS
  • I2C channel
  • micro sd (up to 2 GB)
  • input: 7.5 - 9.0 VDC or USB powered
  • output: 5 VDC and 3.3 VDC regulated


  • Even though 22 I/O pins look like a lot, in reality we'll need every pin available to communicate with the peripheral devices. Whenever possible, we might need to utilize I2C bus to preserve general I/O pins for "dumber" sensors and devices.   


PilotFish Navionics - Block Diagram

by Web FishJan 1, 2013 @ 10:55am

In a series of articles over the next few weeks we'll cover the various components of the on-board electronics driving the PilotFish vessel. Many components are still in flux, so expect changes as the project develops. As sub-modules and connection paths / interface points get solidified, those will be marked as finalized in future revisions of the diagram.

Here is a quick summary of the navionics sub-systems (click image for full size):



  • Central Processor: The main control unit. Runs the custom software which makes things move (and find their way)
  • Comm uplink: Telemetry uplink (current position, system status and sensor data reporting)
  • GPS receiver: Current position tracking
  • Compass: Current bearing and acceleration;
  • Aux navigation sensors: additional sensors needed for proper orientation and navigation
  • Additional sensors: environmental and other sensors not directly related to navigation;
  • Image acquisition: live video / snapshots of surroundings
  • Motor controller: accepting control input from CPU and converting it to high-power electric current control
  • Propulsion motors: electric drive motors and propellers
  • Rudder control: directional control
  • Propulsion solar panels: high-power solar harvesting, dedicated to powering main drive motors
  • Propulsion battery bank: high-capacity energy storage dedicated to powering main drive motors in the absence of sufficient solar power
  • Aux solar panels: additional solar harvesting capacity dedicated to powering navionics 
  • Navionics battery bank: navionics battery back-up


The Netduino Plus 2 Arrived

by Web FishDec 26, 2012 @ 12:56am


Our Netduino board arrived. We are stoked!


Foamy Fish?

by Web FishDec 17, 2012 @ 12:27am


The hull mold is finally getting there:


After a lot of back-and-forth, the decision was made to go with foam hull core with fiberglass skin. On the hunt for the right self-expanding foam now - trying to find alternatives to Great Stuff.


Where No Other .NET (Micro) Framework Has Gone Before...

by Web FishDec 14, 2012 @ 04:41pm


Until we hear otherwise, we claim this final frontier! (do we really need a reference?)

As of today the central control unit platform has been solidified. We are going with the Netduino Plus 2. This also means that all control software will be written on top of the Microsoft .NET Micro Framework. To the best of our knowledge, PilotFish would be the first autonomous ocean-going vessel based on the .NET MF. How cool is it to be able to compile the first .NET assembly capable of finding its way to Hawaii.

So why Netduino?

  • As usual - why not?
  • Widely available Arduino Shields from various manufacturers - compatible with Arduino Mega Rev 3;
  • Built-in SD Card support - 2GB of data logging without the need for external SD shield;
  • 4 serial ports;
  • I2C support;
  • CPU Performance;

 Oh, and we happen to have a team member who (when he is not building trans-pacific boats) architects and oversees large-scale digital video systems. He happens to like .NET. A lot. 

Mold Resurfacing Still in Progress

by Web FishDec 13, 2012 @ 10:37pm

It's been a slow couple of weeks at PilotFish. Still working on getting the mold in shape. Should be done by the end of next week. Major composites work planned for Christmas break - stay tuned!

RIP Mold Plug

by Web FishNov 28, 2012 @ 07:43pm

So what happens when you mess up your mold release application? Just learned the hard way... Remember that beautiful looking hull model? This is what it looks like tonight:



Fortunately, the mold itself will be salvaged. It will require some extra work sanding, reinforcing and re-polishing the inner surface, but all-in-all it could have been much worse!


The Fiberglass Mold Is Ready!

by Web FishNov 14, 2012 @ 07:52pm

We have a mold! Or at last we think we have one... We might have an issue with the mold release. Or the balsa cover of our plug might be a tad too soft for proper release with wedges. Either way - it will soon become clear.