These Small PCBs are Made for Model Rocketry

Model rocketry hobbyists are familiar with the need to roll their own solutions when putting high-tech features into rockets, and a desire to include a microcontroller in a rocket while still keeping things flexible and modular is what led [concretedog] to design a system using 22 mm diameter stackable PCBs designed to easily fit inside rocket bodies. The system uses a couple of 2 mm threaded rods for robust mounting and provides an ATTiny85 microcontroller, power control, and an optional small prototyping area. Making self-contained modular sleds that fit easily into rocket bodies (or any tube with a roughly one-inch inner diameter) is much easier as a result.

The original goal was to ease the prototyping of microcontroller-driven functions like delayed ignition or altimeter triggers in small Estes rockets, but [concretedog] felt there were probably other uses for the boards as well and made the design files available on GitHub. (Thanks!)

We have seen stackable PCBs for rocketry before with the amazingly polished M3 Avionics project, but [concretedog]’s design is much more accessible to some hobbyist-level tinkering; especially since the ATTiny85 can be programmed using the Arduino IDE and the boards themselves are just an order from OSH Park away.

[via Dangerous Prototypes Blog]

 

Debugging an Arduino with an Arduino

As every Hackaday reader knows, and tells us at every opportunity in the comments, adding an Arduino to your project instantly makes it twice as cool. But what if, in the course of adding an Arduino to your project, you run into a problem and need to debug the code? What if you could use a second Arduino to debug the first? That would bring your project up to two Arduinos, instantly making it four times as awesome as before you started! Who could say no to such exponential gains?

Debugging an ATTiny85

Not [Wayne Holder], that’s for sure. He writes in to let us know about a project he’s been working on for a while that allows you to debug the execution of code on an Arduino with a second Arduino. In fact, the target chip could even be another AVR series microcontroller such as a the ATTiny85. With his software you can single-step through the code, view and modify values in memory, set breakpoints, and even disassemble the code. Not everything is working fully yet, but what he has so far is very impressive.

The trick is exploiting a feature known as “debugWIRE” that’s included in many AVR microcontrollers. Unfortunately documentation on this feature is hard to come by, but with some work [Wayne] has managed to figure out how most of it works and create an Arduino Sketch that lets the user interact with the target chip using a simple menu system over the serial monitor, similar to the Bus Pirate.

[Wayne] goes into plenty of detail on his site and in the video included after the break, showing many of the functions he’s got working so far in his software against an ATTiny85. If you spend a lot of time working on AVR projects, this looks like something you might want to keep installed on an Arduino in your tool bag for the future.

Debugging microcontroller projects can be a huge time saver when your code starts running on real hardware, but often takes some hacking to get working.

Continue reading “Debugging an Arduino with an Arduino”

A Game That Does More With Less

[David Johnson-Davies] created a minimal Secret Maze Game using a single ATTiny85 and a few common components. This simple game uses four buttons, four LEDs, and a small speaker. The player moves in the four cardinal directions using buttons, and the LEDs show walls and corridors. If an LED is lit, it means the path in that direction is blocked by a wall, and attempting to move in that direction will make a beep. When the player reaches the exit, a short victory tune chirps from the speaker.

Sample maze. A 16×16 matrix is allocated for maze designs.

Since the ATTiny85 has only five I/O lines, [David] had to get a bit clever to read four buttons, display output on four LEDs, and drive a little speaker. The solution was to dedicate one pin to the speaker and the other four to charlieplexing, which is a method of driving more LEDs than you have pins. It takes advantage of the fact that most microcontroller pins can easily switch state between output high, output low, or low-impedance high-impedance input.

As for the buttons, [David] charlieplexed them as well. Instead of putting an LED in a charlieplexed “cell”, the cell contains a diode and an SPST switch in series with the diode. To read the state of the switch, one I/O line is first driven low and the other I/O line is made an input with a pullup. A closed switch reads low on the input, and an open switch reads high. With charlieplexing, four pins is sufficient for up to twelve LEDs (or buttons) in any combination, which is more than enough for the Secret Maze.

Charlieplexing is also what’s behind this 110 LED micro-marquee display, or this elegant 7-segment display concept that takes advantage of modern PCB manufacturing options.

Environmentally Aware Jewelry Gets Attention

We didn’t include a “Most Ornate” category in this year’s Coin Cell Challenge, but if we had, the environmentally reactive jewelry created by [Maxim Krentovskiy] would certainly be the one to beat. Combining traditional jewelry materials with an Arduino-compatible microcontroller, RGB LEDs, and environmental sensors; the pieces are able to glow and change color based on environmental factors. Sort of like a “mood ring” for the microcontroller generation.

[Maxim] originally looked for a turn-key solution for his reactive jewelry project, but found that everything out there wasn’t quite what he was looking for. It was all either too big or too complicated. His list of requirements was relatively short and existing MCU boards were simply designed for more than what he needed.

On his 30 x 30 mm PCB [Maxim] has included the bare essentials to get an environmentally aware wearable up and running. Alongside the ATtiny85 MCU is a handful of RGB LEDs (with expansion capability to add more), as well as analog light and temperature sensors. With data from the sensors, the ATtiny85 can come up with different colors and blink frequencies for the LEDs, ranging from a randomized light show to a useful interpretation of the local environment.

It’s not much of a stretch to imagine practical applications for this technology. Consider a bracelet that starts flashing red when the wearer’s body temperature gets too high. Making assistive technology visually appealing is always a challenge, and there’s undoubtedly a market for pieces of jewelry that can communicate a person’s physical condition even when they themselves may be unable to.

Form or function, life saving or complete novelty, there’s still time to enter your own project in the 2017 Coin Cell Challenge.

Minimizing ESP8266 Battery Drain

[Alex Jensen] wanted to build a battery-powered weather station, using an ESP8266 breakout board to connect to WiFi. However, [Alex]’s research revealed that the ESP chip uses around 70mA per hour when the radio is on — meaning that he’d have to change batteries a lot more than he wanted to. He really wanted a low power rig such that he’d only have to change batteries every 2 years on a pair of AAs.

The two considerations would be, how often does the ESP get powered up for data transmissions — and how often the weather station’s ATtiny85 takes sensor readings. Waking up the ESP from sleep mode takes about 16mA — plus, once awake it takes about 3 seconds to reconnect, precious time at 70mA. However, by using a static IP address he was able to pare that down to half a second, with one more second to do the actual data transmission. In addition to the hourly WiFi connection, the Tiny85 must be powered, though its relatively modest 1.5mA per hour doesn’t amount to much, even with the chip awake for 36 hours during the year. All told, the various components came to around 500 mAh per year, so using a pair of AA batteries should keep the rig going for years.

We’re intrigued by stories of hackers eking out every last drop of power to make their projects work. We’ve posted about ESPs low-power mode before, and what can be more low-power than a watch running off a coin cell?

Continuity Tester uses the ATtiny85’s Comparator

There’s an inside joke among cyclists – the number of bikes you need is “n+1”, where “n” is your current number of bikes. The same probably also applies to the number of tools and equipment a hacker needs on their workbench. Enough is never enough. Although [David Johnson-Davies] has a couple of multimeters lying around, he still felt the urge to build a stand-alone continuity tester and has posted details for a super-simple ATtiny85 based Continuity Tester on his blog. For a device this simple, he set himself some tall design goals. Using the ATtiny85 and a few SMD discretes, he built a handy tester that met all of his requirements and then some.

The ATtiny85’s Analog Comparator function is perfectly suited for such a tester. One input of the comparator is biased such that there is a 51 ohm resistor between the input and ground. The output of the comparator toggles when the resistance between the other input and ground is either higher or lower than 51 ohms. Enabling internal pullup resistors in the ATtiny85 not only takes care of proper biasing of the comparator pins, but also helps reduce current consumption when the ATtiny85 is put to sleep. The test current is limited to 100 μA, making the tester suitable for use in sensitive electronics. And enabling the sleep function after 60 seconds of inactivity reduces standby current to just about 1 μA, so there is no need for a power switch. [David] reckons the CR927 button cell ought to last pretty long.

For those interested in building this handy tester, [David] has shared the Eagle CAD files as well as the ATtiny85 code on his Github repository or you could just order out some boards from OSHpark.

Snail is Actually Cleverly Strange Geocaching Waypoint

Basic geocaching consists of following GPS coordinates to a location, then finding a container which is concealed somewhere nearby. Like any activity, people tend to add their own twists to keep things interesting. [Jangeox] recently posted a video of the OLED Snail 2.0 to show off his most recent work. (This is a refinement of an earlier version, which he describes in a blog post.)

Another of [Jangeox]’s Electronic Waypoints
[Jangeox] spices up geocaching by creating electronic waypoints, and the OLED Snail is one of these. Instead of GPS coordinates sending someone directly to a goal, a person instead finds a waypoint that reveals another set of coordinates and these waypoints are followed like a trail of breadcrumbs.

A typical waypoint is an ATTINY85 microcontroller programmed to display an animated message on the OLED, and the message reveals the coordinates to the next waypoint. The waypoint is always cleverly hidden, and in the case of the OLED Snail 2.0 the enclosure is the shell of a large snail containing the electronics encased in resin. This means that the devices have a finite lifespan — the battery sealed inside is all the power the device gets. Fortunately, with the help of a tilt switch the electronics can remain dormant until someone picks it up to start the show. Other waypoints have included a fake plant, and the fake bolt shown here. Video of the OLED Snail 2.0 is embedded below.

Continue reading “Snail is Actually Cleverly Strange Geocaching Waypoint”