a healthy criticism of everything


June 10, 2020
by: jovial_cynic
It's been over two years since I've updated this site. Weird.

I've been doing a lot over at the podcast website, which has been taking up a lot of my time. Between managing the audio/visual content, keeping the site interesting, coming up with podcast content, etc., etc., it's a lot of work!

Plus, the day job, the 3d printing/scanning hobby, and I guess now I'm fiddling around w/ game development using Godot? I sure know how to keep myself busy.

Anyhow, I just wanted to post something here, so here it is.

comments [0]

np category: site


May 30, 2018
by: jovial_cynic

It's been a while since I've posted on here about my Datsun 510. I think the last post was in March of 2016, although I've posted quite a few short posts and images on Facebook, Twitter, and Instagram. I'll probably spend some time going through all of those posts and copying the content here, so I have it on my own server.

Speaking of my server, I haven't posted much since my webhost updated their Perl server, so I had to go in and update a bunch of my code to even post!

Anyhow, I've done quite a bit on the 510 lately. Between upgrading all of my brakes (discs all around), fabbed up new intercooler plumbing, and finally dumping the R33 skyline gauge cluster, I decided that the next major project to tackle would be the big electronic project: the Arduino/Raspberry Pi telemetry and custom gauge cluster system. It doesn't sound like much, since I haven't seen many overly complex Arduino or rPi builds, but this has been a pretty significant undertaking.

The basic premise of this project is this:

Use the Arduino to pull data from no less than 16 sources. On a standard Arduino UNO, this is not possible; there are only 6 analog inputs. However, using the magic of multiplexing, there's a way to quickly poll multiple sources over a single analog input; with two 8-channel multiplexers, we get that 16, plus the remaining 4 on the board itself.

Once the data is pulled (either direct 0-5v values or values drawn from a voltage divider circuit), it is neatly organized into a (name:value) pair, and sent as plain-text serial data via USB into the Raspberry Pi. On the rPI, I'm using Perl/Tk to pull in that serial data and display it graphically on a custom instrument cluster as well as saving the data for future analysis.

And then all of that is displayed on a 9x5" LCD screen.

Easy, right? Well, then there's the whole project of packaging it all up. So, that's where the 3d printer comes in. I assembled an ANET-A8 3d printer, learned how to use Blender, and printed out some bits to bring it all together.

The first thing I needed to print was an enclosure for the LCD driver. It came as a PCB board attached to the LCD screen with a power supply line and a ribbon cable; boxing it up meant printing a custom enclosure that I found and modified on

The model online didn't include a lid, so I used Blender to build one.

Fits like a glove.


The next thing I needed to do was to figure out a way to mount the LCD. It's going to sit in the Datsun 510, so I can't just have it sitting on the dash. I printed these corner brackets, and they seem to work just fine. It's not beautiful, but it is very functional.

Again, using blender to design it. I've used the bracket in several of my 3d prints, as it's perfect for small screws.

Fits the LCD screen. It's a little loose, but maybe I'm compensating for heat distortion?

Test fit.

And screwed down to a piece of plywood.

The next project was to build a custom Arduino. Yes, you read that correctly. Because I have a need to take things apart and put them back together, I wanted to do one of those custom "minimalist Arduino" projects where I just use the atmega chip, a few resistors, a crystal, and some capacitors, and voila - homemade Arduino.

Here's an UNO. It's the one I used to test all of my code.

And here's the Arduino connected to the two 5041 multiplexers.

Perf board with the chip plugs. Always use these things; soldering down (and then trying to remove) a chip sucks if you have to re-orient later.

Here is my minimalist Arduino board, together with the two multiplexers and a USB interface board.

In case you're nerdy, here's the multiplexer pintout.

And here's the Arduino atmega chip pinout.

With 16 inputs, I didn't want a bunch of loose wires everywhere, so I decided to use some JST clips to organize my wiring. I couldn't find any 16-terminal JST plugs, so figured having 4 sets of 4 would work just fine.

This is a 4-wire JST clip set.

Not satisfied with having the clips dangling about, I did some test printing and built a holster for the clips.

Perfect fit! However, this holster was just a proof-of-concept. I wanted to make sure they would fit properly so I can build an Arduino housing model that would incorporate the design.

And here's a shot of the prototype of the Arduino housing. You can see the brackets that I've reused from the LCD clips, as well as the JST holster.

And the arduino+multiplexer perf board fits perfectly.

And here's a tall lid for the enclosure.

At the time of this writing, I'm still trying to figure out how to pull it all together neatly. Right now, I've just thrown it all onto a piece of plywood. It works, but this is not likely the final product.

On the left is the Raspberry Pi, connected by HDMI to the LCD driver housing in the center. On the right is another project - it's going to be the power supply for the whole thing. The LCD screen requires a 12v power supply - no problem. The Datsun 510, like most cars, has a 12v battery. I'll need to include a voltage regulator circuit to address voltage spikes and reversals, since that'll destroy my electronics. The Arduino and the rPi, on the other hand, only need 5 volts, so I have a switching converter to create a 5v power supply. This is particularly useful because several of my sensors need a 5v source as well: the MAP sensor (boost sensor), for example. The Arduino also accepts 0 to 5 volt inputs, so building voltage divider circuits from here is also important.

Here, I have the Arduino hooked up and ready to go.

The Raspberry Pi is loading...

And we're in X-Windows on the Raspberry Pi.

And here's the Arduino IDE serial monitor, and it's correctly reading the values from the rPi and multiplexers. There's no sensor data at the moment, so all the inputs read high. They would read low if they were grounded, and they would read correctly if they were connected to sensors properly.

And lastly, here's the custom gauge cluster I coded. The tachometer is from an image of a Nissan Skyline tach; the Fuel Level, Oil Pressure, and Water Temp gauges were just cobbled together from some generic images online. I drew up the Boost gauge, and it may change to fit the scheme better. Once I have some data coming in from my accelerometer, I'll have the "g-force meter" working properly as well. This is all done within Perl/Tk.

Stay tuned. More to come.

comments [0]

np category: 510


September 23, 2017
by: jovial_cynic
The next adventure looks like it's going to take place on this 1972 40' Tollycraft...

We picked up this boat, and instead of jumping right in headfirst like we did on the 1959 Matthews, we had this boat hauled out and surveyed, bottom-painted, and made certain that we liked the layout. We wanted to make sure that we got a boat that we could keep and be happy cruising and sleeping on.

comments [0]

np category: boating


September 23, 2017
by: jovial_cynic
This weekend, my wife and I had the most amazing adventure. Technically, it started two weeks ago,when we made the incredibly crazy decision to buy a boat. And not just any boat. A 1959 42-foot wood trawler. For just $4,900.

You know what they say about buying a boat, right? The less the purchase price, the more the overall cost of the boat. I felt like challenging the odds. I decided to buy the boat based on the seller's word that the two diesel engines ran just fine, and that it wasn't actively leaking, and that the boat had been to Alaska and back. I bought it before even getting fresh batteries in the boat to start it... because, hey - $4,900 boat!

After spending a day with my family cleaning the previous owner's decades-worth of accumulation, paying a diesel mechanic to give the engines a quick view, and spending some money to replace a raw-water pump, we were in luck: the engines were in great shape. They fired right up, and were easy to control. After spending some time draining the bilge (the existing bilge pumps were toast, we hooked up a household sump pump to address any water intrusion), we decided to brave the trip from Bremerton to Olympia. At an average of 6 knots, this was going to be a long trip.

And... we made it! 8.5 hours this Saturday, we pulled the boat out of the previous owner's boathouse, took it to the nearby fueling station, and then ventured out into Puget Sound. We had to learn a few things along the way - like how to make sure the engines were synced up properly (the stock tachometers weren't hooked up), how to feather the transmissions to get the boat to turn on a dime, making parking much easier, and how to fight the wind and current near the Tacoma Narrows Bridges.

Along the way, we saw 14 harbor seals and a manta ray playing on the surface. We also got to see Seattle and Mt. Rainier from the water in a way we'd never seen before. We got to go *under* the Narrows Bridges! And we took turns piloting the vessel. In all, this was one of the most romantic weekend we've ever had.

And we also both decided that, after this grand adventure on this old wood boat, we are definitely boat people. Big boat people. But... not necessarily this boat. Old wood boats need a lot of maintenance, and this one is no exception. It also doesn't have the layout that's conducive to family life. We do have 3 kids, after all, and having an open "family room" style layout is important to us. So we listed the boat for sale for about the same price I paid (plus the cost of the new batteries I put in) as soon as we landed in Olympia, and have already taken a deposit. I'm a little sad to see it go, but I'm glad we got to learn quite a bit about boating in a fun, high-stakes kind of way.

This concludes the adventure on this particular boat. But it is just the beginning of the boating adventures that the Culley family will enjoy. Thanks for reading!

comments [0]

np category: boating


June 08, 2017
by: jovial_cynic

This was a request for a knight. Or rather, somebody dressed up for an SCA boffing match.

comments [0]

np category: welding


June 07, 2017
by: jovial_cynic

With the release of the new Wonder Woman movie, I figured this would be an appropriate figurine to make.

comments [0]

np category: welding


June 05, 2017
by: jovial_cynic
Last week, a buddy of mine asked me if I could throw together an arbor by the weekend, in time for a video shoot for Penny Palabras. Having never made one before, I told him I could absolutely get it done.

It turns out that garden arbors aren't terribly complicated. It's just the lattice that makes it seem difficult, but you can get a 2'x8' sheet of cedar lattice for about $13 at Home Depot. Cut it to length and sandwich it between a few 2x4 studs and you're good to go.

Most of the cutting was done with the miter saw and the circular saw. However, I didn't have an easy way to cut out the spots where the 2x6 horizontal pieces would go, so I did it the old fashioned way: hammer and chisel. It turned out much easier than I thought it would, and the pieces went in quite flush.

Here's a close-up shot where the 2x4s and the 2x6s come together. Without much work, it already looks pretty amazing.

To create an extra dimension to the wood, I used a router bit that I picked up for a couple of bucks at a garage sale. It's nothing fancy, but it adds quite a bit to the wood.

This is before adding a cedar-colored oil coat to the arbor. It's pretty slick how quickly this thing went up.

And here is the finished product, with cedar-colored oil, and a few extra slats on top. I sent it off to the location where it'll be used in the videos.

comments [0]

np category: DIY