Skip to main content
Topic: USB open source stack test PCB (Read 5635 times) previous topic - next topic

USB open source stack test PCB

It would be nice to be able to have a board with a bunch of the most common USB-capable PIC microcontrollers on it to be able to easily test & debug the Open Source USB stack and bootloaders.

In essence it is a pcb with a single USB connector and a single ISCP and then jumpers to connect them to a particular chip on the board.  A reset button and bootloader buttons with status leds might come in handy too. The clock frequency is selectable between 48MHz and 1.5MHz in 15 rather common frequencies.

I did schematics and a pcb design for this a while back, but I never decided what PIC's I should add to the board.

The board supports up to 8 target microcontrollers.  I'm not sure if it would be worthwhile to have multiple versions of the same series like 18F24J50/18F25J50/18F26J50 where only the amount of memory differs.  It might be good to have all of them on the board(s) to verify that the linker scripts is ok.  This would require multiple boards since there are at least 3-4 memory variants of the different product groups.

[attachment=0]

Can someone help me decide which PICs I should put on the boards for it to be useful as a testing tool?


Re: USB open source stack test PCB

Reply #2
I would personally prefer an uC per breakout board. In our svn there should be already breakout pcb for several uCs. IIRC most footprints are compatible with eachother within a family (ie on pic18f all 28pin like  24j50, 25j50, 26j50, 2550, 2650 share the same footprint).

Your idea is still interesting and of great value for the software developers ;)

Re: USB open source stack test PCB

Reply #3
Hm, yes.  A base board with power, buttons, clock generation and usb stuff - and then a small plugin/breakout board with like 8 pins that plugs into the baseboard is probably a much better idea...

The breakout only needs the cpu and local decoupling.  And a pullup for all unused pins to keep them stable and nice.

Re: USB open source stack test PCB

Reply #4
Also USB capable PIC24s and PIC32s in any package are pin to pin compatible.. Well I'm sure about the 28 PDIP/SOIC/SSOP and 100pin TQFPs...

regarding the project, perhaps a ZIF type breakout would be in order...
best regards FIlip.

Re: USB open source stack test PCB

Reply #5
So far I've identified 9 different pinouts (when chosen the "easiest" type of chip, i.e. soic rather than tssop or tqfp rather than qfn) for where the power, usb and iscp pins are located.

https://docs.google.com/spreadsheet/ccc ... 0SkE#gid=0

I'm not done yet so a few more variants are bound to pop up.

I did a quick version with a 5x5cm base board, where the daughter boards (with up to four different PICs on each daugherboard) plug in at the top, two iscp connectors (5 & 3.3 volt) at the right,  usb and a connector for a Bus Pirate LCD adapter on the left sides.  The three connections going to the LCD are also brought out to three LEDs if the LCD is not required for debugging.

[attachment=1]

[attachment=0]

Re: USB open source stack test PCB

Reply #6
Looks promising! for stabilty you need some mounting holes on the pic board I guess, but I like the star shape of the board :)

I'm also interested in the clock circuit you designed.

Re: USB open source stack test PCB

Reply #7
[quote author="Sjaak"]I'm also interested in the clock circuit you designed.[/quote]

Nothing really fancy there.  Three crystal oscillators (48/32/20) and a binary counter. (I need to find out whether the INH pin on the oscillators need to go to gnd or vcc to enable them )

[attachment=0]

Re: USB open source stack test PCB

Reply #8
how about including a buffer on the output of the oscillator selector and divider circuit?