No, I didn't look at that part but the board is already designed with the USB2514B and I'm working on the prototypes. If the GL850G is really that cost I might have to look into it later though.
On Monday, August 18, 2014 10:33:08 AM UTC-7, Jon Smirl wrote: > > Do you know about the GL850G? It is about $0.30. The chip is > automatic, no need for SMBUS. > > http://www.kean.com.au/oshw/WR703N/GL850G%20USB%20Hub%201.07.pdf > > > http://www.aliexpress.com/item/new-hope-GL850G-GL850-SSOP28-100pcs-lots/1860488763.html > > > On Mon, Aug 18, 2014 at 12:20 PM, George Ioakimedes > <georg...@gmail.com <javascript:>> wrote: > > I'm working on my new Baseboard design which has a Microchip 4-port USB > Hub > > chip on it. This chip uses only a SMBus Write and Read command. I > upgraded > > the kernel to 3.4.90 since 3.4.75 was still using 200kHz as the I2C > default > > speed. > > > > I'm using Python to issue commands and looking at a write_i2c_block_data > > command on the scope I have confirmed that the command structure is sent > > properly. I need to also decode on the scope the read but it appears > that > > the read is missing the 1st byte. > > > > If I issue a > > > > sudo i2cdump -y 1 0x2c s > > Error: Adapter does not have SMBus block read capability > > > > but if I issue a > > cubie@Cubian:~$ sudo i2cdump -y 1 0x2c i > > 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef > > 00: 20 24 04 14 25 b3 0b 9b 00 01 00 00 00 01 32 01 $??%???.?...?2? > > 10: 32 32 04 09 13 15 0a 49 00 4f 00 00 00 54 00 45 22?????I.O...T.E > > 20: 20 43 00 48 00 4e 00 4f 00 4c 00 4f 00 47 00 49 C.H.N.O.L.O.G.I > > 30: 00 45 00 53 00 00 00 4c 00 4c 00 43 00 00 00 00 .E.S...L.L.C.... > > 40: 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ............... > > 50: 00 00 00 00 00 42 00 69 00 67 00 00 00 42 00 72 .....B.i.g...B.r > > 60: 20 6f 00 74 00 68 00 65 00 72 00 00 00 42 00 61 o.t.h.e.r...B.a > > 70: 00 73 00 65 00 62 00 6f 00 61 00 72 00 64 00 00 .s.e.b.o.a.r.d.. > > 80: 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ............... > > 90: 00 00 00 32 00 30 00 31 00 34 00 30 00 38 00 30 ...2.0.1.4.0.8.0 > > a0: 20 30 00 30 00 31 00 00 00 00 00 00 00 00 00 00 0.0.1.......... > > b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ > > c0: 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ............... > > d0: 00 e1 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .?.............. > > e0: 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ............... > > f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ > > > > Notice how every other "0" byte is a 0x20? > > > > If I run this code: > > > > import smbus > > bus = smbus.SMBus(1) > > reg00 = [0x20, 0x24, 0x04, 0x14, 0x25, 0xB3, 0x0B, 0x9B, 0x00, 0x01, > 0x00, > > 0x00, 0x00, 0x01, 0x32, 0x01, 0x32] > > bus.write_i2c_block_data(0x2c, 0x00, reg00) > > > > You get the above dump. From my understanding the 1st byte is supposed > to be > > the number of bytes being sent. That code does appear correctly on the > scope > > when I'm writing data > > > > I've made some progress and it appears that the hub does get enumerated: > > > > cubie@Cubian:~$ lsusb > > Bus 001 Device 003: ID 0424:2514 Standard Microsystems Corp. USB 2.0 Hub > > Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub > > Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub > > Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub > > Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub > > > > But if I try to get some additional information about the hub, lsusb > > complains that it couldn't open the hub so I'm not sure if it really > > enumerated properly > > > > cubie@Cubian:~$ lsusb -v -s 001:003 > > > > Bus 001 Device 003: ID 0424:2514 Standard Microsystems Corp. USB 2.0 Hub > > Couldn't open device, some information will be missing > > Device Descriptor: > > bLength 18 > > bDescriptorType 1 > > bcdUSB 2.00 > > bDeviceClass 9 Hub > > bDeviceSubClass 0 Unused > > bDeviceProtocol 2 TT per port > > bMaxPacketSize0 64 > > idVendor 0x0424 Standard Microsystems Corp. > > idProduct 0x2514 USB 2.0 Hub > > bcdDevice b.b3 > > iManufacturer 1 > > iProduct 2 > > iSerial 3 > > bNumConfigurations 1 > > Configuration Descriptor: > > bLength 9 > > bDescriptorType 2 > > wTotalLength 41 > > bNumInterfaces 1 > > bConfigurationValue 1 > > iConfiguration 0 > > bmAttributes 0xe0 > > Self Powered > > Remote Wakeup > > MaxPower 2mA > > Interface Descriptor: > > bLength 9 > > bDescriptorType 4 > > bInterfaceNumber 0 > > bAlternateSetting 0 > > bNumEndpoints 1 > > bInterfaceClass 9 Hub > > bInterfaceSubClass 0 Unused > > bInterfaceProtocol 1 Single TT > > iInterface 0 > > Endpoint Descriptor: > > bLength 7 > > bDescriptorType 5 > > bEndpointAddress 0x81 EP 1 IN > > bmAttributes 3 > > Transfer Type Interrupt > > Synch Type None > > Usage Type Data > > wMaxPacketSize 0x0001 1x 1 bytes > > bInterval 12 > > Interface Descriptor: > > bLength 9 > > bDescriptorType 4 > > bInterfaceNumber 0 > > bAlternateSetting 1 > > bNumEndpoints 1 > > bInterfaceClass 9 Hub > > bInterfaceSubClass 0 Unused > > bInterfaceProtocol 2 TT per port > > iInterface 0 > > Endpoint Descriptor: > > bLength 7 > > bDescriptorType 5 > > bEndpointAddress 0x81 EP 1 IN > > bmAttributes 3 > > Transfer Type Interrupt > > Synch Type None > > Usage Type Data > > wMaxPacketSize 0x0001 1x 1 bytes > > bInterval 12 > > > > If I plug a keyboard into the hub it does not show up so I know that > > something is still not right. Since the idVendor and idProduct come > through > > correctly I am going to assume that at least part of the registers did > get > > written correctly even though reading them says they did not. > > > > If anyone has any helpful advice or knowledge of this I would greatly > > appreciate some feedback! > > > > Thanks, > > George > > > > -- > > You received this message because you are subscribed to the Google > Groups > > "linux-sunxi" group. > > To unsubscribe from this group and stop receiving emails from it, send > an > > email to linux-sunxi...@googlegroups.com <javascript:>. > > For more options, visit https://groups.google.com/d/optout. > > > > -- > Jon Smirl > jons...@gmail.com <javascript:> > -- You received this message because you are subscribed to the Google Groups "linux-sunxi" group. To unsubscribe from this group and stop receiving emails from it, send an email to linux-sunxi+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.