Listening to chiptunes on an emulator or software-based player is fine, but sometimes you just gotta have that real hardware charm. [Kazhuu] is one such enthusiast who feels this way, and set about building a hardware player for SNES chiptunes that can be controlled from a browser.
The build relies on an Arduino Micro to control the SNES Audio Processing Unit (APU), featuring the Nintendo S-SMP as produced by Sony and designed by Ken Kutaragi. Yes, the father of the PlayStation designed the capable wavetable synthesis chip in the Super Nintendo, and it’s that same hardware that [Kazhuu]’s project interfaces with modern hardware.
With the Arduino’s IO lines hooked up to the APU, song data can be piped out to the Arduino over a serial connection to a PC. This can be handled by a Python script, or more intuitively via a browser-based front-end. This uses WebUSB in order to take input from the browser and then send data out over the USB-serial connection to the Arduino.
It’s a neat demonstration of both working with vintage Nintendo sound hardware and how to code modern browser applications to work with embedded systems. If you’re a SEGA kid, though, you might prefer this build instead. Video after the break.
Continue reading “A SNES Music Player You Can Control With A Browser”
The pandemic has left my usual calendar of events in shambles this year. Where I’d have expected to have spent a significant portion of my summer mingling with our wonderful and diverse community worldwide, instead I’m sitting at home cracking open a solitary Club-Mate and listening to muffled techno music while trying to imagine myself in a field somewhere alongside several thousand hackers.
As a knock-on effect of the event cancellations there’s another thing missing this summer, the explosion of creativity in the world of electronic conference badges has faltered. Badges are thin on the ground this year, so the few that have made it to production are to be treasured as reminders that life goes on and there will be another golden summer of hacker camps in the future. This year, the CampZone 2020 badge was given its own voice and perform neat tricks like presenting a programming interface via WebUSB!
Continue reading “CampZone 2020 Badge Literally Speaks To Us”
When [gdarchen] wanted to read some NFC tags, he went through several iterations. First, he tried an Electron application, and then a client-server architecture. But his final iteration was to make a standalone reader with an Arduino and use WebUSB to connect to the application on the PC.
This sounds easy, but there were quite a few tricks required to make it work. He had to hack the board to get the NFC reader’s interrupt connected correctly because he was using a Leonardo board. But the biggest problem was enabling WebUSB support. There’s a library, but you have to change over your Arduino to use USB 2.1. It turns out that’s not hard, but there’s a caveat: Once you make this change you will need the WebUSB library in all your programs or Windows will refuse to recognize the Arduino and you won’t be able to easily reprogram it.
Once you fix those things, the rest is pretty easy. The PC side uses node.js. If you back up a level in the GitHub repository, you can see the earlier non-Arduino versions of the code, as well.
If you want to understand all the logic that went into the design, the author also included a slide show that discusses the three versions and their pros and cons. He did mention that he wanted a short-range solution so barcodes and QR codes were out. He also decided against RFID but didn’t really say why.
NFC business cards are a thing. You can also use them to catch some public transportation.