Tag Archives: HackADay

HackADay features Atmel-powered Phoenard

Back in February, Pamungkas Sumasta’s Phoenard won Atmel’s AVR Hero design challenge.

According to Sumasta, Atmel’s 8-bit AVR MCUs provide “the best small footprint controllers available in the market – especially when they are coupled with Arduino support.”

Recently, the Phoenard was featured on HackADay, along with a short video interview shot at Atmel’s Maker Faire Bay Area (2014) booth.

“We really like the form-factor but its hackability is where it really shines. Sumasta showed off the menu system which is quite snappy and makes it simple for you to add your own applications,” writes HackADay’s Mike Szczys.

“Software isn’t the only thing you can customize, as there’s a connector at the bottom of the phone. Sumasta showed off a breadboard attachment which was hosting LEDs of various colors. Their intensity can be altered using a simple slider app on the touchscreen.”

Video: Electronic dice go random with AVR



A Maker named Walter recently created an entropy library for Atmel AVR microcontrollers (MCUs) to ensure a reliable source of truly arbitrary numbers.

As HackADay’s Brian Benchoff reports, the electronic dice generate random numbers by taking advantage of the watchdog timer’s natural jitter.

“[This isn’t] fast by any means but most sources of entropy aren’t that fast anyway,” Benchoff explains. “By sampling a whole lot of AVR chips and doing a few statistical tests, it turns out this library is actually a pretty good source of randomness, at least as good as a pair of dice.”

According to Benchoff, the circuit itself employs a pair of 8×8 LED matrices from Adafruit, an Atmel-based Arduino board and a pair of buttons.

Supported modes (11 total)?

  • 2d6
  • 2d4
  • 2d8
  • 2d10
  • 1d12
  • 1d20
  • Deck of cards
  • Single hex number
  • Single 8-bit binary number
  • 8 character alphanumeric password

Interested in learning more? You can watch the video above or check out the project’s official page here.

Capacitive sensing with ancient keyboards



The Model M keyboard is a designation for a group of computer keyboards manufactured by IBM, Lexmark, Unicomp and MaxiSwitch, starting in 1984.

According to Wikipedia, the many variations of the keyboard have their own distinct characteristics, with the vast majority boasting a buckling spring key design and many having fully swappable keycaps.

As the venerable M keyboards are understandably ancient, there really is no easy method of connecting the device to a modern system. This unfortunate fact prompted a modder by the name of xwhatsit to ultimately build his own controller.

According to Hackaday’s Brian Benchoff, the beam spring keyboards use capacitive switches.

“With 122 keys, the usual method of reading capacitance – putting a capacitor in an oscillator – would be far too slow to be of any use in a keyboard. There is another method of reading capacitance: measuring the current going through the capacitive switch. This can easily be accomplished with an LM339 comparator,” he explained.

“xwhatsit‘s keyboard controller uses this capacitive sensing circuit to read the four rows of keys, with a few shift registers taking care of the columns. Atmel’s ATMega32u2 MCU is the brains of the outfit, running LUFA to translate the key presses to USB.”

Interested in learning more? Well, you’re in luck, because xwhatsit is selling Atmel based controllers for the Model M as well as the Model F using the same basic circuit.

Catching drops of water with an ATmega48P

Drops of water are often captured in perfectly timed photographs with the help of an optointerrupter, light source and air gap flash.

As HackADay’s James Hobson notes, this configuration is typically expensive or difficult to put together.

Fortunately, a Maker by the name of Michal has come up with a viable alternative using an array of LEDs to illuminate the drops.

“He [uses] a IR diode, a photo-resistor, a few spacers, some plastic and a bunch of hot glue to make up his optointerrupter. When the droplet passes through the IR beam it breaks the signal from the photo-resistor which then triggers his Atmel ATmega48P [MCU],” says Hobson.

“It waits 80 milliseconds and then turns on the LEDs for approximately 50 microseconds. Meanwhile, [the Canon] camera is watching the whole event with a shutter-speed of a few seconds.”

As Michal explains in a detailed blog post, one of the nice things about using an LED configuration is that it boasts rise and fall times considerably shorter than traditional camera flash, which lights up for approximately 1-2 milliseconds, rather than 50 microseconds.

“That’s why most of the motion-stopping photography relies on more exotic air-gap flash units,” Michal concludes.

Interested in learning more? You can check out the project’s official page here.

Who’s talking about the Arduino Zero ?

The Atmel-powered Arduino Zero dev board was officially announced on May 15th, 2014. The board’s debut has already been covered by a number of prominent tech publications, including Ars Technica, HackADay, EE Times, Electronics Weekly, CNX SoftwareUberGizmoGeeky Gadgets, SlashGear, PC World, SemiWiki and Makezine.

Sean Gallagher, Ars Technica



“The Zero is a 32-bit extension of Arduino’s flagship Uno board, developed jointly by the Arduino team and Atmel, targeted at helping developers prototype smart devices. Based on the Atmel SAM D21 ARM Cortex-based microcontroller, the Zero includes Amtel’s Embedded Debugger—allowing developers to debug their projects without having to wire up another interface.

”

“It gives developers a huge boost in storage and memory over the Uno, providing 256KB of onboard Flash storage (compared to the Uno’s 32KB) and 32KB of static RAM (compared to the Uno’s 2KB). It can also emulate an Electronically Erasable Programmable Read-Only Memory (EEPROM) of up to 168KB, while the Uno only supported 1KB of EEPROM.”

Brian Benchoff, HackADay

“The Arduino Zero uses an Atmel ARM Cortex-M0+ for 256kB of Flash and 32k of RAM. The board supports Atmel’s Embedded Debugger, finally giving the smaller Arduino boards debugging support.

“The chip powering the Zero features six communications modules, configurable as a UART, I2C, or SPI. USB device and host are also implemented on the chip [and] there are two USB connectors on the board.”

Max Maxfield, EE Times



“I’ve become a huge supporter of the Arduino, from the concept to the hardware to the software (IDE) to the ecosystem. I’m now using Arduinos and Arduino-compatible platforms for all sorts of projects, including my Infinity Mirror, my Inamorata Prognostication Engine and my BADASS Display.

“Each Arduino and Arduino-compatible platform offers different features, functions, capacities, and capabilities, which makes it possible to select the optimal platform for the project at hand using criteria such as size, cost, performance, and number of input/output pins. As of this morning, there’s a new kid on the block – the Arduino Zero, which has been jointly developed by Atmel and Arduino.”

Alasdair Allan, MakeZine

“While it shares the same form factor as the Arduino Leonardo—with 14 digital and 5 analog pins—all of the digital pins except the Rx/Tx pins can act as PWM pins, and the analog pins have a 12-bit ADC instead of the Leonardo’s 10-bit ADC, giving significantly better analog resolution,” writes Makezine’s Alasdair Allan.

“The new board comes with 256KB of Flash memory, and 32KB of SRAM. While the new board doesn’t have EEPROM, it does support 16KB by emulation, so Arduino sketches relying on this feature will still run without issue.”

Arduino Zero – official specs:

  • Microcontroller ATSAMD21G18, 48pins LQFP
  • Operating voltage 3.3V
  • Digital I/O Pins 14, with 12 PWM and UART
  • Analog input pins 6, including 5 12bits ADC channels and one 10 bits DAC
  • DC current per I/O Pin 7 mA
  • Flash memory 256 KB
  • SRAM 32 KB
  • EEPROM up to 16KB by emulation
  • Clock speed 48 MHz

Interested in learning more? You can check out the official Arduino Zero page here.

ATtiny45 drives this optical theremin

A Maker by the name of Derek recently created an optical theremin to illustrate the types of devices typically found in hacker and Maker spaces.

As HackADay’s Rick Osgood reports, the solderless Noise-o-Tron kit is powered by Atmel’s ATtiny45 microcontroller (MCU).

“Arduino libraries have already been ported to this chip, so all [Derek] had to do was write a few simple lines of code and he was up and running,” writes Osgood.

“The chip is connected to a photocell so the pitch will vary with the amount of light that reaches the cell. The user can then change the pitch by moving their hand closer or further away, achieving a similar effect to a theremin.”

According to Osgood, Derek designed a simple PCB out of acrylic, with laser cut holes to fit the components and leads twisted together.

“I learned a lot with this project and I think some other people did too. I had kids as young as 5 assemble these boards with guidance, some of them with surprisingly little help,” notes Derek.

“Everyone seemed to like them and I ran out of components for kits. I’m calling it a huge success and I hope that this project is replicated and taken to Maker Faires, expos and ‘learn electronics’ nights.”

Interested in learning more about the solderless Noise-o-Tron kit? You can check out Derek’s blog post here and the relevant Github files here.

Old school gyroscope stabilizes two-wheeler



A gyroscope is a device for measuring or maintaining orientation, based on the principles of angular momentum. According to Wikipedia, mechanical gyroscopes typically comprise a spinning wheel or disc in which the axle is free to assume any orientation.

Although MEMS-based gyroscopes are obviously readily available these days, a Maker by the name of Jim decided to keep things old school for his classic gyro-stabilized two wheeler.

As HackADay’s Adam Fabio reports, Jim cycled through a total of five project iterations in recent months.

“Along the way he’s learned a few important secrets about mechanical gyro design, such as balancing the motor and gyro assembly to be just a bit top-heavy,” Fabio explained.

“[His] gyro is a stack of CDs directly mounted to the shaft of a brushed speed400 R/C airplane motor. The motor spins the CDs up at breakneck speed – literally. Jim mentions that they’ve exploded during some of his early experiments.”

As expected, the gyroscope can move in the fore-aft direction, with side-to-side balancing facilitated by curved tread wheels. Meanwhile, a potentiometer measures the tilt angle of the gyro, as the voltage from the pot is fed into an [Atmel-based] Arduino Uno (ATmega328 MCU) tasked with closing the loop by moving a servo mounted counterweight.

The vehicle is controlled via a typical R/C plane radio, with a servo steering the front wheel and another DC motor pulling rear wheel duty.

“Not only is [Jim’s] creation able to balance on its own, it can even make a U-Turn within a hallway,” Fabio added.

Interested in learning more? You can check out the project’s official page here.

Reading paper ticker tapes with an Arduino



Ticker tape – in use from 1870-1970 – was the earliest digital electronic communications medium, transmitting stock price information over telegraph lines.

According to Wikipedia, it consisted of a paper strip that ran through a machine called a stock ticker, which printed abbreviated company names as alphabetic symbols followed by numeric stock transaction price and volume information.

Recently, a Maker named NeXT decided to design a custom PCB from scratch to facilitate the easy reading of paper ticker tape. As HackADay’s James Hobson notes, it is somewhat difficult to buy a working paper tape reader at a reasonable price.

“What we love about this hack is its clever reuse of perfboard — it just so happens that the spacing of his paper tape holes line up perfectly with the holes in the perfboard. Don’t you love it when engineers work together with nice, even, standard units?” Hobson writes.

“After discovering this it was just a matter of adding some photo-transistors on one side of the perfboard sandwich and LEDs on the other side. A bit of soldering, some Schmitt triggers, and an Arduino Pro Mini [Atmel ATmega168 MCU] later… and bam you have a serial output of data.”

According to NeXT, the the output can be fixed to any specific baud rate, although it is currently set at a cool 9600.

“That’s enough that I won’t overflow the serial channel, nor will it be painfully slow. It’s possible that I can change the baud rate with a jumper but I’ve yet to learn how exactly that would be programmed so we’ll leave that for another day. When I want to reprogram it the same four pin header that powers it and connects it to the host also holds an Rx pin so I can talk to it,” he says.

“In the end I decided while this makes a very nice and portable reader I decided the best home would be in my DEC LA-120 hard copy terminal. It has an option knockout on one side and you could easily build it into the overall terminal by taking the Tx line from the reader and tapping into the TxD line on the terminal’s serial port. That way so long as you were in 9600 baud mode if you wanted to read in a paper tape you threaded it through the optic block, set the computer to capture through the serial port and then pulled the tape through.”

Interested in learning more? You can check out the project’s official page here.

Going retro with Zorkduino



Zork is considered one of the earliest interactive fiction computer titles, with roots drawn from the original genre game, Colossal Cave Adventure.

According to Wikipedia, the first version of Zork was written in 1977–1979 using the MDL programming language on a DEC PDP-10 computer. The authors – Tim Anderson, Marc Blank, Bruce Daniels, and Dave Lebling – were all members of MIT’s Dynamic Modeling Group.

Recently, an experienced modder by the name of Rossum decided to rekindle fond memories of long nights playing Zork on his Atari 800 by building the aptly named Zorkduino.

The Atmel-based, Arduino-powered platform generates both audio and video. As expected, Zorkduino is built to be hooked up to a TV and keyboard. 

Key components include:

  • Atmel-based Arduino Uno, Pro, or Pro Mini.
  • SD card or micro SD card + breakout board (from Adafruit, eBay etc).
  • RCA A/V Cable (eBay).
  • 470ohm, 1k and 100k resistors.
  • Breadboard, wires, etc.
  • WebTV or MsnTV IR Keyboard or PS2.
  • IR receiver TSOP38238,TSOP4838 or equivalent.

So, how does the retro gaming platform work? Well, as HackADay’s Brian Benchoff reports, Rossum capitalizes on the onboard hardware of the Arduino.

“Video is generated by using SPI mode on a UART at top speed – 8 MHz. This just shifts out pixels from the video buffer on an SD card,” writes Benchoff.

“The keyboard is handled like any other PS/2 keyboard project on the Arduino, [while] audio is generated by toggling a pin at 1000Hz for a keypress and 3600Hz for SD card access.”

As a bonus, Rossum includes an number of additional games on the SD card, including Leather Goddesses of Phobos, along with the ability to run Hitchhiker’s Guide to the Galaxy.

Interested in learning more about the Zorkduino? You can check out Rossum’s original blog post on the subject here and the project’s official HackADay page here.

IViny is an ATtiny85-powered DAQ



The Ivmech crew was recently in need of a small, inexpensive device capable of sensing analog values and toggling a few digital pins – all while logging everything to a PC.

Ultimately, the team decided to build the IViny DAQ, a mini data acquisition device powered by Atmel’s ATtiny85 microcontroller (MCU).

Aside from Atmel’s versatile ATtiny85 MCU, key project components include:

  • 2 channels 0 – 5V ve 0 – 3V digital input/output
  • 2 channels 0 – 5V 10 bit analog input
  • Channel maximum current 20 mA
  • USB power supply
  • V-USB based comms
  • PC user interface (UI)
  • 150 S/s (set to increase with future firmware upgrades)
  • 50 mm x 33 mm x 17 mm

“The IViny features two digital channels and two 10 bit analog channels, just like you’d find in any ATtiny85 project,” writes HackADay’s Brian Benchoff.

“Power is supplied over USB, and a connection to a computer is provided by V-USB. There’s also a pretty cool Python app that goes along with the project able to plot the analog inputs and control the digital I/O on the device.”

As Benchoff notes, the device doesn’t exactly run at light speed, with the firmware currently supporting 100 samples per second.

“[However], an upcoming firmware upgrade will improve that. Still, if you ever need to read some analog values or toggle a few pins on the cheap, it’s a nice little USB Swiss army knife to have,” he adds.

Interested in learning more about IViny, the ATtiny85-powered DAQ? You can check out the project’s GitHub page here.