A Clockwork Cradle is Baby’s First Escapement

[Scott] doesn’t have any kids, but he’s the sort of type that likes to get ahead of the game. Of course this means spending time in his garage to build a rocking cradle. Usually, these are acquired from a baby shower and are powered by batteries. Terribly uncool, considering a mechanism to keep a pendulum swinging has existed for hundreds of years now. His latest project is the escapement cradle – a cradle (or hammock) that keeps rocking with the help of falling weights.

cradle-escapementThe first video in this series goes over the inspiration and the math behind determining how much energy it will take to maintain a swinging pendulum. The second video goes over a very rough prototype for the escapement mechanism with some woodworking that looks dangerous but is kept well under control. The third video puts everything together, rocking a cradle for about 10 minutes for every time the weight is lifted to the top.

[Scott] has had a few of his projects featured on Hackaday, and he’s slowly becoming the number two mechanized woodworker, right behind [Matthais]. He recently put the finishing touches on the expanding wooden table we saw a year ago, and there are surely even cooler builds in the queue for his YouTube channel.

Continue reading “A Clockwork Cradle is Baby’s First Escapement”

Building the Infinite Matrix of Tamagotchis

Tamogachi is a digital pet, living in and cared for through a key-chain size piece of hardware. The mid-90’s toy lives in pop culture, but now it lives well beyond. A limitless network of Tamagachi has been created using some amazing tricks to feed, socialize, and monitor the beast now known as the Tamagachi Singularity.

Last weekend at the Hackaday SuperConference we were graced with a talk by [Jeroen Domburg], a.k.a. [Sprite_tm]. [Sprite] is a favorite of ours and over the years his hacker cred includes everything from reverse engineering hard drive controller chips to putting video games in his keyboard.

[Sprite] is also something of an Architect, and like all Architects he only wants what is best for the system he created. In this case, it’s a Matrix of Tamagotchis. [Sprite] created a hive of Tamagotchis that are able to interact with each other in their own separate world. The best part about this Matrix? There’s no allusions to violating the laws of thermodynamics in the exposition.


Like all good hacks, a Tamagotchi Matrix wasn’t created in a vacuum. A few years ago at 29C3, [Natalie Silvanovich] dumped the ROM in the current generation of Tamagotchis. This is an incredible feat of reverse engineering, that allows anyone to use the full capabilities of the 6502-based microcontroller that controls these digital pets

After [Sprite] figured out how to read and run the code in the Tamagotchi, the next obvious step towards a world of egg-shaped pods containing an entire population of Tamagotchis is virtual Tamagotchis. [Sprite] used a hard-coded state machine that takes care of pooping, flushing, training, feeding, and turning the lights off at bedtime.

With a single Tamagotchi described as a state machine, it’s a simple matter to build another. This is where things get interesting and Matrix-ey. Tamagotchis don’t live alone; they have an IR LED and receiver that allows them to interact with each other, eat, play, marry, and have kids. Emulating a single Tamagotchi is one thing, but controlling multiples is another thing entirely; some sort of protocol was needed to breed Tamagotchis and keep them happy and well-fed.

Continue reading “Building the Infinite Matrix of Tamagotchis”

The Nvidia Jetson TX1: It’s Not For Everybody, But It Is Very Cool

Last week, the Nvidia Jetson TX1 was released. This credit card-sized module is a ‘supercomputer’ advertised as having more processing power than the latest Intel Core i7s, while running at under 10 Watts. This is supposedly the device that will power the next generation of things, using technologies unheard of in the embedded world.

A modern day smartphone could have been built 10 or 15 years ago. There’s no question the processing power was there with laptop CPUs, and the tiny mechanical hard drives in the original iPod was more than spacious enough to hold a library of Napster’d MP3s and all your phone contacts. The battery for this sesquidecadal smartphone, on the other hand, was impossible. The future depends on batteries and consequently low power computing. Is the Jetson TX1 the board that will deliver us into the future? It took a hands-on look to find out.

The Nvidia Jetson TX1 and Carrier Board

What is the TX1

The Jetson TX1 is a tiny module – 50x87mm – encased in a heat sink that brings the volume to about the same size as a pack of cigarettes. Underneath a block of aluminum is an Nvidia Tegra X1, a module that combines a 64-bit quad-core ARM Cortex-A57 CPU with a 256-core Maxwell GPU. The module is equipped with 4GB of LPDDR4-3200, 16GB of eMMC Flash, 802.11ac WiFi, and Bluetooth.

This module connects to the outside world through a 400-pin connector (from Samtec, a company quite liberal with product samples, by the way) that provides six CSI outputs for a half-dozen Raspberry Pi-style cameras, two DSI outputs, 1 eDP 1.4, 1 eDP 1.2, and HDMI 2.0 for displays. Storage is provided through either SD cards or SATA. Other ports include three USB 3.0, three USB 2.0, Gigabit Ethernet, a PCIe x1 and PCIe x4, and a host of GPIOs, UARTs, SPI and I2C busses.

The only way of getting at all these extra ports is, at the moment, the Jetson TX1 carrier board, a board that is effectively a MiniITX motherboard. Mount this carrier board in a case, modify a power supply and figure out how to wire up the front panel buttons, and you’ll have a respectable desktop computer.

This is not a desktop computer, though, and it’s not a replacement for a Raspberry Pi or Beaglebone. This is an engineering tool – a device built to handle the advanced robotics work of the future.


No tech review would be complete without benchmarks, and since this is an Nvidia board, that means a deep dive into the graphics performance.

The review unit Nvidia sent over came with an incredible amount of documentation, pointing me towards GFXBench 4.0 Manhattan 3.1 (and the T-rex one) to test the graphics performance.


In terms of graphics performance, the TX1 isn’t that much different from a run-of-the-mill mobile chipset from a few years ago. This is to be expected; it’s unreasonable to expect Nvidia to put a Titan in a 10 Watt module; the Titan itself sucks up about 250 Watts.

test suiteWhat about CPU performance? The ARM Cortex A57 isn’t seen very much in tiny credit-card sized dev boards, but there are a few actual products out there with it.  The TX1 isn’t a powerhouse by any means, but it does trounce the Raspberry Pi 2 Model B in testing by a factor of about three.

Compared to desktop/x86 performance, the best benchmarks again put the Nvidia TX1 in the same territory as a middling desktop from a few years ago. Still, that desktop probably draws about 300 W total, where the TX1 sips a meager 10 W.

This is not the board you want if you’re mining Bitcoins, and it’s not the board you should use if you need a powerful, portable device that can connect to anything. It’s for custom designs. The Nvidia TX1 is a module that’s meant to be integrated into products. It’s not a board for ‘makers’ and it’s not designed to be. It’s a board for engineers that need enough power in a reasonably small package that doesn’t drain batteries.

With an ARM Cortex A57 quad core running at almost 2 GHz, 4 GB of RAM, and a reasonably powerful graphics card for the power budget, the Nvidia TX1 is far beyond the usual tiny Linux boards. It’s far beyond the Raspi, the newest Beagleboard, and gives the Intel NUC boards a run for their money.

That huge and heavy heatsink is useful; while benchmarking the TX1, temperatures were only one or two degrees above ambient
That huge and heavy heatsink is useful; while benchmarking the TX1, temperatures were only one or two degrees above ambient

In terms of absolute power, the TX1 is about as powerful as a entry-level laptop from three or four years ago.

The Jetson TX1 is all about performance per Watt. That’s exceptional, new, and exciting; it’s something that simply hasn’t been done before. If you believe the reams of technical documents Nvidia granted me access to, it’s the first step to a world of truly smart embedded devices that have a grasp on computer vision, machine learning, and a bunch of other stuff that hasn’t really found its way into the embedded world yet.

Alexnex images processed per second per watt. No, Joules do not exist.
Alexnex images processed per second per Watt. No, Joules do not exist.

And here lies the problem with the Jetson TX1; because a platform like this hasn’t been available before, the development stack, examples, and community of users simply isn’t there yet. The number of people contributing to the Nvidia embedded systems forum is tiny – our Hackaday articles get more comments than a thread on the Nvidia forums. Like all new platforms, the only thing missing is the community, putting Nvidia in a chicken and egg scenario.

This a platform for engineers. Specifically, engineers who are building autonomous golf carts and cars, quadcopters that follow you around, and robots that could pass a Turing test for at least 30 seconds. It’s an incredible piece of hardware, but not one designed to be a computer that sits next to a TV. The TX1 is an engineering tool that’s meant to go into other devices.

Alternative Applications, Like Gamecube

With that said, there are a few very interesting applications I could see the TX1 being used for. My car needs a new head unit, and building one with the TX1 would future proof it for at least another 200,000 miles. For the very highly skilled amateur engineers, the TX1 module opens a lot of doors. Six webcams is something a lot of artists would probably like to experiment with, and two DSI outputs – and a graphics card – would allow for some very interesting user interfaces.

That said, the TX1 carrier board is not the breakout board for these applications. I’d like to see something like what Sparkfun put together for the Intel Edison – dozens of breakout boards for every imaginable use case. The PCB files for the TX1 carrier board are available through the Nvidia developer’s portal (hope you like OrCAD), and Samtec, the supplier for the 400-pin connector used for the module, is exceedingly easy to work with. It’s not unreasonable for someone with a reflow toaster oven to create a breakout for the TX1 that’s far more convenient than a Mini-ITX motherboard.

Right now there aren’t many computers with ARM processors and this amount of horsepower out now. Impressively powerful ARM boards, such as the new BeagleBoard X15 and those that follow the 96Boards specification exist, but these do not have a modern graphics card baked into the module.

Without someone out there doing the grunt work of making applications with mass appeal work with the TX1, it’s impossible to say how well this board performs at emulating a GameCube, or any other general purpose application. The hardware is probably there, but the reviewers for the TX1 have been given less than a week to StackOverflow their way through a compatible build for the most demanding applications this board wasn’t designed for.

It’s all about efficiency

Is the TX1 a ‘supercomputer on a module’? Yes, and no. While it does perform reasonably well at machine learning tasks compared to the latest core-i7 CPUs, the Alexnet machine learning tasks are a task best suited for GPUs. It’s like asking which flies better: a Cessna 172 or a Bugatti Veyron? The Cessna is by far the better flying machine, but if you’re looking for a ‘supercomputer’, you might want to look at a 747 or C-5 Galaxy.

On the other hand, there aren’t many boards or modules out there at the intersection of high-powered ARM boards with a GPU and on a 10 Watt power budget. It’s something that’s needed to build the machines, robots, and autonomous devices of the future. But even then it’s still a niche product.

I can’t wait to see a community pop up around the TX1. With a few phone calls to Samtec, a few hours in KiCad, and a group buy for the module itself ($299 USD in 1000 unit quantities), this could be the start of something very, very interesting.

Pip Boys As A Service

A few weeks ago Fallout 4 was released, and like all future games of the year, productivity has fallen through the floor, cosplayers are busy crafting outfits, and modders are busy tearing the game to pieces. As with all big game releases, Fallout 4 has a super-deluxe, ultra-collectible edition, and this version comes with its own Pip Boy, the in-game wrist-mounted user interface that manages stats, inventory, and quests.

This Pip Boy is actually functional, relying on a smartphone to mirror the display in-game Pip Boy. This, of course, means there must be some sort of communication between the game and a phone. [Kyle] found this somewhat interesting and decided to dig into these communications to see what else could be done with the real life mirror of the in-game Pip Boy

With a simple swipe of nmap, [Kyle] discovered two ports open on his PS4. By creating a relay to listen in on whatever is passing through these ports, [Kyle] built a tool that allows anyone to dump data from the in-game Pip Boy to any other service.

The library and command line tool work with PS4 and PC and are able to dump stats and data from the in-game Pip Boy to the outside world. It will be interesting to see what kind of mashups could be created with this; especially interesting would be a leaderboard for an entire office of vault dwellers, but a TV-sized Pip Boy would also suffice.

Yes, that is a challenge.

3 Billion Devices And A Sega Genesis Run Java

A few years ago, [Mike]’s friend gave him an old Sega Genesis with the very cool and somewhat rare SegaCD drive attached. The SegaCD gave him an idea – while it’s not easy to burn a cartridge and play homebrew games on a real Genesis console, everyone has a CD burner somewhere. [Mike] began writing his demo and then realized adding Java would be easy on the 68000. The result is Java on three billion devices and a Sega Genesis.

This project is built around Java Grinder a Java byte code compiler that will compile classes, factories, and all the horrible Java design.design.pattern.pattern.patterns() into assembly language. Already, there are a lot of platforms supported by Java Grinder, including the Commodore 64, the TI99, and thanks to some work from [Joe Davisson], the Apple IIgs

With a byte code compiler, an assembler, and an API for the Sega-specific hardware, [Mike] set about building his demo. Since this was a Sega, it needed the ‘SEGA’ sound at the start. [Mike] ended up recording his voice saying ‘JAVA!’ This plays through the Z80 on the Genesis.

The complete demo – viewable in its emulated format below – has everything you would expect from a proper demo. Starfields, dancing sprites, and even a Mandelbrot pattern make it into the three-minute long demo.

Continue reading “3 Billion Devices And A Sega Genesis Run Java”

Hackaday Links: November 22, 2015

There’s a new documentary series on Al Jazeera called Rebel Geeks that looks at the people who make the stuff everyone uses. The latest 25-minute part of the series is with [Massimo], chief of the arduino.cc camp. Upcoming episodes include Twitter co-creator [Evan Henshaw-Plath] and people in the Madrid government who are trying to build a direct democracy for the city on the Internet.

Despite being a WiFi device, the ESP8266 is surprisingly great at being an Internet of Thing. The only problem is the range. No worries; you can use the ESP as a WiFi repeater that will get you about 0.5km further for each additional repeater node. Power is of course required, but you can stuff everything inside a cell phone charger.

I’ve said it before and I’ll say it again: the most common use for the Raspberry Pi is a vintage console emulator. Now there’s a Kickstarter for a dedicated tabletop Raspi emulation case that actually looks good.

Pogo pins are the go-to solution for putting firmware on hundreds of boards. These tiny spring-loaded pins give you a programming rig that’s easy to attach and detach without any soldering whatsoever. [Tom] needed to program a few dozen boards in a short amount of time, didn’t have any pogo pins, and didn’t want to solder a header to each board. The solution? Pull the pins out of a female header. It works in a pinch, but you probably want a better solution for a more permanent setup.

Half of building a PCB is getting parts and pinouts right. [Josef] is working on a tool to at least semi-automate the importing of pinout tables from datasheets into KiCad. This is a very, very hard problem, and if it’s half right half the time, that’s a tremendous accomplishment.

Last summer, [Voja] wrote something for the blog on building enclosures from FR4. Over on Hackaday.io he’s working on a project, and it’s time for that project to get an enclosure. The results are amazing and leave us wondering why we don’t see this technique more often.

Building A Better 3D Printed Gun

Back in 2013, [Cody Wilson] of Defense Distributed designed and built the world’s first completely 3D printed pistol. He called his gun the Liberator, after a World War II-era single-shot pistol designed to be cheap and easy to manufacture, easy to conceal, and for members of the French Resistance, ‘a great gun to obtain a better gun’.

cyl[Cody]’s Liberator turned out to be a great gun to obtain two or three fewer fingers. Not only was this a single-shot pistol, it was a single barrel pistol; with each round fired requiring a new 3D printed barrel. Tests were carried out, explosions happened, and we couldn’t even get the thing to print. For all the media hubbub, for all the concerned legislators, the first 3D printed pistol was much ado about nothing.

3D printers are still an extremely interesting technology, and if history has proved one thing, it’s that engineers and tinkerers will keep building guns. Last week, [James Patrick] released his latest design for a working 3D printed gun. It still fires the .22lr of the Liberator, but this is a double action revolver, it won’t blow up, and if you drop it, it won’t discharge. It’s the little things that count.

[James]’ revolver is either a 6 or 8-shot revolver uses a pepper-box design, where the gun has multiple chambers and barrels in one gigantic cylinder. The double action design first rotates the cylinder to the next chamber, pulls back a striker loaded up with a firing pin nail, and (hopefully) fires a round. In the video below, [James] goes over the design of his action, and ends up showing off a few test firings of his newly designed gun.

What’s very interesting about this build is how closely the development of 3D printed firearms is following the development of historical firearms. First, we had guns that probably shouldn’t be fired, ever. Now, the technology for 3D printed guns is about up to 1830 or thereabouts. Give it a few more years and we’ll be up to 1911.

Disclaimer: if you live in the US and think this sort of thing should be illegal, contact your state representative and tell them you support a constitutional convention to remove the personal right to own and operate firearms. This right has been upheld many, many times by the judiciary, and a constitutional convention is the only way your wishes could be carried out. Your state representative probably doesn’t read Hackaday; there is no need to comment here. Let’s talk about engineering and technology instead.

Continue reading “Building A Better 3D Printed Gun”