• Home
  • Help
  • Search
  • Login
  • Register
Pages: [1]
Author Topic: GuruPlug I2C  (Read 3559 times)
daemondust
Newbie
*

Karma: 4
Posts: 23


View Profile
« on: April 07, 2010, 04:33:07 PM »

Does anyone know if the GuruPlug (plus) is going to have the I2C pins brought out somewhere useful?  The U-SNAP port means SPI is accessable, but I don't see mention of I2C outside the block diagrams which imply it's shared with a second UART port.  The pictures Globalscale has point to an 8 pin connector as "Mini USB-Port" which I assume is the 7 GPIO pins plus ground?
Logged

peter a
Full Member
***

Karma: 0
Posts: 132


View Profile
« Reply #1 on: April 13, 2010, 01:06:43 AM »

I can hear the sound of crickets on this one.

I`m also interested about the possibility of the I2C port we can get to. But don`t think we will know until we get the chance to play with it.
« Last Edit: April 13, 2010, 07:05:43 AM by peter a » Logged

MarkF
Full Member
***

Karma: 7
Posts: 144


View Profile
« Reply #2 on: April 13, 2010, 12:09:40 PM »

Schematics would help, eh? Smiley

I don't expect a connector on the outside of the case; but, a connector on the "motherboard" (like the 1.3 plug) or even accessible solder pads would be usable.
Logged

Mark

daemondust
Newbie
*

Karma: 4
Posts: 23


View Profile
« Reply #3 on: April 24, 2010, 06:20:40 AM »

http://www.fcc.gov/oet/ea/fccid/ to YCJ003GP to the schematic....

Page 7 has U15 which appears to be some sort of I2C chip.  Unfortunately, it's not labeled as to what part it is and it isn't populated in the pictures.  Fortunately, it looks like the support resistors (R191, R193) are populated (top middle of the underside on page 2 of the pictures).  The bus appears to be brought to the daughter board, but isn't connected to anything there so the pads for U15 are probably the only place to attach to the I2C bus, assuming that's what it is.
Logged

jimmyswimmy
Newbie
*

Karma: 1
Posts: 9


View Profile
« Reply #4 on: May 24, 2010, 10:48:29 AM »

Trying to track this down further - I don't have my Guruplugs in yet.  These are my notes as I attempt to use the schematics and pictures available to figure out what's going on.

There appear to be two separate boards, one is the main board and the other is a daughter-battery/cards/wireless board.  The two boards interface via a pair of Hirose-style pressfit surface mount connectors, J6 and J7 on the daughter board and J14 and J15 on the mainboard.  J14=J6 and J15=J7.

On the daughterboard, the wireless chip (AzureWave AW-GH381, I think, can't find a datasheet yet) appears to have I2C pins going in or coming out of it which are available at TP8 and TP13.  Also, J6 has pins 23 and 24, SCK_CTS0 and SDA_RTS0 which look promising.  It looks like these pins dead end here, though, I don't see anything connected to them on the schematic and the pins are not routed out.  Guess I can solder wires to the connector pins (yay, that's gonna look real professional).

On the mainboard, we seem to have U15, which is not stuffed.  This looks like a serial EEPROM (there is a board option for a serial rom initialization disable function as well).  The IO pins SCK_CTS0 and SDA_RTS0 (sounds familiar) are routed in the schematic to J14 and come from U1H (which is the Marvell chip).

Great.  I would have SWORN that the Guruplug pages advertised I2C functionality when I ordered this, but they do not now.  Wonder if I kept printed copies of that.  It is quite clear that the plug does not currently offer I2C as a real option, because they didn't bother to hook it up despite sufficient board real estate to insert a RS-232 connector.

If you need I2C like I do it looks like your choice is
  • Solder directly to pins 23 and 24 of J6 and accept the unprofessional-looking result
  • Remove the daughterboard, go without USB, wireless and cards, and plug your own board in
  • Build a sandwich board to go in between (and good luck getting the connectors properly located)

Crap.  Thanks a ton, Globalscale, really helping me out here.
Logged

daemondust
Newbie
*

Karma: 4
Posts: 23


View Profile
« Reply #5 on: May 24, 2010, 11:32:21 AM »

Yes, that pretty much sums it up.  I would have loved if they would have brought I2C to the "reserved" pins on the u-snap  header.  You could still implement a GPIO I2C driver at that header, but you lose the advantages of the hardware driver.  I haven't cracked mine open yet (I'm waiting until the power supply issues are fixed so I don't void my warranty prematurely) but I intend to attach wires (or maybe a header) to the unpopulated pads on U15.

I thought about sandwiching a third board between the two, but trying to align everything properly (though it doesn't have to be one board, it could be two with the male and female headers on each directly in line, thus avoiding the alignment issues) and the resulting abomination no longer fitting in the case deterred me.  If I can figure out a better case and can find the appropriate headers, this might be the cleanest solution overall.  I might populate the internal uSD slot too while I'm in there.  (Again, if I can find the proper part.)
Logged

jimmyswimmy
Newbie
*

Karma: 1
Posts: 9


View Profile
« Reply #6 on: May 24, 2010, 01:24:46 PM »

Well.  I just confused myself into thinking that I could use J7 (the RS-232 port) as an I2C port.  It shares some SPI functions but not I2C, as near as I can tell.  So that doesn't work. 

Another note.  On initial power up MPP[8] and MPP[9] may start up as I2C if the TWI serial ROM initialization is enabled.  So depending on what is going on with R30 and R33, U15's I2C functions may be turned on or off.  Looks like pulling that pin high puts it in that mode so that the pins are I2C at boot up, but you have to set the state of GE_TXD[2:0] to pick the boot device, which I guess is default to SPI flash for uBoot (which is good, because my I2C device is not what I want to boot from).  So maybe I can just solder wires onto pins 5 and 6 of U15 to pick up I2C functionality.  Again, it makes me look like a total tool but at least I can maybe push this project forward.

Also I2C/RS232 is shown on block diagram http://www.globalscaletechnologies.com/t-guruplugdetails.aspx#block for all three versions of Guruplug.  So I think I'm legitimately P/O'ed.  I think most people would take that drawing as an indicator that the functions were really available, i.e. via an onboard connector.

Here is a good reference for this material:  http://www.marvell.com/products/processors/embedded/kirkwood/HW_88F6281_OpenSource.pdf

Logged

daemondust
Newbie
*

Karma: 4
Posts: 23


View Profile
« Reply #7 on: May 24, 2010, 01:47:22 PM »

Yes, they've made some pretty bad choices and ended up with a device that's almost good enough for a lot of things, but perfect for none.  Maybe you can find a surface mount header that's the same pitch as the unpopulated pads?  What pitch is it?  That would at least give you the option of removing swapping things out without having to desolder and risk ruining the board if you ever need to change anything.  Or maybe use the u-snap interface's pins as a GPIO I2C master? Or attach a SPI to I2C driver there?
Logged

jimmyswimmy
Newbie
*

Karma: 1
Posts: 9


View Profile
« Reply #8 on: May 27, 2010, 05:04:43 PM »

The U15 looks like a SO-8, so that's probably 50 mils.  It's huge by my standards so I'm not so worried about damaging anything.  I just hate that I have to open the thing up just to get started.  And the vendor did advertise I2C functionality on the block diagram, so one would have expected it would be available.

Of course all this is moot if the gigE doesn't work.  Then this whole thing was just a waste of time, and I'll be totally screwed looking for a PC/104+ style stack with a pair of LAN ports and all these other requirements we have for this project.  Argh.  Thought I had learnt my lesson about being an early adopter!
Logged

Pages: [1]
Print
Jump to: