Post Reply

Pogo pin dock

OP silverchris

23rd April 2012, 05:42 AM   |  #1  
OP Junior Member
Flag Orangeville
Thanks Meter: 20
 
28 posts
Join Date:Joined: May 2009
More
Has anybody found out what triggers desk mode in the pogo pin dock? I am looking into replicating the functionality without spending 50+ dollars on the original. Also, does anybody have any good photos of the guts of the pogo dock?

Thanks,
Chris
The Following User Says Thank You to silverchris For This Useful Post: [ View ]
27th April 2012, 03:42 AM   |  #2  
OP Junior Member
Flag Orangeville
Thanks Meter: 20
 
28 posts
Join Date:Joined: May 2009
More
so, after some digging about, it looks like the docking mode is set by the middle pin.

from digging about in the sources, I have found board-tuna-pogo.c which is the file that configures a GPIO pin to be used for the pogo functionality.

It looks like when first connected to a dock, the phone sends a wake up pulse of 100mS, then waits for the dock to respond with a similar pulse back to the phone.
The duration of the pulse is what sets the dock mode.
Here are the times from the sources(times are in mS):
Code:
#define POGO_ID_CARDOCK			100
#define POGO_ID_DESKDOCK		200
Going to try a couple of things to test this on my real phone
The Following 3 Users Say Thank You to silverchris For This Useful Post: [ View ]
27th April 2012, 04:18 AM   |  #3  
Senior Member
Thanks Meter: 12
 
114 posts
Join Date:Joined: Aug 2010
how would you get the dock to send a pulse back?
27th April 2012, 04:35 AM   |  #4  
OP Junior Member
Flag Orangeville
Thanks Meter: 20
 
28 posts
Join Date:Joined: May 2009
More
Probably with a microcontroller, in my case
27th April 2012, 01:26 PM   |  #5  
Senior Member
Thanks Meter: 197
 
813 posts
Join Date:Joined: Dec 2010
More
Quote:
Originally Posted by silverchris

Probably with a microcontroller, in my case

Please let us know if you find a way to make it work, I'm not too good with electronics, but i'm no stranger to a soldering iron. I would LOVE to be able to modify my existing car dock to power it with AC charge capabilities.
29th April 2012, 08:27 AM   |  #6  
subvertz's Avatar
Senior Member
Flag Bergen
Thanks Meter: 76
 
279 posts
Join Date:Joined: Feb 2012
More
Those of us that have built our own car pogo docks are already AC charging. Any of the ROM+kernels with fast charge override will do it. You also need to ensure your 12V source puts out over 500 milliamps. Placing an NFC tag in the dock can perform all the dock shifting functions. See here or here.
The Following User Says Thank You to subvertz For This Useful Post: [ View ]
29th April 2012, 09:01 AM   |  #7  
Junior Member
Thanks Meter: 3
 
6 posts
Join Date:Joined: Feb 2008
You could probably program an ATTiny flashed with Arduino code to transmit the appropriate response. An 8Pin DIP can be hidden pretty easily and runs on 5vdc. You could even include a car/desk mode toggle, for whatever reason.
The Following User Says Thank You to Siege9929 For This Useful Post: [ View ]
29th April 2012, 10:50 AM   |  #8  
Senior Member
Thanks Meter: 197
 
813 posts
Join Date:Joined: Dec 2010
More
Quote:
Originally Posted by subvertz

Those of us that have built our own car pogo docks are already AC charging. Any of the ROM+kernels with fast charge override will do it. You also need to ensure your 12V source puts out over 500 milliamps. Placing an NFC tag in the dock can perform all the dock shifting functions. See here or here.

the problem with this is that I would no longer be running stock and the ota updates would fail to apply until I flashed back the stock kernel


Sent from my Galaxy Nexus
1st May 2012, 12:57 AM   |  #9  
OP Junior Member
Flag Orangeville
Thanks Meter: 20
 
28 posts
Join Date:Joined: May 2009
More
So it looks like the code I was looking at was out of date. The new code is similar but is slightly more complex, allowing for charge current and audio device connection to be transferred from the dock to the phone.

I so far have accidentally put the phone in car dock mode. But I have yet to repeat that.
The Following 2 Users Say Thank You to silverchris For This Useful Post: [ View ]
2nd May 2012, 02:12 AM   |  #10  
Member
Thanks Meter: 25
 
57 posts
Join Date:Joined: Jan 2009
More
Quote:
Originally Posted by silverchris

So it looks like the code I was looking at was out of date. The new code is similar but is slightly more complex, allowing for charge current and audio device connection to be transferred from the dock to the phone.

I so far have accidentally put the phone in car dock mode. But I have yet to repeat that.

I believe this is the current board-tuna-pogo.c file. From what I can tell the phone sends out a 100ms wake up pulse then waits for three responses.

Code:
/* The below constants are in milliseconds */
#define POGO_WAKE_PERIOD                100
#define POGO_ID_PERIOD_TIMEOUT          750
#define POGO_ID_DESKDOCK                50
#define POGO_ID_CARDOCK                 100
#define POGO_ID_CHARGER                 50
#define POGO_ID_USB                     100
#define POGO_ID_AUDIO                   50
#define POGO_ID_NO_AUDIO                100
#define POGO_ENTER_SPDIF_WAIT_PERIOD    100
#define POGO_ID_PERIOD_TOLERANCE        20
#define POGO_DET_DEBOUNCE               80
The first response pulse determines if its a DESKDOCK or CARDOCK , the second response pulse is for AC Fast charging or USB charging , and the third response pulse is for whether there is audio out or not.
Attached Files
File Type: c board-tuna-pogo.c - [Click for QR Code] (17.4 KB, 232 views)
Last edited by soundwire; 2nd May 2012 at 02:15 AM.

The Following 2 Users Say Thank You to soundwire For This Useful Post: [ View ]
Post Reply Subscribe to Thread
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes