JTAG Serial Cable run2 for Milkymist One

From Qi-Hardware
Jump to: navigation, search

Contents

[edit] Schedule

Item Description Planned Start date Status
KiCad design file, Notice: Any derivative work from here, you should completely read all test results and take works yourself. If you found error, please let us know about them. Design tar backed file here. Done
KiCad to BOM KiCad generates lst file Done
KiCad to Digi-Key/Mouser/Sharism boom generates shopping list / Order status Done
Single gerber-Out to PCB maker check list, illustration of panelized pcb, outgoing report Done
KiCad to AI file coordinate files(front /back ) of parts. Done
Engineering files to Victory Source Industrial Corp. SMT manufacturer BoM/AI/panel gerber/placement top/placement bottom/released parts' qty information/page 58 of Soldering reflow profile in FT2232HQ-REEL Done
Test tools, Test Procedures, Results Done

[edit] Change Notes

  • place C27 and C28 away from J6's housing (P/N: Molex 87832-1420) on Milkymist One board when hooking up, see [1]
  • lengthen one side of board edge to 1.6mm to let J6's housing on M1 not collide U1's body, U1, R1, R2, R12, R13 are all moved down 1.6mm.

[edit] Gerber Overview

Before do below, generate drill with

drill units: inches, zeros format: decimal, drill origin: auxiliary, all other options off/none

The gerber image overview generated by Werner's EDA tool:

adam@adam-laptop:~/extras-m1/jtag-serial/gerber$ /home/adam/eda-tools/fab/drl2gerber usb_jtag.drl > usb_jtag.gbr
adam@adam-laptop:~/extras-m1/jtag-serial/gerber$ /home/adam/eda-tools/fab/prettygerbv -d usb_jtag.gbr usb_jtag all jtag_rc2_gerber_overview.png
MM1 JTAG/Serial RC2 gerber overview.


Be noticed that the final drill file we generated with "suppress leading zeros" for zeros format and send to pcb maker.

[edit] Bare Panelized PCB

[edit] Profile measurement

M1-JTAG-TOP (P-b)-A-RC2-Profile.pdf
M1-JTAG-BOT (P-b)-A-RC2-Profile.pdf


[edit] Assembled board

[edit] Manufacturing serial number

  • 1107001 ~ 1107200 : YYMM###; YY = 11, means 2011 year; MM = 07, means July; ###, means number; Be noticed that previous run1 (or others), there's hex coded serial number generated by FT_Prog utility for Windows from FTDI [2].

[edit] Test tools

1. Build the libftdi-1.0 and compile new ftdi eeprom. [3]

2. Script file for reflash jtag/serial board, [4], [5]

[edit] Test Procedures

Step 1: Make sure the pod connected on a stable +5V[1] supplied by mini-USB cable and its current is good without huge consumptions. After test, viewing solderability of board. The other 5 remaining 5 boards were assembled by removed rc1 parts, then get all passed.

Results: 200pcs / 200pcs; there's no huge current consumptions. but got one piece with U5's pin 31 and 30 shorted by manually visual inspection.

U5's pin 31 and 30 shorts together.



Step 2:

# cd ftdi_eeprom   
# lsusb            ; get usb device name, for example 002:003
# sudo ./flash_jtag.sh /dev/bus/usb/002/003 1107001  ;
vendor_id=0x20b7
product_id=0x0713
self_powered=false
remote_wakeup=false
chip_type=2232H
max_power=90
in_is_isochronous=false
out_is_isochronous=false
suspend_pull_downs=false
use_serial=true
change_usb_version=false
usb_version=0
manufacturer="Qi Hardware"
product="Milkymist One JTAG/Serial"
serial="1107001"

FTDI eeprom generator v@EEPROM_VERSION_STRING@
(c) Intra2net AG <opensource@intra2net.com>

Found device with VID:PID : 0x20B7:0x713
EEPROM size: -1
FTDI erase eeprom: 0
FTDI close: 0


FTDI eeprom generator v@EEPROM_VERSION_STRING@
(c) Intra2net AG <opensource@intra2net.com>

Found device with VID:PID : 0x20B7:0x713
EEPROM size: -1
Used eeprom space: 128 bytes
FTDI write eeprom: 0
FTDI close: 0

Step 3: 1. unplug jtag and replug

# sudo lsusb -v -d 20b7:0713
 
Bus 002 Device 006: ID 20b7:0713  
Device Descriptor:
 bLength                18
 bDescriptorType         1
 bcdUSB               2.00
 bDeviceClass            0 (Defined at Interface level)
 bDeviceSubClass         0 
 bDeviceProtocol         0 
 bMaxPacketSize0        64
 idVendor           0x20b7 
 idProduct          0x0713 
 bcdDevice            7.00
 iManufacturer           1 Qi Hardware
 iProduct                2 Milkymist One JTAG/Serial
 iSerial                 3 1107001
 bNumConfigurations      1
 Configuration Descriptor:
   bLength                 9
   bDescriptorType         2
   wTotalLength           55
   bNumInterfaces          2
   bConfigurationValue     1
   iConfiguration          0 
   bmAttributes         0x80
     (Bus Powered)
   MaxPower               90mA
   Interface Descriptor:
     bLength                 9
     bDescriptorType         4
     bInterfaceNumber        0
     bAlternateSetting       0
     bNumEndpoints           2
     bInterfaceClass       255 Vendor Specific Class
     bInterfaceSubClass    255 Vendor Specific Subclass
     bInterfaceProtocol    255 Vendor Specific Protocol
     iInterface              2 Milkymist One JTAG/Serial
     Endpoint Descriptor:
       bLength                 7
       bDescriptorType         5
       bEndpointAddress     0x81  EP 1 IN
       bmAttributes            2
         Transfer Type            Bulk
         Synch Type               None
         Usage Type               Data
       wMaxPacketSize     0x0200  1x 512 bytes
       bInterval               0
     Endpoint Descriptor:
       bLength                 7
       bDescriptorType         5
       bEndpointAddress     0x02  EP 2 OUT
       bmAttributes            2
         Transfer Type            Bulk
         Synch Type               None
         Usage Type               Data
       wMaxPacketSize     0x0200  1x 512 bytes
       bInterval               0
   Interface Descriptor:
     bLength                 9
     bDescriptorType         4
     bInterfaceNumber        1
     bAlternateSetting       0
     bNumEndpoints           2
     bInterfaceClass       255 Vendor Specific Class
     bInterfaceSubClass    255 Vendor Specific Subclass
     bInterfaceProtocol    255 Vendor Specific Protocol
     iInterface              2 Milkymist One JTAG/Serial
     Endpoint Descriptor:
       bLength                 7
       bDescriptorType         5
       bEndpointAddress     0x83  EP 3 IN
       bmAttributes            2
         Transfer Type            Bulk
         Synch Type               None
         Usage Type               Data
       wMaxPacketSize     0x0200  1x 512 bytes
       bInterval               0
     Endpoint Descriptor:
       bLength                 7
       bDescriptorType         5
       bEndpointAddress     0x04  EP 4 OUT
       bmAttributes            2
         Transfer Type            Bulk
         Synch Type               None
         Usage Type               Data
       wMaxPacketSize     0x0200  1x 512 bytes
       bInterval               0
Device Qualifier (for other device speed):
 bLength                10
 bDescriptorType         6
 bcdUSB               2.00
 bDeviceClass            0 (Defined at Interface level)
 bDeviceSubClass         0 
 bDeviceProtocol         0 
 bMaxPacketSize0        64
 bNumConfigurations      1
Device Status:     0x0000
 (Bus Powered)

Step 4: make sure JTAG daughter board detected as new high speed USB device and attached. Follow Step 3 of http://en.qi-hardware.com/wiki/JTAG_Serial_Cable_run_1_for_Milkymist_One#Tests_and_Results to verify JTAG daughter can work with Milkymist One board.

[edit] Available Stocks

200 pcs, total inputs is 200 pieces, and 100% passed after tests by above procedures.

[edit] Previous Schedule

JTAG Serial Cable run 1 for Milkymist One

[edit] Links

[edit] References

  1. ABM-8303D 30V 3A
Personal tools
Namespaces
Variants
Actions
Navigation
interactive
Toolbox
Print/export