Unboxing & Assembly of HackerBox #0027: Cypherpunk

Here’s the full list of the box contents from the Instructable.

  • HackerBoxes #0027 Collectable Reference Card
  • Black Pill STM32F103C8T6 Module
  • STLink V2 USB Programmer
  • Full-Color 2.4 inch TFT Display – 240×320 Pixels
  • 4×4 Matrix Keypad
  • 830 Point Solderless Breadboard
  • 140 Piece Wire Jumper Kit
  • 2 U2F Zero Soldering Challenge Kits
  • Large 9×15 cm Green Prototying PCB
  • Exclusive Vinyl GawkStop Spy Blockers
  • Exclusive Aluminum Magnetic Swivel Webcam Cover
  • Exclusive EFF Patch
  • Privacy Badger Decal
  • Tor Decal

I haven’t done an assembly video on a HackerBox in months. I have received some comments that they are really helpful for beginners, so I’m going to try to do one each month, which will also push me to complete the kits sooner. With all of the surface mount components this is a really good box to start with.

Catching up on Electronics Projects

I’m behind on a bunch of electronics subscription boxes and projects, so I’m just going to list out a bunch of stuff. None of its worthy of its own post anyway.

One of the projects for HackerBox #0023 was to build a custom antenna out of PVC, copper wire, and glue. I did a pretty piss poor job of drilling my holes in a straight line (as you can see in the picture), but I connected it to a microcontroller and was able to scan for Wi-Fi networks in the area. Success?

img_0591.jpg

I need to make more time to work with the pan and tilt system built with HackerBox #0024.

The camera that came with the project can only do 640×480, which sucks. One of these days I’ll connect the system to a Raspberry Pi and use one of my unused Pi cameras instead. Would be neat to mount at the front door to track anyone who comes to the house when I’m not home. The face tracking stuff is pretty awesome, even with the shitty camera. Here’s a really rough video of it.

I had to modify the code a lot to get everything working and I put it all on GitHub. If I work on this project more I’ll update that repo.

There wasn’t a lot to do with HackerBox #0025. It was mostly a soldering and look at the blinky lights project. Here are the 3 badges I made. I turned the star and rectangle (with a “Let’s Party” sticker in place) into pins and gave them to my nieces.

The skull badge has a buzzer on it, so I wrote some code (it’s on GitHub) to make it play the Star Wars theme and display some light animations.

Over the holidays I messed with AdaBox006 a bit. The 38 I posted on my birthday was a light painting taken with the Slow Shutter iOS app. I got it the light paintbrush working on both the Circuit Playground classic via a customized Arduino sketch and on the Circuit Playground Express through MakeCode. Both are available in the adabox-006 repo on GitHub. Using MakeCode is a fun way to program and I think it’s going to change the way people learn. Look at how simple and visual that version of the program is…

adabox-006-make-code-light-paintbrush.png

I did solder everything for HackerBox #0026 and verified some of the functionality, but haven’t done much with it. It was one of the most fun projects so far from HackerBoxes because of how many components were on this PCB. I find soldering to be so relaxing and satisfying.

I added the code for the temperature sensor I mentioned and showed in my post Why Are Thermostats Still on the Wall? to a new dht11-low-pass-filter repo on GitHub. Very simple, but useful.

Revisiting My Resistor Organization

My supply of resistors (and diodes) has grown over the last year. The previous solution worked well, although the screw tops were a pain. I’d been doubling up some containers if the values were close enough, but had run out of cylinders, so starting chucking parts into the box.

img_0580.jpg

img_0582.jpg

It went to Jo-Ann Fabrics again and was planning to buy another set of the cylinders, but they were either out of stock or don’t carry them anymore. So I found some organizers made for thread which don’t have adjustable compartments like a lot of these things. That was important because I don’t want the parts jumping compartments. The size looked good for the length of the resistors too, even if they had to be angled to fit. The cardboard label cards will make it easy to shuffle things around, compared to sticker labels, if I get a new resistor value.

I think it’s a nice improvement and will save time when I go digging for a resistor. I’m sure I can find a use for the cylinder organizer in my workshop, maybe for small screws.

Why Are Thermostats Still on the Wall?

A couple of weeks ago I noticed the heat was staying on in my office pretty much all day. I have a boiler heating system with 4 zones and the thermostat that controls the front of my house is right there in the office. I wasn’t cold in there, but the thermostat wasn’t reporting that the temperature ever reached what I had set.

I pulled the Nest off of its mounting bracket, put my hand near the hole in the wall, and I could feel cold air. So I grabbed an instant read meat thermometer and stuck it through the hole. The reading inside the wall was 10° lower than a foot away from the wall.

For a simple fix, I stuffed a bunch of insulation through the hole and covered it with foil tape.

In order to monitor the effectiveness of the fix, I put together a quick temperature sensor instead of having to turn the meat thermometer on and off.

It worked!

Two or three years ago I had the opposite problem with this heating zone; it was always cold in the office. By feeling the wall I came to the conclusion that the thermostat had been installed right next to one of the pipes sending hot water to the upstairs registers. Brilliant! The fix that time was moving the thermostat over between the next set of studs.

After these two issues with the placement of a thermostat, I starting thinking. Why are we still basing our heating on measurements taken from a set position on the wall? With the Internet of Things we can do this much smarter.

Imagine each zone in the house having one or more mobile temperature sensors. Like the simple circuit pictured above, but in a small case. These could be battery-powered or plug-in. Windows, wind, and location of the sun can all affect the heating of different areas of a house. Being able to move the temperature sensor with you as you make dinner in the kitchen or watch a movie from your recliner would be awesome.

These temperature sensors would wirelessly report the temperature back to the home automation system. I use Home Assistant, which would make it easy to set the heating schedules for each zone. If a zone needed to go on or off based on the sensor’s reported temperature and the schedule’s target temperature, it would wirelessly trigger a relay module at the furnace or boiler. The relay would wire in to the furnace/boiler system in place of the wires that come from each thermostat and it would never know the difference. None of these pieces are hard to build and the parts are cheap.

This is all just something that ran through my mind as I was fixing my heating issue. I don’t have plans to build such a system, but if I did I could ditch my 4 Nest thermostats. For someone who works at home, often at random times of the day, I think Nest thermostats are overrated anyway because the learning and auto scheduling system doesn’t do much for me.

Photo Challenge: Growth

As part of my daily posting, I’m going to complete The Daily Post Photo Challenge each week.

Whether you take photos with an iPhone or a full-frame DSLR, you’re welcome to participate in our photo challenges. A new theme is announced every Wednesday.

I’ll give myself 2 weeks for each challenge in case I need to come up with an idea for the theme. To keep me on track, I use a repeating reminder.

photo-challenge-reminder.png

The first theme for 2018 is growth. I don’t do New Year’s resolutions, so I’ll share a little journey.

The other night, as I was soldering the project HackerBox #0026 I kept thinking back to my first attempt at soldering, when I put headers on a Raspberry Pi Zero. I remember being hesitant and scared, because I was teaching myself how to solder. I was worried I’d either fry the board or burn myself. It felt like it took forever. Everything worked though.

That was only 13 months ago, but it feels like years. I’ve gained a lot of experience with the soldering iron and now know I had nothing to be afraid of. Learning new skills can be scary.

“What if I screw up?”

“What if I’m no good?”

Don’t let the voices of fear prevent you from trying, especially if it’s something you’ve always wanted to do. Do some prep work, read up on the topic, and dive in. Or find someone with experience to help and teach you.

Here’s the back of the circuit board I soldered this week. A lot more complex, but it was second nature.

Is there something you’ve always wanted to learn? What’s stopping you?

Unboxing HackerBox #0026: BioSense

The first HackerBox of 2018 arrived and it might be my favorite since I subscribed with #0018.

As suggested in the video, I’m not going to do pricing anymore. I proved the value in these boxes is there for the $$. It’s really hard to estimate prices on these custom kits, so it’s not worth the time. Here is a list of the contents copied from the Instructable for box #0026.

  • HackerBoxes #0026 Collectable Reference Card
  • Exclusive HackerBoxes BioSense PCB
  • OpAmp and Component Kit for BioSense PCB
  • Arduino Nano V3: 5V, 16MHz, MicroUSB
  • OLED Module 0.96 inch, 128×64, SSD1306
  • Pulse Sensor Module
  • Snap-Style Leads for Physiological Sensors
  • Adhesive Gel, Snap-Style Electrode Pads
  • OpenEEG Electrode Strap Kit
  • Shrink Tubing – 50 Piece Variety
  • MicroUSB Cable
  • Exclusive WiredMind Decal

Might be cool to turn this into something for use in my garage gym.

I am preparing a post with a bunch of stuff from the previous boxes I’ve been catching up on. Maybe I’ll wait to post that until I complete this build so I can be all caught up before #0027.

Making a Bluetooth Speaker

It’s been too long since I posted about designing a speaker in SketchUp, but other projects moved up on my priority list between then and now. Well, over the last few days I finally made the speaker. In the end, the delay was worth it, because several of the steps were a lot easier with tools I’ve acquired over the last few months.

Other than the design, the first step was to get a board. I ordered the INSMA TDA7492P Chip 25W+25W Wireless Bluetooth 4.0 Audio Receiver Digital Amplifier Board on Amazon after watching 2 otherbuilds with the same board. To make sure it was going to work, I hooked up my speakers for a quick test. I salvaged the speakers out of on old set of computer speakers I had in college.

insma-tda7492p-test

led-button-test

I ordered a couple of different button styles from AliExpress, so I tried both types out, ultimately deciding to use the larger buttons which also had a blue LED ring. The smaller buttons were nice but not right for this project.

I did those tests around the same time I was designing the speaker. Several months passed before I touched any of the components again. Since I wanted to use my own buttons, switch, and LEDs I needed to figure out the best ways to connect in to various points on the board. This involved a lot of poking and prodding with a multimeter. I figured everything out and did all of the soldering and wiring prep work to help with assembly once the box was built.

speaker-wire-prep.jpg

I had taken some general measurements when iterating on the design, but I thought it would be a good idea to create a cardboard model before cutting any wood. This mockup of the walls was an inch too short, but it let me get an idea of what kind of space would be on the inside. Knowing that the 1/2″ plywood would use up a lot more area, I increased several dimensions and changed the angles on the 3 front pieces.

img_0419

After cutting the 3 front pieces and two sides, I measured and marked all of the spots where I needed to drill holes.

Then I spent a lot of time with the drill press. There was a lot of measuring and calculating because pretty much everything going on the front face needed some kind of recess.

53620753921__743038a1-638e-44a3-8292-07a65bf07b3c

It was looking pretty good!

53620784125__2c8f8971-f707-4b1b-9a03-b54b7963dd45

Since I hadn’t updated my SketchUp plans for the changes, it was tricky getting the correct sizes for the top, bottom, and back pieces. I ended up screwing some parts together in a step-by-step process and then making small cuts on the new pieces to inch up on the fits. At the end I had to do a bunch of sanding on the front face, which was the last piece I screwed together. It was really cool seeing the design come to life.

img_0431

Time for some finishing work. I sanded edges and cleaned off all of the dust before I did a quick coat of spray paint. I wanted to try a neat technique I’d seen, so I did a bunch of sanding to rough up the paint. Then I coated everything with 2 coats of stain/poly, while doing a light sanding in between. After the first coat of stain, I unscrewed everything to apply the final coat because I wanted to make sure nothing was stuck together on the joints.

img_0434

After letting everything dry it was time to work on the guts. I used the time-lapse recording option on my YI 4K Action Camera for the first time, which worked well, so here it is with voice-over to explain what I’m doing during the assembly process.

I wanted to give it a coat of Minwax paste finishing wax when I was done, but with all of the buttons and speakers in the way it would have been too hard to work around them. Should have done it before. I’m pretty thrilled with how the paint and stain combo turned out.

img_0436

img_0437

img_0438

img_0439

The dimensions ending up being 5″ tall, 10″ wide, 4.5″ deep at the sides, and 5.75″ deep in the middle. It weighs just under 4 pounds with most of that coming from the 2 speakers. It’s hard to get a sense for the size in the cropped images above, so for scale here is a comparison with a beer bottle.

speaker-vs-bottle.jpg

I’ve been using an old Jawbone Jambox for music in my garage gym. This is so much more convenient because it plugs in and has a permanent spot. No more worrying about a dead battery or trying to find the Jambox when it’s time for a workout.

Whenever I was using the Airdyne or Ski Erg, it was hard to hear the Jambox. Judging by the test below, I should be able to crank the tunes now. I played 30 seconds of “Welcome to the Jungle” with both speakers, starting at the 1:00 mark, and increasing the volume every 5 seconds.

I Made an Escape Room

This summer, I got an idea to build some stuff to make an escape room for our family vacation. I finally dismantled some of the parts this week, so I figured it was time to write a post about it and at least get something online in case it’s useful to someone else. I won’t got into much detail here because I think it’s a fun process to think about how you want things to work and learn going through that if you decide to build something similar. The GitHub repo has all of the code, wiring diagrams, and documents. In the docs folder there are things to print for props, some of my notes, and the story.

First, a few lessons I learned when I watched 2 small groups of my family try to escape:

  • All of your clues and hints are probably twice as hard as you think.
  • People will break shit even if you tell them to be very careful. Hot glue isn’t the best to hold some of this stuff together.
  • They’ll think everything is a clue.

My room consisted of 9 different circuits.

Door Lock

Served as an alarm when telling the story, the game timer, and where participants enter the final code to escape the room. This box is the final build and I the video shows some of the early testing.

IMG_9476

Control Panel 1

In order to get things going, a simple switch on the side turns on the first part of the game. When the correct code is entered, it flips a relay module, which then provides power to the rest of the circuits on the control panel. When I built this, I wrote posts about multiplexing 7 segment displays and solder bridges.

IMG_9378

IMG_0414

IMG_0413

This box also housed control panels 2 & 3, which I talk about below.

Power Outlet Relay

I wrote a few posts about building the relay module for this. There are also plenty of guides online.

IMG_9484.jpg

Control Panel 2

Basically some colored wires that needed to be connected in the correct order. Not that easy to see in the pictures above but it’s the bottom part of the box with the 6 standoffs sticking up out of the box, the single LED, and the group of 3 LEDs.

Control Panel 3

An infrared receiver. After finding batteries for an old VCR remote, when the correct button was pressed, a colored LED would blink a number of times. It’s the top right section of the box above.

IMG_9479.jpg

Control Panel 4

Used 3 old light switches as binary on/off. When the switches were set correctly the binary to decimal conversion gave part of the code and the color of the LED gave another part.

IMG_9467.jpg

IMG_9469.jpg

IMG_9472

img_9473.jpg

IMG_9475

Control Panel 5

I used the keypad I got out of an old phone, which I wrote a 4 part series about. I learned a lot and had some fun figuring that stuff out.

IMG_9488

IMG_9489

This went in the same box as control panel 4.

IMG_0418

IMG_0417

Control Panel 6

Probably the most confusing part for participants to figure out. It consisted of:

  • A knob which needed to be rotated to the correct general position.
  • A light sensor which needed to have a flashlight (find batteries) pointed at.
  • A distance sensor on the side which needed to have an object a certain distance away.
  • A sensor which need to have a magnet near by.

As feedback, there was an LED matrix used as a bar graph. Once a sensor was set properly the line would fill up and a buzzer would beep. When all 4 things were set correctly at the same time, the LED matrix would scroll some text across it, providing the necessary code.

IMG_9491.jpg

IMG_0416.jpg

IMG_0415.jpg

Circuit Playground

Taking advantage of the accelerometer on this microcontroller, the goal here was to tilt the board in a series of directions within a short period of time. The LEDs and buzzer on the board were used for feedback. With a win, the board would give audio and visual feedback in the form of another code to be used with the door lock. The period of time was way too short for people.

The Door Code

Each circuit that provided an answer/clue was a combination of a color and a number. These needed to be matched up with the colors being in the correct order and then the numbers would unlock the door. In order to figure out the correct order, a series of index cards with cutouts needed to be arranged properly (by matching symbols in the corners of the cards) so the “windows” would show the names of colors.

Summary

If I were to do it again, I’d know that there is way too much going on here and to make it much easier. I had a lot of fun building all of the circuits, writing the code, and trying to figure out how people would interact with the different parts.

I know everything here is a bit light on details, but that’s on purpose. I didn’t even mention the other props I had in the “room” to go along with this stuff. If you decide to build something similar hopefully this stuff will give you some ideas to can run with. Leave a comment if you have any questions.

Fixing a Simple Button & LED Circuit

I found an old Christmas ornament which was supposed to light up by pressing a button. Before trashing the ornament, I tore out the circuit. While I was taking it apart and figuring out why it didn’t work, I turned on the camera and talked to myself. Probably boring for most people, but it might be interesting to see what I was thinking through the process. If you’re new to electronics (like me) it may even teach you a few things.

This is completely raw and unedited footage. Sorry about the noise in the background. I was using an electric heater because my boiler wasn’t heating up the house properly.

AdaBox006: CircuitPython

The last AdaBox of the year was delivered yesterday. I was able to avoid spoilers so I did a quick unboxing video.

I’ve been wanting to try the AdaFruit M0 boards like the Circuit Playground Express, but figured they’d be including one soon in an AdaBox. Pays to wait, especially when I have a backlog of projects. This is a really neat microcontroller with a lot to explore. It works with the MakeCode block editor, which will be fun to hack around with.

More info on the box can be found in Adafruit’s Learn guide for AdaBox006.