CNC Relay Board

We’re having a thermal problem in an underwater housing for a pulsed laser system at work. It turns out the problem is that heat isn’t adequately being pulled away from the laser and the TEC eventually goes into thermal runaway. The quick solution is to switch the main laser power off when it’s not being used but there weren’t any relays to switch the power so I knew it was time for a new home-brew relay board.

I have a fairly complete electronics lab at home and one of my coolest toys is my little desktop CNC that I use to make quick turn PCBs. So lets get to it!

We bought some nice Omron G6RL-1 24V relays for the job so I slapped them and other components I had in my parts bin down on a quick schematic. We need to switch three power lines so we duplicate the same schematic 3 times.

Next step is to do a quick layout on a single side because we’re going to use some simple singled-sided copper clad board. We want the board to be fairly small as we don’t have too much spare room in the housing.

You can see in the next two images that I’m using some left over single-sided copper clad from a previous project. We’ll mount the relays and connectors on the unclad side and the SMT components in the bottom side.

I converted the gerber files to G-code using pcb2gcode so we can use EMC2 to mill the board.

Next we mill the board. The pointy bit with the blue depth setter is used to actually mill the isolation tracks that make up the circuit. The pink drill bit (0.037″) with the pink depth setter is used to drill the holes for the connectors. and the end mill bit with the red depth setter in the machine is used to cut the board out of the copper clad.

Here we tin the PCB to make soldering easier and to protect the copper from corroding. I’m using some left over tinning solution that I’ve had for a while. Not the freshest solution but it’ll get the job done.

We then flush and dry the tinned PCB.

Here’s the PCB under the microscope. The isolation tracks aren’t perfect but it’s good enough for my purposes.

Alright, let’s gather the parts…

…and get to soldering!

And here is the finished board! It needs to be cleaned a bit and I didn’t have the remaining connectors at home but it looks good.

Now to test it. Lets clip together some leads and run it from the bench supply.

Works like a charm. Thumbs up!

Trying Video from the WordPress App Again


Nope, doesn’t work at all. YouTube it is.

Original Post

So there’s been an update to the WordPress iPhone app since the last time I tried it. Last time, the video uploading feature didn’t work very well so let’s give it a go now. Here goes a video we took testing a 2D laser scanning system in the Harbor Branch canal.

Hopefully the above video works. Otherwise I have to stick with YouTube.

Old Posts are Back

Woot! I managed to revive all my old posts that were lost when my server died. I had to rework the posts a bit to get the embedded content straightened out but it looks like they’re now all correct. The new site still needs a lot of work to look decent but I’m really happy about getting my old content back.

WordPress Test and National Estuaries Day

Here’s a quick post to test out the new WordPress and give a quick update to the goings on at Harbor Branch

On September 24th, Harbor Branch opened it’s doors to the public to celebrate National Estuaries Day. There were activities for the kids and guided tours around campus. Our engineering group decided to put together a little demo of coral fluorescence for the tour groups passing through the Engineering Test Facility. In just a few short weeks, we built a laser scanning system to measure coral fluorescence at four different wavelengths of light (i.e. colors).


We placed this scanner next to a tank with live coral and scanned it while explaining what fluorescence is and it’s link with coral health.


Here goes a video of the scanning process:

DRONE In The Lake

I purchased some nice serial to Bluetooth adapters from Roving Networks so we can work with the DRONE platform wirelessly.  The nice thing about them is they have their own rechargeable battery built in which makes them really easy to use and setting up two to form a wireless RS-232 cable was as simple as setting a few dip switches.

I put the DRONE out in a small lake we have on campus and drove it around a bit with a joystick to test out how well the platform works.  Here’s some video of the test.

[hana-flv-player video=”/videos/DroneInLake.flv”
description=”Running the Drone in a lake”
autoload=”false” autoplay=”false”
loop=”false” autorewind=”true”
[hana-flv-player video=”/videos/DroneOnALeash.flv”
description=”Running the Drone in the lake on a leash”
autoload=”false” autoplay=”false”
loop=”false” autorewind=”true”

Working with the DRONE

I started working with the DRONE controller software again.  Here’s a picture of the DRONE,

DRONE Vehicle
DRONE Vehicle

Had a bit of an issue determining the IP address of the controller but no worries, Wireshark to the rescue!  I set Wireshark to probe the network looking for DHCP packets and read the IP address out of the DHCP offer.  I’ve been meaning to port my poor mans Zeroconf from Python to C so maybe I’ll take another look at doing that tonight.  Makes having to deal with determining IP addresses much easier and less of a hassle than setting up a real Zeroconf server.

Had another issue with calls to the SPI API causing segmentation faults.  Turns out it was a bug in the kernel on the controller so I updated to a new kernel from the vendor and it’s working fine now.  Tomorrow I plan on throwing this guy in the test tank and running it around a bit.  I might post some video if everything goes well.


Success.  This morning I cut the trace wiring the bipolar/unipolar pin to ground and soldered a jumper to 3.3V.  Everything seem to be working fine now and I’m getting reasonable data to my GUI.