ARM Prototyping On-the-cheap With STM32 Discovery

STMicroelectronics has another inexpensive development board out; the STM32 Discovery is an ARM Cortex-M3 prototyping platform. Coming in under $10 puts it right along the lines of their 8-bit offering, but this one is 32-bits with 5 KB of RAM and 128 KB of programming memory. It runs a bootloader and has on-board USB for easy programming. They’ve even got a trio of crippled IDE’s to get you started.

Unfortunately this is following a growing trend with the exclusion of Linux support. [Gordon] wrote in to let us know that there is hope in a couple of forms (but not using the USB functionality). The first is a serial programmer using the RS232 that [Paul] came up with (there’s a lot more on his blog so spend some time there). But you can also use the serial debug protocol to program the board.

Either way you’ll still need a method of compiling the code. We’ve had great success rolling our own GNU ARM cross compiler using this guide. Or you can grab a pre-built package by downloading Sourcery G++ lite.

How-to: Bus Pirate V1, Improved Universal Serial Interface

front450a

We use the Bus Pirate to interface a new chip without writing code or designing a PCB. Based on your feedback, and our experience using the original Bus Pirate to demonstrate various parts, we updated the design with new features and cheaper components.

There’s also a firmware update for both Bus Pirate hardware versions, with bug fixes, and a PC AT keyboard decoder. Check out the new Hack a Day Bus Pirate page, and browse the Bus Pirate source code in our Google code SVN repository.

We cover the design updates and interface a digital to analog converter below.

Continue reading “How-to: Bus Pirate V1, Improved Universal Serial Interface”

How-to: Programmable Logic Devices (CPLD)

Complex programmable logic devices (CPLDs) contain the building blocks for hundreds of 7400-serries logic ICs. Complete circuits can be designed on a PC and then uploaded to a CPLD for instant implementation. A microcontroller connected to a CPLD is like a microcontroller paired with a reprogrammable circuit board and a fully stocked electronics store.

At first we weren’t sure of the wide appeal and application of CPLDs in hobbyist projects, but we’ve been convinced. A custom logic device can eliminate days of reading datasheets, finding the ideal logic IC combination, and then waiting for chips to arrive. Circuit boards are simpler with CPLDs because a single chip with programmable pin placement can replace 100s of individual logic ICs. Circuit mistakes can be corrected by uploading a new design, rather than etching and stuffing a new circuit board. CPLDs are fast, with reaction times starting at 100MHz. Despite their extreme versatility, CPLDs are a mature technology with chips starting at $1.

We’ve got a home-etchable, self programming development board to get you started. Don’t worry, this board has a serial port interface for working with the CPLD, and doesn’t require a separate (usually parallel port) JTAG programmer.

Continue reading “How-to: Programmable Logic Devices (CPLD)”

Bus Pirate Firmware Update (v.0c), JTAG And More

stat

Download: buspirate.v0c.zip

A few weeks ago we wrote about our Bus Pirate universal serial interface tool. We used the recent holiday to add some new features, like a JTAG programmer, macros, frequency measurement, and more. A major code reorganization makes everything easier to read and update.

Check out the a demonstration of the new features below. We’re compiling a roadmap and wish list, so share your ideas in the comments. You can also see how we used the Bus Pirate to read a smart card and test-drive an I2C crystal oscillator.

Continue reading “Bus Pirate Firmware Update (v.0c), JTAG And More”

How-to: The Bus Pirate, Universal Serial Interface

UPDATE: New firmware with JTAG and more

We’re always excited to get a new chip or SIM card to interface, but our enthusiasm is often dampened by the prototyping process. Interfacing any chip usually means breadboarding a circuit, writing code, and hauling out the programmer; maybe even a prototyping PCB.

A few years ago we built the first ‘Bus Pirate’, a universal bus interface that talks to most chips from a PC serial terminal. Several standard serial protocols are supported at 3.3-5volts, including I2C, SPI, and asynchronous serial. Additional ‘raw’ 2- and 3- wire libraries can interface almost any proprietary serial protocols. Since this has been such a useful tool for us, we cleaned up the code, documented the design, and released it here with specs, schematic, and source code.

Continue reading “How-to: The Bus Pirate, Universal Serial Interface”

Tiny Cubic PC


We’ve been watching the progress of the Space Cube since 2004, but PC Pro managed to get their hands on it first. Developed by the Shimafuji Corporation, it comes with 16 megabytes of flash memory and a version of Red Hat is run off a 1 gigabyte CompactFlash card. The design of the Space Cube is pretty minimal, but it’s got the basics down, from a USB port to a VGA output and a D-SUB RS232 input, and even an Ethernet port. The most interesting thing about it is the Space Wire port, which is a proprietary interface use by NASA, the ESA, and JAXA for outer space. Unfortunately for working hackers, this ingenious micro-computer will set you back about £1,500.

[via NOTCOT]

Custom Modular Control Interfaces


Machinecollective.org is bringing rapid prototyping to every day artists and hackers. We’ve covered similar interfaces like the monome, MIDIbox, and Stribe. Machinecollective allows you to make your own input system using multiple blocks to get exactly what you want. The setup allows you to fit pretty much anything in a block that you can think of. They’re developing potentiometers, slide potentiometers, button grids, toggle switches, LCD’s, FSR/LDR’s, velocity sensitive pads, and touch screens.

Currently, they support software enviroments like: Processing, Max/MSP, VVVV, and Adobe Flash. That list will undoubtedly grow as the community plays with it. They envision the hardware connecting via MIDI, OSC, RS232, TCP/UDP, DMX, or USB.

They encourage others to design their own inputs. Community members can share modifications and designs, though there isn’t a forum or store yet. If you design a setup that you really like, they can even fabricate a single unit for you. Keep your eyes on this one, it could be a real hit.

A similar idea for general gadgetry can be seen over at Bug Labs. Starting with a base unit, you can add different input and output modules to create various useful functions. They currently offer GPS, a camera, a display, and motion sensing. Mix and match to make your dream gadget.