Matthew Petroff Wed, 31 Jan 2018 21:15:50 +0000 en-US hourly 1 Pannellum 2.4 Wed, 31 Jan 2018 21:14:03 +0000 Continue reading ]]> Yesterday, I released Pannellum 2.4.0. It doesn’t contain any major new features, although it does finally include translation support, which was an often requested feature. Also included are numerous minor improvements, a few new API functions, and quite a few bug fixes; see the changelog for full details. It had been more than a year since the last release—and I’ve been meaning to create a new release for a few months—so it was high time for a new release.

]]> 0
Amazon Echo Button Teardown Sun, 31 Dec 2017 21:18:50 +0000 Continue reading ]]> Amazon recently released the Echo Button, a Bluetooth Low Energy device designed for use with Echo devices (which I don’t own). Although it uses Bluetooth instead of Wi-Fi, I thought it might be a better device to repurpose than the Dash Button, due to its larger size and easily replaceable battery. Thus, I bought one to take apart.

Echo Button outside

Amazon seemed really worried about the batteries falling out, since the battery door is held shut with both a plastic tab and one Phillips #1 screw. Underneath one of the two AAA batteries is a row of exposed test points. Four other Phillips #1 screws are hidden beneath the device’s rubber feet; removing these allows the device to be opened.1

With battery door open

Once opened, there are two parts—a top half with the large button, and a bottom half with the PCB and batteries.

Halves separated

The top half consists of three plastic parts, three button contacts, and four springs.

Top half parts

The bottom half consists of one plastic piece, with the battery compartment, and the PCB, secured with two more Phillips screws.

Bottom half parts

The device can be easily disassembled and reassembled with standard tools and without damaging it.

All parts

The PCB is fairly spartan, consisting of a combined microcontroller / Bluetooth Low Energy SoC, three RGB LEDs,2 a trace antenna, and supporting components. For easy hackability, there’s a Tag-Connect SWD footprint, as well as a U.FL antenna connector and numerous cuttable traces / solder jumpers. The SoC is a Cypress CYW20735 “single-chip Bluetooth transceiver for wireless input devices.” There appear to be freely available development tools for it.

PCB top

The bottom of the PCB includes a set of test points, some of which are accessible from within the battery compartment. In particular, the SWD header is accessible via these test points with the following mapping:


PCB bottom

As far as software goes, the device broadcasts as a Bluetooth Low Energy gamepad with ID EchoBtn2V8.3 I was able to successfully pair it to a computer, but I have not yet tried to use it as an input device. I have also not yet tried to connect a debugger to the SoC.

  1. There’s no glue or ultrasonic welding. 

  2. There’s also a fourth, unpopulated footprint. 

  3. The last three characters might be specific to my device. 

]]> 2
Light Bulb PCB Sun, 05 Nov 2017 18:45:39 +0000 Continue reading ]]> As part of a Halloween costume (I was a “bright idea”), I designed a light bulb PCB, which was mostly just an excuse to try out PCBmodE. It consists of seven addressable RGB LEDs, an ATtiny85 microcontroller, an ambient light sensor, and a rechargeable battery. The battery and an old hard drive magnet, for mounting the PCB, are attached to the back via double-sided tape. As one might expect, PCBmodeE worked well for this artistic circuit board design, given that it was designed to be used for something like this, but KiCad is much easier to use for just about everything else.

Light Bulb PCB: Front

Light Bulb PCB: Back

The ambient light sensor proved less useful than I had hoped—the LEDs were too bright to use with all but their dimmest settings, and the light sensor’s optimal range didn’t align well with the lightning levels I was interested in. I also should have placed a copper pour behind the soldermask for the majority of the bulb, since it would have made for a better yellow color. Finally, the footprint I made for the microcontroller footprint is too narrow, but it’s close enough that I was still able to solder the microcontroller in place; a slightly wider footprint for the ambient light sensor would have also made soldering easier. Since this was a one-off, and it’s now past Halloween, there’s no reason for me to revise the PCB to fix these shortcomings.

The design files are in a GitHub repository.

]]> 0
Reserva Nacional Los Flamencos Tue, 31 Oct 2017 22:44:26 +0000 Continue reading ]]> While recently in San Pedro de Atacama, Chile, I drove out towards Argentina to look at the national flamingo reserve, which consists of a number of salt lakes (with flamingos). There are also other interesting geologic formations including rocks sticking out of the desert, the “Monjes de la Pacana.” Here are some photos of the reserve.Laguna Aguas Calientes

Monjes de la Pacana

Monjes de la Pacana

Laguna Aguas Calientes

Monjes de la Pacana

Monjes de la Pacana

Monjes de la Pacana

Laguna de Pujsa

Andean Gulls

Laguna de Pujsa

Flamingos at Laguna de Pujsa

Laguna de Pujsa

]]> 0
Great Smoky Mountains National Park Sat, 30 Sep 2017 22:34:35 +0000 Continue reading ]]> After viewing the total solar eclipse last month, I visited Great Smoky Mountains National Park on the way back from Tennessee, as well as the Cherohala Skyway, parts of the Blue Ridge Parkway, and Mount Mitchell. Here are some photos of the park.

Great Smoky Mountains National Park

Clingmans Dome Observation Tower

View from Clingmans Dome

]]> 0