In an effort listen to his music on shuffle without the need to touch the volume knob [Mike] build his own automatic volume leveling hardware. He knows what you’re thinking right now: there’s software to do that for you. But building the feature in hardware is a great stepping off point for a project.
He started the prototype using LabVIEW along with a Mobile Studio development board and a Bus Pirate. This project will be a mix of digital and analog components and it’s a bit easier starting off the exploration with these tools rather than jumping right into the AVR code.
The circuit will sample the incoming audio, modify it accordingly, and output the result. The output side is where the Bus Pirate really shines. He’s using some MCP42010 digital potentiometer chips to make the necessary changes to the levels. They communicate via SPI and it’s nice to have the Bus Pirate’s terminal to issue commands without the need to reflash a microcontroller.
[Mike] made a video showing an audio waveform with and without the hardware leveling. Sound quality is still great, and each clip is played at a reasonably comfortable listening level. We’ve embedded that demonstration after the break.
Continue reading “Microcontroller based audio volume level compressor”
[Fezoj] likes to play around with microcontrollers and decided that he wanted to try a Bus Pirate as a new tool in his adventures. Since it’s open hardware he had his own board made and populated it himself. The trouble is, he works only with AVR chips and doesn’t have a PIC programmer. No problem, he figured out how to flash the PIC24FJ using an ATmega8.
To get started, he grabbed a copy of the flash programming specifications from Microchip. Once he had implemented the protocol in the AVR code, it was just a matter of getting the downloaded PIC firmware to the AVR. An RS232 chip gives him the serial connection he needs, with the help of his own programming software written with Visual Studio.
It’s not a robust solution for prototyping on the PIC platform, but maybe it could be developed for that purpose. For now, all he needed was a bootloader so that he could flash the Bus Pirate via a USB connection.
[via Dangerous Prototypes]
The team at nonolith labs announced their CEE, a device for billed as, “an analog buspirate” that is meant to control, experiment, and explore the world of analog electronics. Nonolith labs started a kickstarter campaign for the CEE.
The CEE is capable of sub-millivolt and milliamp sampling at 44.1k samples/second, and sourcing 2 channels of 5V @ 2A with a little bit of soldering. This allows for precise control of motors and sensors with the web-based UI. We’re thinking this would be a great way to teach high schoolers the art of electronics, and would be great combined with a few lectures from Paul Horowitz.
The CEE ties into nonolith labs Pixelpulse, a pretty handy tool for visualizing analog and digital signals. You can check out a demo of Pixelpulse simulating a charging capacitor here.
We’re hoping this focus on education on analog electronics catches on – you can learn a lot more by building a 555-based mini Segway than you can slapping a microcontroller in every project. This would go under the same theory as, “any idiot can count to one.”
Check out the video of the CEE on the kickstarter campaign page.
It’s fun to pick apart code, but it gets more difficult when you’re talking about binaries. [Joby Taffey] opened up the secrets to one of [Travis Goodspeed’s] hacks by disassembling and sniffing the data from a Zombie Gotcha game binary.
We looked in on [Travis’] work yesterday at creating a game using sprites on the IM-ME. He challenged readers to extract the 1-bit sprites from an iHex binary and that’s what got [Joby] started. He first tried to sniff the LCD data traces using a Bus Pirate but soon found the clock signal was much too fast for the device to reliably capture the signals. After looking into available source code from other IM-ME hacks [Joby] found how the SPI baud rate is set, then went to work searching for that in a disassembly of [Travis’] binary. Once found, he worked through the math necessary to slow down communication from 2.7 Mbit/s to 2400 bps and altered the binary data to match that change. This slower speed is more amenable to the Bus Pirate’s capabilities and allowed him to dump the sprite data as it was sent to the LCD screen.
[Koala] was worried his pseudo smart card trick wouldn’t be considered a HackaDay worthy. We’re more worried the internet police will find this article and have us all tarred and feathered.
Jokes aside, it seems Laundromat owners sure aren’t learning. Long story short, using a Bus Pirate and a few techniques we’ve seen before for smart card hacking [Koala] is able to write whatever amount he needs onto his pseudo smart card; thus giving him a free load of laundry.
If you’re like us you’ve got quite a few prototyping tools that are bare PCB boards. If you’re using them a lot you might want to protect them with some type of case but the lack of mounting holes can make this difficult. One popular solution to this problem is to design a case for a perfect fit, then cut it with a laser or print it out of plastic. We’ve got examples of both.
[Stewart Allen] set to work designing laser cut cases for the AVR Dragon and the Bus Pirate V2go after seeing our post about on-the-go prototyping. We think this is especially important if you have an AVR Dragon as it’s been known to bite the dust if the bottom is shorted out. If you have access to a laser cutter you can download is DXF files and the models and cut your own.
If you don’t have a laser cutter but can get some time with a 3D printer check out the Bus Pirate V2go printed case and the Arduino printed case.
Sometimes your project needs a lot of non-volatile ROM, right on cue [Matthew] let us know how to not only connect, interface, read, and write to SD cards with a PIC over serial, but also how to do the above mentioned with an old PATA HDD. For those without a PIC/serial connection don’t fret, [nada] let us know about his Bus Pirate SD card hack, of which our personal favorite part is the creative use of an old 5.25″ floppy connector as the SD card socket.