One Bus Pirate programs another?

Can one Bus Pirate program another? Not yet, but we’ve been hard at work on it. This post is about a new application, available here, that will program PIC 24Fs from the Bus Pirate. Everything looks great on a logic analyzer, but it’s not working yet. Maybe you can help us figure it out, and get one of Ril3y’s laser-cut Bus Pirate cases as a bounty.

The Bus Pirate uses a PIC 24F. Unlike older PICs (12/16/18F), the 24F doesn’t require a 13volt power supply to enter programming mode. That means the 24/30/33F can be programmed with the existing Bus Pirate hardware. It’s matter of the right software. Keep reading for more about the Bus Pirate PIC24F programmer application.

Continue reading “One Bus Pirate programs another?”

Open Logic Sniffer assembled, in testing

Openbench Logic Sniffer is an open source logic analyzer. It’s designed to support the SUMP logic analyzer software at the lowest possible cost. This project is a collaboration between the Gadget Factory and Dangerous Prototypes.

The Open Logic Sniffer returned from the factory. It will be programmed and tested soon. Seeed makes the rather ambitious estimate that they’ll ship by Monday, we think sometime next week is a really safe bet. You can read more about the production process here.

You can reserve an Open Logic Sniffer for $45, including worldwide shipping.

#twatch Winamp plugin

yvesp123 has been hard at work on a WinAmp plugin that supports the #twatch ethernet LCD:

For me, the main reason for getting a #twatch in the first place was to display the currently playing song info from WinAmp. Since I received it, I’ve been working on a native plug-in for WinAmp. So here it is, the first release. Still fairly in beta state, but I think it might use some testing from others.

In it’s current state, it displays the artist name in the first row, the song title in the second, the album name and year in the third and finally, the playing status, progress bar and time (played or left) in the fourth. It also display the shuffle state using a custom char.

You can get this script, and a lot of others, in the #twatch SVN folder.

The #twatch as a PCB only (add your own LCD) is shipping now for $30, including worldwide shipping.

Synthetos laser cut Bus Pirate case

teslafreak posted this picture of Ril3y’s laser cut case for the Bus Pirate in the forum:

I bought two of these, a black one and a clear one.  They recently arrived, and look great.  The construction is fantastic.  They are also possible to take apart without tools, which is awesome.  Here’s a pic (though my camera isn’t great).  The black case looks pretty opaque in this picture, but it is because it still had the protective film on it.  They also have a bit of weight, which helps to keep the bus pirate from shifting around too much.

We’ll document the complete build process soon.

Program your AVR with PICkit2

PK2AVRISP is software that lets a PICkit2 program AVR microcontrollers with no hardware or firmware changes. It decodes commands sent to a virtual serial port that emulates an AVR ISP programmer, and translates them to Pickit2 commands. It’s compatible with existing AVR development apps like AVRStudio, AVRDude, and CodeVision AVR.

USB Infrared Toy self-test

The latest version of this article is now on the documentation wiki.

The USB Infrared Toy contains a self-test that’s not documented in the original how-to. The self-test is used to detect dead hardware after manufacturing.

To use the self-test, open a terminal program to the USB IR Toy’s serial port and type ‘t’ or ‘T’. If the test is successful the IR Toy will respond ‘V101’, where 101 is the firmware version.

If the test fails, it responds FAIn where n is an ASCII representation of a binary error code. That boils down to this:

  • FAI1 – IR receiver error (error bit 0)
  • FAI2 – IR LED error (error bit 1)
  • FAI3 – both errors (error bits 0 & 1)

Error and self-test details follow the break.

Continue reading “USB Infrared Toy self-test”

USB IR Toy preorder 1 defect

Unfortunately there’s a defect in the first batch of USB IR Toys. The infrared LED is backwards and does not emit properly. Ytsirk caught this defect and documented the issue in the forum.We’re really sorry about this bug, and we’ve done our best to track it and identify the cause.

We used a Cadsoft Eagle IR LED footprint in the USB IR Toy, specifically the SFH-482 from the default LED part library. The IR Toy design doesn’t require the SFH-482, almost any IR LED will work, but that is the package we found first. The silkscreen for the Cadsoft part has a tab on the anode (+ side) of the LED (bottom right image). The SFH-482, according to the datasheet, actually has the tab on the cathode side (top image). We used an IR LED on our prototype that looks like a normal LED without a tab, so we didn’t see the problem with the silk. We should have caught this and corrected it, or chosen a different LED package.

Seeed used SFH-480 IR LEDs (SFH-482 compatible) on the production IR Toys so they matched the Eagle part footprint. This is a miscommunication on our part because any IR LED would have worked, but this part is also fine. Seeed assembled the LED according to the silk, which was backwards, thus all the emitters are backwards.

There is a self-test in the USB IR Toy, and despite the backwards LEDs, the self-test still passes. We’re guessing that there’s enough current leaking though the IR LED that it blinks dimly despite the incorrect placement.

You can repair your USB IR Toy by unsoldering the IR LED, and re-soldering it so the metal tab is opposite the silkscreen (facing the indicator LED ‘I’ and R2).

We should have caught this, and we’ll do our best to clean up the mess. Please contact us if you need to arrange a repair or a replacement LED.

This defect will be corrected in all future USB IR Toys produced.

MMC/SD/SDHC card library

Hidden away in SparkFun’s AD5330 demo is an open source FAT SD card read/write library from Roland Riegel. The MMC/SD/SDHC card library is intended for AVR microcontrollers, and it supports FAT16 and FAT32, partition tables, and low-level read/write operations.  The source download includes an example application. This project should be pretty easy to port to any microcontroller, such as the PIC on our web platform.

Free PCB Sunday: USB RGB color changer

We go through a lot of prototype PCBs, and end up with lots of extras that we’ll never use. Every Sunday we give away a few professionally-made PCBs from one of our past or future projects, or a related prototype.

This is a USB controlled RGB color changing light. Someone made some minor modifications to the design and had a bunch of boards produced, we ended up with a pile of the extras. We’re giving away two PCBs this week, just ask for one in the comments.

Continue reading “Free PCB Sunday: USB RGB color changer”

IR or RF remote control design

There’s been talk of adapting the USB Infrared Toy to transmit AM radio frequencies as well as infrared light. Today we noticed a similar project by Peter Jakab.

Peter’s DIY remote control based on PIC can emit IR or RF, depending on the output device. With an IR LED and it outputs normal remote control pulse-trains. Substitute an oscillator for the IR LED and it transmits  radio frequencies.

The RF option is about the simplest type of transmitter possible. The oscillator output connects to an antenna. The microcontoller switches the oscillator on and off to encode data.

Via Hacked Gadgets, a long-time friend of Dangerous Prototypes. Alan Parekh and Ian were writers for DIY Life years ago.

Bus Pirate and FSA03 GPS how-to

Ril3y shows how to use a FSA03 GPS with the Bus Pirate:

I have a few projects that I would like to include GPS data in, in the near future.  So I went ahead and picked up a nice ublox based GPS.  You can get it here:  I wanted to used it right away.  So rather than coding up some AVR C or arduino stuff I decided to use my bus pirate for the job.  Here is the settings I used to get it up and going…

The case in the picture is one of Ril3y’s laser-etched Bus Pirate cases, more about that here.

IRScope open source remote control visualizer

rct tipped us to the open source IRScope software from the hifi-remote forums. IRScope captures and visualizes infrared signals with the IR Widget, but it could be adapted for the USB IR toy IRIO mode or SUMP logic analyzer mode.

You can get a USB IR Toy for $20, including worldwide shipping. Seeed Studio currently has them available on backorder, additional units should arrive soon.

Thanks for the tip!

USB IR Toy transmit frequency

Most infrared remote controls emit modulated light pulses to activate an infrared receiver. Using modulated IR light helps prevent stray light from messing with reception. Pulses at around 38kHz and 56kHz are common, but many values are used. The USB IR Toy’s transmitting LED is driven by a pulse-width modulator (PWM) that can be adjusted to match many modulations. This post shows how to calculate custom modulation values.

You can get a USB IR Toy for $20, including worldwide shipping. Seeed Studio currently has them available on backorder, additional units should arrive soon.

Continue reading “USB IR Toy transmit frequency”

Infrared remote control extender

s3c tipped us to an infrared remote extender at Electronics Lab. A 555 timer IC is set to oscillate at 38kHz. Each IR pulse from a remote control, detected by a TSOP1738 IR receiver module, activates the timer. The timer blinks several IR LEDs through a transistor at 38kHz, recreating the input signal. Handy little device with no programming required.

Thanks for the tip!

#twatch Python script for weather, time

trobbinsmilne posted a Python #twatch script that shows the weather and time:

Here are a couple of photos of my twatch. It’s showing the time for 15 seconds, then 5 seconds of either today’s date + weather, or 5 seconds of the weather forecast for the next few days.

You can get this script, and a lot of others, in the #twatch SVN folder.

The #twatch as a PCB only (add your own LCD) is shipping now for $30, including worldwide shipping.

Play WAV audio files with AD5330 and Arduino

SparkFun has a tutorial about playing WAV files with an 8-bit AD5330 Digital Analog Converter (DAC). The AD5330 has an 8-bit parallel interface and operates from 2.5v to 5.5v.

SparkFun uses an Arduino, micro SD shield, and AD5330 breakout board to play WAV files. The Arduino reads uncompressed WAV files from a FAT formatted SD Card using the MMC/SD/SDHC FAT library. It writes the bytes to 8 output pins, and clocks the WAV data into the AD5330.

Free PCB Sunday: USB RGB color changer

We go through a lot of prototype PCBs, and end up with lots of extras that we’ll never use. Every Sunday we give away a few professionally-made PCBs from one of our past or future projects, or a related prototype.

This is a USB controlled RGB color changing light. Someone made some minor modifications to the design and had a bunch of boards produced, we ended up with a pile of the extras. We’re giving away two PCBs this week, just ask for one in the comments.

Continue reading “Free PCB Sunday: USB RGB color changer”

Open Logic Sniffer preorder update

This is the manufacturing prototype of the Open Logic Sniffer logic analyzer. Parts are all in-house at Seeed Studio. Procurement is usually the most hazardous and delay-fraught phase of a preorder.

Assembly, which will begin by Monday, is usually pretty quick. After assembly, the boards will be inspected, programmed, tested, and shipped to preorder participants. Read more about the process in the preorder overview and FAQ.

You can reserve an Open Logic Sniffer for $45, including worldwide shipping.

USB Infrared Toy arriving worldwide

USB Infrared Toy orders are starting to be delivered worldwide. Coolnics and rsdio posted these pictures along with good news about shipping times:

USB IR Toy arrived yesterday from Seeed to UK in 1 week, much faster than last order.

Thanks for the update. Another unboxing photo after the break. More in the USB IR Toy forum.

Continue reading “USB Infrared Toy arriving worldwide”