[Travis Goodspeed] posted a preview of what he’s working on for this Summer’s conferences. Last weekend he gave a quick demo of sniffing AES128 keys on Zigbee hardware at SOURCE Boston. The CC2420 radio module is used in many Zigbee/802.15.4 sensor networks and the keys have to be transferred over an SPI bus to the module. [Travis] used two syringe probes to monitor the clock line and the data on a TelosB mote, which uses the CC2420. Now that he has the capture, he’s planning on creating a script to automate finding the key.
spi136 Articles
Parts: 4×4 RGB Button Pad Controller SPI
We covered SparkFun’s new RGB button pad controller a few weeks ago. This is a full-color clone of the monome interface; a 4×4 grid of buttons with tri-color LEDs underneath. Each LED has 24bits of color control, for more than 16million color combinations. Up to 10 panels can be chained together to create huge button grids, like SparkFun’s Tetris table. We previously used a smaller version in our RGB combination lock.
We asked SparkFun to send us the SPI version of the button controller to test. This is a new product developed in-house at SparkFun, with open source hardware and software. Read about our experience interfacing this board below.
Parts: 32KB SPI SRAM Memory (23K256)
Microchip’s new 23K256 is a serially interfaced 32 kilobyte SRAM memory chip, available in 8 pin DIP and 8 pin SO packages. SRAM, like EEPROM, is a data storage medium. Data stored in SRAM is lost without constant power, but it’s really fast and there’s no limits to the number of write cycles. EERPOM stores data even without power, but it’s slow and usually limited to around a million write cycles.
32K SRAM chips typically have 15 address lines and 8 data lines, like the IS61LV256AL we used on our CPLD development board. The 23K256 requires just four signal lines, but sacrifices the speed of a parallel memory interface. It’s a great way to add extra memory to a low-pin count microcontroller without routing 23 signal traces. We’ll show you how to interface this chip below.
SparkFun Releases RGB Button Controller
SparkFun has been selling button pad parts for some time and we used them in our RGB door lock project. A excellent part, but you needed to implement your own interface to use the boards. SparkFun has just released two additional versions to make it easier on builders. The first is their Button Pad Controller USB. It has a 4×4 grid of buttons lit by RGB LEDs and a USB interface. This board can be expanded using the Button Pad Controller SPI. The SPI bus means it should be easy to add the button pad to embedded projects. This newest release puts you much closer to building your own RGB monome clone or other custom controller than ever before. The unit pictured above is their own project and they have no plans on selling anything like it.
How-to: Bus Pirate V1, Improved Universal Serial Interface
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”
Tennis Ball Fetcher
Reader [Julian von Mendel] and his team built this tennis ball fetching robot for a competition (translated). The first version used distance sensors to locate the tennis balls for pick-up, but they changed to a camera based approach. The robot has three omniwheels and is designed to calculate the shortest path to the ball despite orientation since it can rotate while traveling. The wheels are monitored using rotation sensors from PS/2 mice. The control is provided by 3 Atmel microcontrollers that communicate via SPI. The multiprocessor design is fairly generic and could be reused for a different style of robot. While their robot performed fairly well, there were some shortcomings. The limited storage space meant frequent trips to drop off balls. The tilting bucket kept them from picking up tennis balls that were against the wall. Also, the bot had to be disassembled for battery swaps. The project is very well documented and they’ve released all of their control code. You can see the robot retrieving a ball after the break. Continue reading “Tennis Ball Fetcher”
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”