Hack-a-Day, Day 22: Homemade PCBs

Today I learned how to make PCBs. I didn’t invent anything here, this is all pretty well known by the PCB-making community, but it’s not well-known to me. So I taught myself a bit!

The first part was the design an electronic circuit. I decided I was short on time, so I grabbed an existing schematic.

Next, I downloaded KiCAD, and recreated the circuit there. I found this video tutorial very helpful to learn kicad.

Next, I made the actual PCB layout.

To my surprise, after a little jiggling I got it down to a one-layer design.

That means home-printing would be much easier. No having to line up the two sides carefully.

I printed out the image on paper (backwards) on my toner printer, and taped it to the copper-clad PCBs.

First, I tried laminating it. Almost no ink transferred, and the paper came off easily. Then I tried ironing it, but the paper stick to the iron and not to the PCB. The tape melted on the iron. For both, I dunked them in water after, which is supposed to help loosen the paper.

Next, I tried the standard advice–sand the PCBs (I used 320 grit) and use glossy paper. This time, both pieces of paper stuck very well. I was wary about the iron coming off again, so I just left it on place on the highest heat–this worked fine for adhesion, but I had to iron out wrinkles at the end. The laminated piece had lose edges, while the ironed piece was on there totally flat.

I tried peeling off the laminated paper–oops! It peeled back and most of the ink stayed on the paper. I think if I took it off more carefully, it would have worked.

I picked at the ironed paper a bit, but it didn’t budge. I let it sit in dish soap for a while so the paper would fall apart. The first hour didn’t do anything.

Meanwhile, I made an order at PCBWay. It’s still under review.

Edit: after some advice from a friend, I peeled off this paper more aggressively, and scrubbed it off. The ink was fine. It doesn’t look great, but I think this is mostly the wrinkles during transfer. It’s a little blurry, I’ll have to do a third attempt before I try etching.

Tagged , , ,

Hack-A-Day, Day 20: Hillsfar Lockpicking Spritesheet

For today’s hack-a-day, I meant to clone the Hillsfar lockpicking minigame. Instead, I spent all day just extracting the sprites. But I had a nice chill time, so it was great.

Edit: See the updated post for the finished game.

Here’s the original minigame:

Here’s my spritesheet:

I made it by splitting up screenshots:

Tagged , , , , ,

Hack-A-Day, Day 18: A.I. Grab-bag

Today I got a variety of modern A.I. tools to work in a python library. This one is mostly install instructions, but it was useful for me, at least.

I took a day off after.

My conclusions were:

  • Speech synthesis runs at 400x realtime on CPU.
  • Speech recognition runs at 0.4x realtime on CPU, 60x realtime on GPU.
  • Generating chat at 0.05x – 0.5x realtime (3-30 wpm) on GPU.

I didn’t get image generation working on my allotted time.

Tagged ,

Hack-A-Day, Day 13: Blueprint Maker

Hack-A-Day is a challenge to try and finish 30 projects in 30 days in November.

Today I tried to write a tool to make a floorplan. You can try it here. As usual the source code is on github.

This was an ambitious project for one day, and I didn’t finish everything I wanted. My original goal was to support

  • drawing and erasing rectangles (done)
  • adding, editing, deleting, and moving text labels (not done)
  • adding, deleting, and moving icons (mostly not done)
  • autosave (done)
  • undo support (done)
  • zoom and pan (not done)
  • sharing finished projects (stretch goal, not done)

What I did do was pleasantly high-quality, and I made pretty good progress.

Tagged , ,