Upholstered fireplace

I believe fireplaces aren’t particularly useful. They aren’t efficient at heating a home, they create an ashy mess when used, and they take up a lot of floor and wall space. Perhaps they can be beautiful. With natural gas plumbing, fireplaces let us use an indoor space to recreate gathering around a camp fire. For people without the time or interest in doing a natural gas conversion, please also consider upholstering your fireplace.

Your children and pets may already be interested in your fireplace, exploring and hiding around the rough, sooty surfaces. Upholstering your fireplace transforms it into a comfortable, clean surface and also reduces the thermal leakage through the chimney. Here’s what you need:

  • Tools: saw, drill, heavy duty stapler, fabric scissors
  • 1/8″ birch plywood, cut to the shape of your fireplace
  • 1″ foam padding
  • ~5 yards of fabric
  • 16 buttons and upholstery thread

First cut the plywood to fit, leaving a little extra room for the foam to compression-fit everything together. Then cut the foam to size, wrap with fabric, and staple the fabric in place. Drill holes through the plywood for the button holes and sew in the buttons. Finally, assemble in your fireplace.

Posted in Cats, Home projects | Leave a comment

DIY Christmas arches

If you’ve explored San Jose during December evenings, you’ve probably seen streets with lighted arches. One of the most impressive examples is Cherry Ave between Glen Eyrie Ave and Willow St.

This year I decided to join the club and build+install Christmas arches for myself. For each arch here are the parts I used:

  • 1x 10 ft 3/4″ PVC
  • 1x 10 ft 1/2″ PVC
  • 2x 3/4″ male fitting
  • 2x 3/4″ to 1/2″ reducer
  • 2x 5/8″ rebar, cut to 2.5 ft
  • PVC cement
  • 1x strand of ~150 warm white LED lights

First, cut the 10 ft 3/4″ PVC in half into two 5 ft pieces. Then cement one male fitting on each piece. Cement the 3/4″ to 1/2″ reducers to both ends of the 10 ft 1/2″ PVC pipe. Pound the rebar into the ground where you want to place the arch. Then attach the 3/4″ PVC lengths on either side of the 1/2″ PVC pipe. Thread the combined 20 ft pipe on the rebar stakes and string lights to your liking.

I think that the 5/8″ rebar is overkill, probably 1/2″ rebar would work as well. Also you should use an angle grinder to cut the rebar, not a hacksaw and a bunch of blades like I did. Finally, I decided to run lights along the ground instead of using extension cords between each arch. This effect turned out quite nice and required fewer connections.

Posted in Home projects | Leave a comment

Turn signal Arduino device – update

In the last post, my turn signal device worked great when the car lights were running on battery. However, as soon as I turned the engine on the device was caught in a reboot loop.

I hooked up my Xprotolab micro-oscilloscope, while the 2013 VW Passat engine was on, to examine the stability of the 12V running light. To my surprise, the signal showed >6 V dropouts with <5 ms duration and >1 Hz frequency, which means that the power management in my Arduino device needs some updates. The photo below shows the dropouts with a 10 uF buffer capacitor in the circuit.

While sizing a buffer capacitor for the Arduino device power, I realized that I was using a 5V voltage regulator on VIN which has a voltage spec of 7-12V (Arduino R3). So then I switched to a 9V voltage regulator and added a 1 mF buffer capacitor on the output side. Now we are fully functional!

Posted in Cars, Electronics, Software | Leave a comment

Turn signal Arduino device

After 6 months of driving with a manual pushbutton left turn signal, I decided it was finally time to build a more permanent solution. In the 2013 Volkswagen Passat, the turn signals always have at least a 33% duty cycle of 12 V powering them, giving a dull glow. Then when the brakes are pressed or turning is indicated, the turn signals go to 100% duty cycle.

  1. Add an in-car monitor to observe the lighting behavior while driving
  2. Wire up a quick-connect to easily swap devices
  3. Build and program the “Turn signal Arduino device”

Step 1 was to build and install a lighting monitor module to the car so I could immediately notice any failures with my automotive lighting hacks. The module uses small LED lights to directly show the left turn signal, center brake light, and right turn signal.

Step 2 was to rework the wiring hacks in the car to add a quick-connect junction. My default solution of the manual turn signal would be the “version 0” device and simply consist of two shorted wires.

Step 3 is the Arduino device. For this design I’m using a single n-channel MOSFET as a “low side” switch between the load and ground (controlled by pin 6). Then I’m tracking the brake signal with a voltage divider on analog input A0, and tracking the pushbutton grounding with a pullup to +5V on analog input A1. The next step is to write a simple program to control the logic and heavy use of the “millis()” built-in function. Finally we package up everything into a box and plug it in!

Posted in Cars, Electronics, Software | 1 Comment

Updated busking kit, part 2

In this ongoing series, I’m documenting the changes to my busking drumkit. It’s been about 4 years since the last update, and some important things have changed. Let’s start with a photo:

The kit includes an 18″ pancake bass drum, a 14″ steel snare, 14″ New Beat hats, 14″ Paiste fast crash, and a 16″ Byzance dark crash.

Since the last update, I decided that the trash can bass drum idea was strictly worse than using an actual drum. You get much better resonance with a clean bearing edge and a round, sturdy shell. Pancake bass drums can get a great sound, as long as you are careful to deliver clean strikes with the beater. I also decided that mini-snares (such as the 10″ M80) are not for me. You need a full-sized snare if you want clear stick shots, full-sounding shuffles and commanding rim shots.

Moving to cymbals, the 16″ Byzance dark is still here. Given the constraint of cymbals that fit inside of an 18″ bass drum, the 16″ Byzance is dry enough to ride on and comes with expressive crash and bell sounds. The goofy splash hats from last time also had to go, because the sizzles and barks from full-sized hats sound much better. I’m also keeping the 14″ fast crash from last time, except now it has it’s own mount which means it’s bright, clear bell is now accessible.

Final thoughts on portability – the hardware, throne and snare drum all fit in the luggage, and the bass drum doubles as a cymbal case. It’s pretty easy to sneak in and out with this setup, and always in one trip.

See you next time!

Posted in Music | Leave a comment

Turn signal triage

A few weeks ago, my 2013 Volkswagen Passat started exhibiting strange behavior: intermittent failure of the left turn signal, and random trunk openings while driving. After a few days of using a rope to pull the trunk shut from the driver seat, I brought the car to my usual auto repair shop. Despite their best efforts, the repair crew failed to find the root cause.

I started my own investigation and discovered that the wire harness had failed at the trunk hinge, with wire insulation broken open and intermittently shorting to other wires. After repairing the wire damage, I noticed that the left turn signal was no longer receiving voltage. My best guess was that the J519 Electrical Power Supply Control Unit was damaged by all the shorting and no longer delivering voltage to the left turn signal.

Thinking through my options, I noticed that the daylight running lights had a 12V signal that was always powered when the car was powered. The immediate workaround then was to add a pushbutton to the steering column and use that to short the daylight running lights to the turn signal.

Regaining a manual left turn signal solves the urgent safety issue, but it’s a flawed solution. First, the VW uses the same lights for braking and signaling, so whenever I’m braking it’s obvious that the lighting system is broken. Second, it’s distracting to pulse a reasonable turn signal while also driving. Third, I would have no idea if the wiring hack stopped working because there is no feedback to the driver.

The best solution here has to be Arduino! We’ve got 12V to power us, we have a pushbutton to indicate turning intent, and we can pull signal from the center brake light to detect braking. Stay tuned…

Posted in Cars, Electronics | 1 Comment

Using GANs for PV production data

This year I’m excited to present our work on generative adversarial networks for synthesizing solar resource and PV production data. Come check out our modeling and validation approach!

“Synthesis of multi-year PV production data using generative adversarial networks” Gregory M. Kimball, Camille M. Pauchet, Rasoul Ghadami, Alberto Fonts Zaragoza

Presented at: PVSC48 https://ieee-pvsc.org/PVSC48/ 11B: PV Resource Modeling and Forecasting II Friday, June 25, 2021 9:00 AM – 11:00 AM ET

Posted in Data, Software, Solar | Leave a comment

Maui, the Valley Isle

We went on a trip to Maui to celebrate springtime in paradise and this time Mavic Air 2 came along. Come check out scenes from Ka’anapali, the Upcountry and Iao Valley!

Video capture by DJI Mavic Air 2, editing in Kdenlive.

Posted in Drones, Travel | Leave a comment

Image upscaling

Machine learning methods for “super-resolution” or “upscaling” are more accessible than ever. I was looking to make some out-of-print playing cards for Arkham Horror LCG, but I needed to upscaled my reference images by a 4x to achieve good printing quality. After some research, I found the Keras implementation of upscaling at https://github.com/krasserm/super-resolution to be an excellent option.

Using the EDSR x4 baseline with sample trained weights gave excellent results from PNG input images. The left image shows an upscaled sample, and the right image shows the input data. The images processed from 300×419 pixels to 1310×1778 pixels with the addition of bleed areas to improve the printing results.

When using input PNG images, artwork, text, and symbols all show excellent upscaling behavior even as they interpolate 90% new information.

On the other hand, compressed JPG input images deliver lower quality and more prominent artifacts. The left images show an upscaled sample, and the right images show the input data. Although the input JPG images have the benefit of being 31-33 KB as compared to the input PNG images at 230-280 KB, the noise introduced by the compression limits the fidelity of the upscaling process. Good to know!

Posted in Data, Software | Leave a comment

Big Sur Old Coast Rd

We spent an amazing day driving down in Bug Sur and exploring the Old Coast Rd. Come see the Bixby Creek Bridge, Big Sur River, and Molera Point!

Video capture by DJI Mavic Air 2, editing in Kdenlive.

Posted in Drones, Travel | Leave a comment