Everything You’ll Find At The SuperConference

The 2016 Hackaday SuperConference is the ultimate hardware con. It will take place on November 5+6, 2016 in Pasadena, California. SuperCon is about hardware creation — everything at this conference is geared toward sharing the knowledge, excitement, experience, and motivations that go into building cutting edge electronics.

We offer you 48 hours packed with 21 talks, 5 workshops, lightning talks, 4 meals, the Hackaday Prize party, a hardware badge hacking competition, a crypto challenge, and a most excellent village of hackers to enjoy it with. For one weekend Pasadena will be the hardware center of the universe. Get your ticket to the Hackaday SuperConference now.

Want to know more? The full list of talks, works, and details about everything else is found below. We do anticipate adding to this massive list of talks and workshops as we receive final confirmation from the presenters not yet listed.

Continue reading “Everything You’ll Find At The SuperConference”

Taking A U2F Hardware Key From Design To Production

Building a circuit from prototyping to printed circuit board assembly is within the reach of pretty much anyone with the will to get the job done. If that turns out to be something that everyone else wants, though, the job gets suddenly much more complex. This is what happened to [Conor], who started with an idea to create two-factor authentication tokens and ended up manufacturing an selling them on Amazon. He documented his trials and tribulations along the way, it’s both an interesting and perhaps cautionary tale.

[Conor]’s tokens themselves are interesting in their simplicity: they use an Atmel ATECC508A specifically designed for P-256 signatures and keys, a the cheapest USB-enabled microcontroller he could find: a Silicon Labs EFM8UB1. His original idea was to solder all of the tokens over the course of one night, which is of course overly optimistic. Instead, he had the tokens fabricated and assembled before being shipped to him for programming.

Normally the programming step would be straightforward, but using identical pieces of software for every token would compromise their security. He wrote a script based on the Atmel chip and creates a unique attestation certificate for each one. He was able to cut a significant amount of time off of the programming step by using the computed values with a programming jig he built to flash three units concurrently. This follows the same testing and programming path that [Bob Baddeley] advocated for in his Tools of the Trade series.

From there [Conor] just needed to get set up with Amazon. This was a process worthy of its own novel, with Amazon requiring an interesting amount of paperwork from [Conor] before he was able to proceed. Then there was an issue of an import tariff, but all-in-all everything seems to have gone pretty smoothly.

Creating a product from scratch like this can be an involved process. In this case it sounds like [Conor] extracted value from having gone through the entire process himself. But he also talks about a best-case-scenario margin of about 43%. That’s a tough bottom line but a good lesson anyone looking at building low-cost electronics.

Creating A PCB In Everything: Eagle, Part 1

For the first in a series of posts describing how to make a PCB, we’re going with Eagle. Eagle CAD has been around since the days of DOS, and has received numerous updates over the years. Until KiCad started getting good a few years ago, Eagle CAD was the de facto standard PCB design software for hobbyist projects. Sparkfun uses it, Adafruit uses it, and Dangerous Prototypes uses it. The reason for Eagle’s dominance in a market where people don’t want to pay for software is the free, non-commercial and educational licenses. These free licenses give you the ability to build a board big enough and complex enough for 90% of hobbyist projects.

Of course, it should be mentioned that Eagle was recently acquired by Autodesk. The free licenses will remain, and right now, it seems obvious Eagle will become Autodesk’s pro-level circuit and board design software.

Personally, I learned PCB design on Eagle. After a few years, I quickly learned how limited even the professional version of Eagle was. At that point, the only option was to learn KiCad. Now that Eagle is in the hands of Autodesk, and I am very confident Eagle is about to get really, really good, I no longer have the desire to learn KiCad.

With the introduction out of the way, let’s get down to making a PCB in Eagle.

Continue reading “Creating A PCB In Everything: Eagle, Part 1”

Staring At The Sun: Erasing An EPROM

Flash memory is the king today. Our microcontrollers have it embedded on the die. Phones, tablets, and computers run from flash. If you need re-writable long term storage, flash is the way to go. It hasn’t always been this way though. Only a few years ago EPROM was the only show in town. EPROM typically is burned out-of-circuit in a programming fixture. When the time comes to erase the EPROM, just pop it under an ultraviolet (UV) bulb for 30 minutes, and you’re ready to go again. The EPROM’s quartz window allows UV light to strike the silicon die, erasing the memory.

The problem arises when you want to use an EPROM for long term storage. EPROM erasers weren’t the only way to blank a chip. The sun will do it in a matter of weeks. Even flourescent light will do it — though it could take years.

Continue reading “Staring At The Sun: Erasing An EPROM”

Hacklet 123 – Watches

Time and tide wait for no man. Chaucer may be right, but a man (or woman) wearing a watch can get ahead of time before it sneaks up on them. People aren’t ever satisfied with just the time though. They want the date, the phase of the moon. [Woz] summed it up pretty well when he said “I want the entire smartphone, the entire Internet, on my wrist”.   Hackers love watches too, which means there are plenty of watch projects out there. Some of them even tell time. This week we’re looking at some of the best watch projects on Hackaday.io!

chronioWe start with [Max.K] and Chronio. You might think Chronio looks a bit like the Pebble Time, and you’d be right! [Max] based his design heavily on Pebble’s case design. Pebble even has their CAD files on GitHub, which helped [Max] with his modified, 3D printed version. Chronio is Arduino based, using an ATmega328p microcontroller with the Arduino bootloader. The display is Sharp’s 96×96 pixel Memory LCD. A DS3231 keeps the time accurate, and provides a free temperature sensor. The entire watch is powered by a CR2025 battery. Running a 20uA sleep current, [Max] estimates this watch will last about 6 months on a single battery.

neopixel-pocketNext we have [Joshua Snyder] and Neopixel pocket watch. Who said a watch has to go on your wrist? [Joshua] brings some steampunk style to the party. His watch uses an Adafruit 12 NeoPixel ring to tell time. Red, blue, and green LEDS represent the hour, minute and second hands. The watch is controlled by an ESP8266. The time is set via WiFi. Between the LEDs and the power-hungry ESP8266, this isn’t exactly a low-power design. A 150mAh LiPo battery should keep things running for a few hours though. That’s more than enough time to make a splash at the next hackerspace event.

pi-watchNext up is [ipaq3115] and The Pi Watch. Round smartwatches have created a market for round LCD screens. These screens have started to trickle down into the hacker/maker market. [ipaq3115] got his hands on one, and had to design something cool with it. The Pi Watch isn’t powered by a Raspberry Pi, but a Teensy 3.1. [ipaq3115] included the Freescale/NXP Kinetis processor and MINI54 bootloader chip on his own custom board. He used the Teensy’s analog inputs to create his own 10 element capacitive touch ring. This watch even has a LSM303  magnetometer/accelerometer. All this power comes at a cost though. It takes a 480 mAh LiPo battery to keep The Pi Watch Ticking.

vikasFinally we have [Vikas V] and ScrolLED watch. Who says a watch has to have an LCD? [Vikas V] wanted a scrolling LED display on his wrist, so he built his own. An Atmel ATmega88V-10AU controls a 16×5 charlieplexed LED array. [Vikas] included a character font with many of the ASCII symbols in flash, so this watch can display messages. Power comes from a CR2032 watch battery in a custom PCB mounted holder. [Vikas] biggest issue so far has been light leaks from LED to LED. He’s considering mounting the array on the bottom of the watch. Shining the LEDs up through holes in the PCB would definitely help with the light leakage.

If you want to see more watch projects, check out our new watch projects list. Notice a project I might have missed? Don’t be shy, just drop me a message on Hackaday.io. That’s it for this week’s Hacklet, As always, see you next week. Same hack time, same hack channel, bringing you the best of Hackaday.io!

How I²C EEPROM Talks To The Bus

You will probably be familiar with I²C, a serial bus typically used for not-very-fast communication with microcontroller peripherals. It’s likely though that unless you are an I²C wizard you won’t be intimately familiar with the intricacies of its operation, and each new device will bring a lengthy spell of studying data sheets and head-scratching.

If the previous paragraph describes you, read on. [Clint Stevenson] wrote a library for interfacing I²C EEPROMs to Arduino platforms, and when a user found a bug when using it on an ATtiny85, he wrote up his solution. The resulting piece is a clear explanation of how I²C EEPROMs talk to the bus, the various operations you can perform on them, and the overhead each places on the bus. He then goes on to explain EEPROM timing, and how since it takes the device a while to perform each task, the microcontroller must be sure it has completed before moving to the next one.

In the case of [Clint]’s library, the problem turned out to be a minor incompatibility with the Arduino Wire library over handling I²C start conditions. I²C has a clock and a data line, both of which are high when no tasks are being performed. A start condition indicates to the devices on the bus that something is about to happen, and is indicated by the data line going low while the clock line stays high for a while before the clock line starts up and the data line carries the I²C command. He’s posted samples of code on the page linked above, and you can find his library in his GitHub repository.

If you want to know more about I²C, take a look at Hackaday Editor [Elliot Williams’] masterclasses on the subject: What could go wrong, I²C edition, and Embed With Elliot, I²C bus scanning.

Serial EEPROM die picture, By Epop (Own work) [CC0], via Wikimedia Commons.

Open Source SNES To USB Converter Lets You Emulate Legally

[Andrew Milkovich] was inspired build his own Super Nintendo cartridge reader based on a device we covered an eternity (in internet years) ago. The device mounts a real cartridge as a USB mass storage device, allowing you to play your games using an emulator directly from the cart.

This uses a Teensy++ 2.0  at its core. [Andrew] had to desolder the EEPROM pins from the SNES cartridge and reverse engineer the pinouts himself, but the end result was a device that could successfully read the cartridge without erasing it, no small accomplishment. The finished cartridge reader is build on some protoboard and we’d like to complement [Andrew] on his jumper routing on the underside of that board.

Of course, the experience of any console is just not the same without the original controller. So [Andrew] went a step further and made his own SNES controller to USB converter. This had the venerable Atmel ATmega328 at its core, and can be used separate from the cartridge reader if desired.