Exterior woodwork

The cetol and varnish on our cap rail had seen better days. Due to a few weekends in a row of exceptionally sunny weather, we decided to tackle this project.

The first step was to strip the old varnish and/or cetol that was previously applied. We didn’t know what it was, but a heat-gun was able to soften it, and a scraper was able to lift it off:


With two people, one person holding the heat gun and another scraping, one side of the cap rail could be stripped in about two hours. Another 30 minutes of sanding, and the rail was clear. You can see that the previous application was done fairly sloppily, as there were drips and bleeds:

A few minutes with the shopvac cleared the side decks:


We use Cetol natural. We truly don’t mind the look, but the ease of application is really why we use it:


But to really make it look nice, you need a couple coats of Cetol clear over the top. You don’t need to sand between coats, and it gives a glossy “wet” look, and continues to protect the wood:



CubieTruck Chartplotter Setup

As I did with the Raspberry Pi, below is a complete set of instructions to set up the CubieTruck as a dedicated OpenCPN chartplotter:


Base Operating System

  • Download the latest Cubian OS image from Cubian.org
  • Write the image to a micro SD card (I used a 32 gig card) I used Win32DiskImager on my Widows machine
  • Insert SD card into the CubieTruck, connect HDMI monitor, Keyboard, and mouse, and boot.
  • Login as cubie/cubie
  • Setup Wifi
    • sudo modprobe bcmdhd
    • edit /etc/modules and add bcmdhd module so that WiFi will be available on reboot
  • apt-get update
  • apt-get upgrade
  • Install cubian-update
    • The deb command was already in /etc/apt/sources.list so that step could be skipped
  • Turn off the screensaver
    • apt-get remove xscreensaver
  • Auto-Login to the system
    • create a new user and grant them sudo access
      • I can’t understand vi (Hey, I’m a Windows guy), so I used nano to update visudo:
        • su root
        • export VISUAL=nano; visudo
    • edit /etc/lightdm/lightdm.conf and add:
      • autologin-user={new user}
      • autologin-user-timeout=0
    • In a terminal run:
      • sudo groupadd autologin
      • sudo gpasswd -a {user} autologin
  • Install Hardware acceleration
    • apt-get install mesa-utils build-essential git cmake libx11-dev
    • install a user version of libGL from source
    • install libGLU from source
    • set the LD_LIBRARY_PATH environment variable to use usr/local/lib
      • edit ~/.bashrc file
        • add export LD_LIBRARY_PATH=/usr/local/lib
    • Verify with glxgears
      • over 100 FPS and a minimum of CPU usage

Setup OpenCPN

  • Build and install OpenCPN
    • $ git clone git://github.com/OpenCPN/OpenCPN.git
    • $ cd OpenCPN/
    • $ mkdir build
    • $ cd build
    • $ cmake ../
    • $ make
    • $ sudo make install
  • Download the appropriate charts
    • For all US waters, it’s very easy to find appropriate charts at NOAA
    • I decided to try ENC vector charts this time. On the Raspberry Pi the rendering was just simply too slow and I used Raster charts.
    • Expand into an appropriate directory. I used /usr/local/include/Charts
    • run opencpn with the -unit_test_1 flag to ingest and process all the charts that were downloaded
  • Restart the gpsd service
    • sudo killall gpsd
    • sudo gpsd -n -D 2 /dev/ttyUSB0
    • Note: cubian auto-starts the gpsd service on a restart
  • Launch OpenCPN
  • Set the charts directory to the directory you expanded your charts into
  • Add a connection for the gpsd service
    • Settings -> Connections -> Add Connection
      • Network
      • GPSD protocol
      • localhost address
      • 2947 port

At this point, in one weekend day, I had a complete chartplotter solution running on a CubieTruck:


CubieTruck Upgrade to CPN Pilot

I love the Raspberry Pi. I really do.

I have three of them, and will probably purchase more. As a movie player (XBMC), or low powered (battery) computer, it really is great. And the price cannot be beat. Also, if you simply want a cheap integrated chartplotter, the Raspberry Pi is by far the most cost-effective platform. It also has the best community support.

However, for the autopilot/chartplotter project, I actually am running into limitations with it’s processing power. For example, when testing AIS functionality, the CPU was pretty much maxed out when running the services as well as OpenCPN — so much so that the entire UI would hang for a few seconds.

After researching the different inexpensive, low-powered, single-board computers, I decided to go with CubieBoard. Specifically the CubieBoard3, aka CubieTruck. It has a DualCore 1Ghz A7 SOC processor, 2Gigs of RAM, 4Gigs of NAND flash memory for an OS as well as micro SD, built in WiFi and Bluetooth, and most importantly a graphical processor that complies with OpenGL ES 2.0/1.1 so the graphics can be offloaded from the CPU. It should be more than capable for my needs in this project, especially since I still consider the performance of the Raspberry Pi to be sufficient.

It does come at a cost — It’s about twice the price of a Raspberry Pi, it consumes about 1.5 times the energy (2 amps at 5v), and is about twice the size physically:

RPI and CT