July 2003

My Very First USB Peripheral

prototype hardware

Earlier this month I talked about the Microchip PIC16C745 and PIC16C765, which are 8-bit microcontrollers with built-in low-speed USB. Since that time, I've got hold of one of these devices and built a simple USB peripheral with it. Click on the thumbnail for a bigger version of the image.

Summary: hardware easy, firmware tricky, software painful. Read on for more detail and some hints for anyone treading the same road in the future.

[Last updated 20050606: added firmware source code.]


Order of the Phoenix: Unanswered Questions

Please sit down.
I am going to tell you everything.
   — Albus Dumbledore, to Harry Potter

Well, Dumbledore may have finally come clean and answered all of Harry's questions, but from a technical perspective I feel J. K. Rowling still has some explaining to do. Here are some areas she might consider addressing in the next volume.

Shirky: A Group Is Its Own Worst Enemy

Clay Shirky writes about the Internet, as much as a social and cultural phenomenon as a technical one. His recent article A Group Is Its Own Worst Enemy describes what happens when "social" software (Usenet, mail, instant messaging, weblogs, etc.) is used to support growing, long-lived user groups. In particular, he discusses patterns of failure in these groups and to a lesser extent what can be done to avoid group failures.

PIC16C745/765: microcontrollers with USB

Fun devices of the month: Microchip's PIC16C745 and PIC16C765. As well as the usual microcontroller features, these require only a couple of external components to function as low-speed USB peripherals.