A Complete C64 System, Emulated on an STM32

The Commodore 64 is the worlds bestselling computer, and we’re pretty sure most programmers and engineers above a certain age owe at least some of their career to this brown/beige keyboard that’s also a computer. These engineers are all grown up now, and it’s about time for a few remakes. [Jeri Ellisworth] owes her success to her version, there are innumerable pieces of the C64 circuit floating around for various microcontrollers, and now [Mathias] has emulated everything (except the SID, that’s still black magic) in a single ARM microcontroller.

On the project page, [Mathais] goes over the capabilities of his board. It uses the STM32F4, overclocked to 235 MHz. There’s a display controller for a 7″ 800×480 TFT, and 4GB of memory for a library of C64 games. Without the display, the entire project is just a bit bigger than a business card. With the display, it’s effectively a C64 tablet, keyboard not included.

This is a direct emulation of the C64, down to individual opcodes in the 6510 CPU of the original. Everything in the original system is emulated, from the VIC, CIAs and VIAs, serial ports, and even the CPU of the 1541 disk drive. The only thing not emulated is the SID chip. That cherished chip sits on a ZIF socket for the amazement of onlookers.

You can check out some images of the build here, or the video demo below.

Continue reading “A Complete C64 System, Emulated on an STM32”

Build a Better Something During the Deconstruction 2014

Couldn’t make it to Detroit for the Red Bull Creation Contest? Its founder, [Jason Naumoff], has a separate event called The Deconstruction and 2014 marks the second year of this lively, worldwide competition.

The Deconstruction is taking place November 14-16th and will be broadcast live online. That’s right, you can participate from anywhere in the world, and your team’s progress will be live streamed from The Omni Commons in Oakland, CA. Registration began October 16th and the friendly competition is absolutely free to enter.

Creativity is the name of this game. The idea is to build something awesome using what you already have access to, including teamwork skills. Ideally, what you build will be a deconstruction of something you’d like to see rethought, though there is no stated topic. There are no age limits, no boundaries, and very few rules. A number of great things came out of last year’s event, more of which you can check out at their site. What are you waiting for? Go show the world how you’d make it better.

Another Internet of Things Board (But This One Has Lisp)

Using routers as dev boards has been a long and cherished tradition in the circles we frequent, and finally design houses in China are taking notice. There have been a few ‘Internet of Things’ boards in recent months that have taken the SoC found in low-end routers, packaged the on a board with USB, some GPIOs, and a fair bit of memory and called it a dev board. The ZERO Plus is not an exception to this trend, but it does include a very interesting feature when it comes to the development environment: this one uses Lisp as its native language.

The Zero Plus is pretty much what you would expect from a router SoC being transplanted to an Internet of Things board: it uses the Ralink RT5350 SoC, giving it 802.11b/g/n, has 32MB of RAM, 8 or 16 M of Flash, I2C, I2S, SPI, USB, two UARTs, and 14 GPIOs. There is support for a webcam, temperature and humidity sensor, displays, and Arduino via a breakout board that appears to contain a standard, DIP-sized ATMega328,

All of that could be found in dozens of other boards, though. What really sets this one apart is the Lisp development environment. Programming the Zero is exactly as elegant as you would expect, with a ‘toggle a LED according to what time it is’ program looking something like this:

(define LED_On (lambda ()(dev.gpio 11 "out" 1)))
 (define LED_Off (lambda ()(dev.gpio 11 "out" 0)))
 (define CurrentTime? (lambda ()
    (int (time.strftime "%H" (time.localtime (time.time))))))
       (define Night?
          (lambda ()
            (> ( CurrentTime? ) 16) (< ( CurrentTime? ) 23)
 (if (Night?) (LED_On) (LED_Off)

Dev boards built around somewhat more esoteric programming language isn’t anything new; The Espruino brings Javascript to ARM microcontrollers, and the MicroPython project is an astonishing undertaking and successful Kickstarter that brings the BASIC for the 21st century to the embedded world. Lisp, though… I don’t think anyone expected that. It’s a great way to differentiate your product, though.

I Love the Smell of Rocket Candy in the Morning

[Grant Thompson aka “The King of Random”] has created a great tutorial on making sugar rocket motors. [Grant] is using a fuel based on potassium nitrate and sugar. Known as Rocket Candy or R-Candy in the amateur rocket community, various forms of this mixture have been used for decades. In fact, this is similar to one of the mixtures [Homer Hickam] and friends used to build rockets in his novel Rocket Boys.

[Grant] bought a cheap blender from the thrift store, which he used to grind his ingredients. You probably won’t want to use this blender for food after it’s been full of KNO3-based stump remover. The blender made quick work of grinding down the KNO3 to a fine powder. [Grant] then added in powdered sugar and carefully mixed the two by shaking, not by running the blender.

A 5″ length of schedule 40 PVC pipe made the rocket motor casing. The rocket motor’s end caps are made from ground clay cat litter. [Grant] rams the layers with a wooden dowel and hammer. First a top cap of clay, then the rocket fuel, then a bottom cap also of clay. With all the layers in place, he hand drilled a hole through the bottom cap and the entire fuel layer. Drilling all the way through turns the motor into a core burning rocket. The entire fuel cylinder burns away from the inside out, with more surface area than burning the end alone.

[Grant] tested his rocket motor at a remote location. We probably would have gone with an electric igniter rather than a fireworks style fuse, but the end result is the same. The rocket motor performed admirably, blasting up to over 2000 feet in altitude.

It goes without saying that working with solid rocket fuel isn’t something to be taken lightly. Something as simple as an air gap in the fuel could lead to a CATO, turning this rocket motor into a pipe bomb. We echo [Grant’s] suggestion to search for local amateur rocket clubs before trying this one at home.

Continue reading “I Love the Smell of Rocket Candy in the Morning”

Destroy your Volkswagen Touch Adapter for Bluetooth’s Sake

[Mansour]’s Volkswagen Polo has a touch-screen adapter with voice recognition to control a bunch of the car’s features, but he wanted it gone.

Voice control of your car sounds like a great thing, right? Well, the touch adapter blocked other Bluetooth devices from connecting directly to the car, and prevented him from streaming music from his phone while he’s connecting it through the adapter. But if you simply throw the adapter away, the car won’t connect to any Bluetooth devices.

So what options are left? Other than a couple of expensive or complicated options, [Mansour] decided to open up the device and desolder the Bluetooth chip and antenna. Admittedly, it’s not the deepest hack in the world, but we’ve gotta give [Mansour] credit for taking the technology into his own hands.

Disabling unwanted functionality is not uncommon these days. Who hasn’t stuck tape over their laptop’s camera or kept an RFID card in a Faraday wallet? What other devices have you had to “break” in order to make them work for you?

Fail of the Week: Project Frosty Mug is Merely Chilly

Like many of us, [C] enjoys an ice-cold, refreshing soda while coding. Driven by a strong desire to keep a soda ice-cold indefinitely without using ice, [C] started Project Frosty Mug.

[C]’s stated goal is to keep a 20oz plastic bottle of soda at ~35F indefinitely while it sits in a room temperature environment. He started with a thermoelectric unit to cool an aluminium disc, like a cold coaster. Builds one and two made him realize that dealing with the generated heat was a big issue: it got so hot that it deformed the PLA frame. [C] also realized that bottom-only cooling wasn’t going to get the job done.

This project is now in its third build, which is pictured above. As you can see, it’s more koozie than coaster. That 3-D printed holster is lined with aluminium sheeting. Another flat piece covers the opening and attaches to the cooling element. A beefy CPU heat sink does its best, and a couple of U-brackets hold it all together.

[C]’s tested it with a glass bottle of Diet Sun Drop chilled to 38F. After 30 minutes in an ambient temperature of ~70F, the soda measured 45F. [C] lamented having not used a control bottle for comparison and reports that the power supply became quite warm. [C] isn’t going to give up that easily. Do you have any ideas for the fourth build?

Editor’s Note: This is one of the last Fail of the Week tips we have stored up. If you want to see the series continue on a weekly basis, we need help finding more documented fails! Please look back through your projects and document the ones that didn’t go quite right. We also encourage you to send in links to other fails you’ve found. Just drop the links in our tips line. Thanks!

2013-09-05-Hackaday-Fail-tips-tileFail of the Week is a Hackaday column which runs every Thursday. Help keep the fun rolling by writing about your past failures and sending us a link to the story — or sending in links to fail write ups you find in your Internet travels.


Turning the DEFCON Badge Into a Bitcoin Miner


The DEFCON badge this year was an impressive piece of hardware, complete with mind-bending puzzles, cap sense buttons, LEDs, and of course a Parallax Propeller. [mike] thought a chip as cool as the Propeller should be put to better use than just sitting around until next year so he turned it into a Bitcoin miner, netting him an astonishing 40 hashes per second.

Mining Bitcoins on hardware that doesn’t have much processing power to begin with (at least compared to the FPGAs and ASIC miners commonly used) meant [mike] would have to find some interesting ways to compute the SHA256 hashes that mining requires. He turned to RetroMiner, the Bitcoin miner made for an original Nintendo. Like the NES miner, [mike] is offloading the communication with the Bitcoin network to a host computer, but all of the actual math is handled by a single core on the Propeller.

Saving one core for communication with the host computer, a DEFCON badge could conceivably manage 280 hashes/second, meaning the processing power of all the badges made for DEFCON is about equal to a seven-year-old graphics card.