Final project

A remote-controlled boat

WIP

Boat construction

Choosing the boat

Choosing the boat was the hard part, and probably the longest one. There are a lot of boats I find really graceful and that I would happily have built, and I wanted to pick the right one.

What settled it was sailing a catboat for the first time, this weekend (October 4, 2026). I loved the way it slid on the water, how elegant it is, and how smooth it felt to sail. It also felt like the logical choice: the catboats I sailed belong to the MIT Sailing Pavilion, and they were built at a boat yard in South Orleans, Massachusetts.

Bow view of a white MIT Sailing Pavilion catboat moored at the dock on the Charles River, with its single mast at the very front and the Boston skyline behind
One of the Pavilion's catboats, from the front. The mast sits right at the bow.
Stern view of the catboat Lil Bit at the dock, showing the wide open cockpit, the wooden tiller and the rudder hanging off the transom
Lil Bit, from the back: wide cockpit, wooden tiller and a big rudder.

Hull

So I got in touch with the MIT Sailing Pavilion, and they let me go through their archives to look for plans or a contact name. I did not find the exact plans I wanted, but I did find the boat yard: Arey's Pond Boat Yard. I have contacted them.

Arey's Pond Boat Yard leaflet from the Pavilion archives, with the yard's sail logo, 'Est. 1954, Cape Cod', and a photo of three catboats sailing
The Arey's Pond Boat Yard leaflet I found in the Pavilion's archives.

Once they get back to me, the plan is to draw the hull in Fusion and print it in several parts, splitting it in the slicer. Then I will glue all the parts together and use composite on top to make it waterproof.

Update: I still have not heard back from Arey's Pond. Rather than wait forever, I decided to get started and take the measurements of the boat myself.

Keel

I want to cast the centerboard in metal. It needs to be heavy enough to balance the force of the wind on the sail, but not so heavy that it slows the boat down too much.

A bar of casting metal stamped ROTOMETALS.COM, held in Victor's hand
The metal I want to melt down for the centerboard.

I still need to check with Anthony exactly which metal this is.

I also want to cast it around a screw, so that the screw sticks out of the centerboard and I can use it to attach it to the boat.

A blue silicone mold held in Victor's hand, with a black screw set into the cavity and sticking out of the top
The idea: a mold with the screw already in place, so the metal sets around it.

Mast and sprit

Two carbon fiber rods: one for the mast and one for the sprit.

Two black carbon fiber rods, 420 mm long and 10 mm in diameter, from a product listing
Carbon fiber rods, 420 mm long and 10 mm in diameter (product photo).

Holder

A boat does not stand up on its own on a table: with its centerboard it would rest on the keel and tip over, and without it the hull is rounded, so it just rolls onto its side. I will need somewhere to put it while I work on it. So I built a holder: a cardboard cradle, with two upright supports whose top edge is curved to follow the shape of the hull, slotted into a flat base.

I drew it in Fusion, with a sketch of each piece and an extrusion to the thickness of the cardboard. Then I tried the laser cutter. It barely cut: the lines are there, but they did not go through the cardboard.

View through the lid of an Epilog laser cutter: a sheet of cardboard taped to the bed, with the outlines of two cradle pieces with curved tops engraved on it but not cut through
In the laser cutter. The two curved supports are drawn on the cardboard, but not cut out.

So I went back to the old method: the cutter. The laser lines turned out to be very useful as a guide, so I followed them by hand.

A yellow utility knife lying on the laser-engraved cardboard sheet: the rectangular base with two slots on each side, and next to it the outline of one curved support
Finishing the job with a cutter. The base on the left has the slots for the two supports.

Once all the pieces were out, I slid the supports into the base and, for solidity, glued everything together with a glue gun.

A blue glue gun pointing at the joint between the cardboard base and one of the upright supports, with beads of hot glue along the bottom edge of the support
Hot glue along the joints, so the supports don't wobble.
The finished cardboard holder on a workbench: a flat rectangular base with two upright supports facing each other, each with a curved top edge to cradle the hull
The finished holder, waiting for a boat.

Rigging

WIP

Onboard electronics

I will use two of these servos: one to steer the rudder and one to trim the sail. The MIT Sailing Pavilion has already allowed me to use a bit of their very thin line for it.

A black Miuzei 996 all-metal servo with a black horn on top and its three-wire cable, held in a hand
A Miuzei 996 all-metal servo.

The main board

The brain of the boat is a small circuit board that I designed in week 5 and made in week 6. Those two weeks were really the start of the electronics of this project, so here is the short version. The week pages have all the details and all the mistakes.

The plan. Before touching any software, I drew in my notebook who talks to whom: a remote (or my phone) talks wirelessly to a microcontroller, which drives two servos, one for the rudder and one for the sail, and a battery pack feeds everything.

Notebook page titled Final Project in pencil: a block diagram with a remote control or phone pointing to a box marked PCB, Xiao ESP32-C3, brain plus wireless, which points to a rudder servo and a sail winch servo, with a battery package feeding all three; below it a parts list and a rough board sketch
The initial plan, on paper.

The parts. The microcontroller is a Seeed XIAO ESP32-C3, because it has Wi-Fi and Bluetooth built in, and a remote-controlled boat with no way of being remotely controlled is just a boat. The servos plug into the board through 3-pin headers, and the battery through a 2-pin one. On the board there is also a Schottky diode, a capacitor, and a status LED with its 1 kΩ resistor.

The design. I drew the schematic and the board in KiCad. The hard part was routing everything on a single layer of copper without tracks crossing or running under the bare header pins. It took several attempts, and two more redesigns in week 6: one to bring the tracks into the headers from behind, and one after Qilmeg pointed out that servo plugs have a fixed wire order (signal, +, −), which my sail header did not respect.

KiCad PCB editor showing the final layout: the XIAO at the top left, the LED and resistor at the top right, the battery header on the right edge, and the two servo headers along the bottom edge, both wired signal, VBAT, GND
The final layout in KiCad, the version that got milled.
The final board in 3D, the version that got milled and soldered. Drag to rotate, scroll to zoom.

Making it. I milled the board in the lab. The tracks came out well, but the bit for the outline broke, so I finished cutting it out with a cutter and sanded the edges. Then came the soldering, which was slower than I expected: the parts are tiny, I first fought with cold joints until I changed solder wire, I could not tell which way round the LED went, and I tore off a bit of copper on the way, which I repaired by soldering a piece of wire in its place.

The fully soldered board on the bench, with the XIAO, LED, resistor, diode, capacitor and all three right-angle headers in place, and the Seeed Studio antenna connected to the XIAO
The finished board, with its Wi-Fi antenna.
View from above of a workbench: the finished board with two servo cables plugged into its headers, leading to two black servos
The two servos for the boat, plugged in.

First test. I don't have a battery yet, and the diode stops the USB power from reaching the servos, so for now I could only test the LED. A small program blinks it on D10 and prints a message to the computer.

Arduino IDE with the board XIAO_ESP32C3 selected, showing a sketch that sets D10 as an output, prints Victor's Boat PCB is alive!, then turns the LED on and off every half second
The LED test program in the Arduino IDE.
The finished board plugged in over USB-C with its small white status LED glowing next to the XIAO
And the LED lights up.

Next. Get a battery, and make the servos move. On the ESP32, servos are driven with the ESP32Servo library, so that is the next thing to install.

The Arduino IDE library manager with a search for esp32servo, showing the ESP32Servo library by Kevin Harrington and John K. Bennett, version 3.2.1, with an Install button
The ESP32Servo library in the Arduino library manager.

Sail trimming

WIP

Tiller direction

WIP

Waterproofing

WIP

Remote control

WIP

Extras

The fun part, for later: an oar, little people on board, and whatever else I think of.