Thursday, January 17, 2013

U-blox PCI-5S - a cheap GPS module for your projects


 [Update] I have found the timepulse output!

The U-blox PCI-5S is the cheapest GPS module on eBay right now (although you have to buy an additional antenna).
At first glance it seems useless for microcontroller projects because it's a mini PCIe card, but as it turns out it has an easily accessible UART port that can be connected to a microcontroller.

Here's the pinout:
The USB device is a standard CDC ACM serial port.

RX/TX pins are a second (independent of USB) UART port running at 9600bps by default.

You can use u-center to modify the module's configuration, for example set the update frequency to 4Hz.

Happy hacking!

85 comments:

  1. That's pretty cool, going to get one on Ebay. Could you tell me which antenna is best suited for these modules?

    ReplyDelete
    Replies
    1. According to the datasheet, any GPS antenna (active or passive) with a U.FL/IPEX connector should work.

      Delete
    2. Have you come across a source for those, please?

      Delete
    3. Look on ebay.

      I bought this one and it's working fine:
      http://www.ebay.com/itm/GPS-Ceramic-Internal-Patch-1575-42MHz-Antenna-20x20x7mm-e-/251215203055

      Delete
  2. Oh that really nice to here some extra deal.Now i'm going to buy this useful once..

    ReplyDelete
  3. PCI-E and Mini PCI-E edge connectors have both USB and PCI-E data on them. Looking at the pins used on the edge connector, I believe this card only uses the USB data. The other pins aren't used. I don't know how well links work here, I'll try anyway:
    http://pinoutsguide.com/Slots/mini_pcie_pinout.shtml

    ReplyDelete
  4. I just looked at the U-Blox site. Because the card available on eBay was made by/for Toshiba, there's no direct documentation for it on the U-Blox site, but the ones on eBay might be based on the now-discontinued 5S U-Blox GPS module. Here's a link to a page titled, "Previous generation GPS receiver modules." It's essentially a table comparing various no-longer-produced modules and their features. The feature I'm looking for is either a 1 (or 4) pulse-per-second (PPS) signal and/or the precision-timing feature--either or both of which can be used to make hyper-accurate GPS-discipined oscillators. It's not clear to me that the cheapies on eBay can do that. Does anyone have any knowledge of these devices who can comment?

    Thanks,

    Todd Carney

    ReplyDelete
    Replies
    1. It seems that this module does support a timepulse signal - it can be configured through u-center.
      Maybe the output is one of the other test points, I didn't find anything when I tested them, but the manual says the signal is only present when there is a reliable fix, I will try that again and report back.

      Delete
    2. I have found the timepulse output!

      Delete
    3. The firmware on the T modules is different, such that they spend more effort on the timing and less on the dynamics. You'll get good, but not great, performance from a non-T module.

      Are you on the time-nuts list?

      Delete
  5. Anyone have a source of these that ship to the Channel Isles?
    -A

    ReplyDelete
  6. Does it have a 1 pps output? If so, what voltage is it? (3.3. v or 5 volts)

    Thank you.

    ReplyDelete
    Replies
    1. It turns out it does, it's 3.3V like the rest of the module.

      Delete
  7. Nice find - any idea how much current this draws? I'm considering pairing one with a stellaris launchpad for a low power toy.

    ReplyDelete
  8. Replies
    1. I found 5 listings. On eBay.com, search "pci-5s".

      Delete
  9. I am wondering if the empty looking half of the pcb containing the edge connector could be sawed off for this kind of use.

    ReplyDelete
    Replies
    1. There is a high probability that it's possible, the u-blox product catalog shows a half size version of this card.
      But the PCB has more than 2 layers, so it's a mystery how the traces are routed in that area.

      Lots of people bought this card after HaD published my tip, maybe someone is brave enough to try it. :)

      Delete
  10. What would be interesting is whether this module supports the output of 'Raw' data output, which would allow more accurate (off board) position computation - L1 GPS can get down to around 1cm accuracy on a good day!

    Would be great for mobile robotics.

    ReplyDelete
  11. Nice hint, thank you very much for that.

    Do you know whether the card supports also PPS signal for time sync?

    Thank you

    McHa

    ReplyDelete
  12. Looking to make a GPS unit for my Nikon D800, anybody on here able to provide some assistance on such a project?

    ReplyDelete
  13. hello nice finding :) when i first saw the post on HDA i searched ebay and i bought one ~2 months later it arrived but i have some questions (cause i don't wan't to kill it :P)

    1. are the inputs 5V tolerant or only 3.3v ?
    2. does it require an external antenna ?
    3. the pictures show two test points for usb connection but i guess i have to provide 3.3v to power the device ?

    anyway thanks again for sharing

    someone said they couldn't find any listing on ebay i bought my from here http://www.ebay.com/itm/250866889973?ssPageName=STRK:MEWNX:IT&_trksid=p3984.m1439.l2649 - the shipping (at least for my country) is more that the actual module but is still cheaper than other gps modules

    ReplyDelete
    Replies
    1. 1.I don't know.
      2.Yes, you need an antenna with u.fl connector.
      3.Yes you need 3.3V, there is no voltage regulator on board.

      Delete
    2. thanks for the quick reply

      about the antenna do you think this will work ? http://www.seeedstudio.com/depot/embedded-antenna-ufl-for-gps-p-564.html?cPath=139_143

      thanks,
      Vlad

      Delete
    3. Yes, it should work, the module supports both active (like this one) and passive antennas.

      Delete
  14. Where do we find the place to change the frequency? that the only thing I cant find.

    ReplyDelete
    Replies
    1. You mean the update frequency?
      You need to install u-center software.
      From there select the "configuration view" and there you will have lots of configuration options, "RATE" is the option for changing update frequency.

      Delete
    2. Thanks, that was what I was searching for!

      Delete
  15. Hi Andrzej,
    I've just got the GPS from ebay last and had time to test it. It is working pretty well.
    Thank you also for updating for PPS pin, I wanted to search for it and I'm glad you got it.

    ReplyDelete
  16. I got mine in the post recently, and got it working. One thing that stumped me for ages was receiving a lot of "txbuf alloc" errors. I've fixed it now - it happens when the baud rate is too low for all the information to be sent. Setting the baud rate to 38400 instead of 9600 fixed it for me.

    ReplyDelete
  17. Hello

    I've just order it on ebay. But i'm not sure for the antenna.
    Maybe, the GPS internal antenna for the ipad 3 or ipad mini will be ok. It's very inexpensive on ebay:
    Like this one (1.39$)
    http://www.ebay.com/itm/New-GPS-Antenna-Signal-Flex-Cable-Repair-Fix-Replacement-Parts-For-iPad-3-3Gen-/280919335233?pt=Other_Tablet_eReader_Accessories&hash=item416818e141

    Or this one: (2.89$)
    http://www.ebay.com/itm/New-Replacement-GPS-Antenna-Signal-Flex-Ribbon-Cable-Fit-For-Ipad-mini-/140899956140?pt=Other_Tablet_eReader_Accessories&hash=item20ce4ab5ac

    But i'm not completly sure that the connector is a UFL (but it looks like on the pics)

    What do you think?

    ReplyDelete
    Replies
    1. I'm pretty sure they are both UFL.
      Take a look at iPad teardowns at iFixit - all the antenna connectors look like UFL.

      Delete
    2. thx. i'm gonna buy the cheapest one. i will inform you of the result of my test.
      have a good day!

      Delete
  18. Anyone cut this in half yet?? So tempting....

    ReplyDelete
  19. I messed up my module saving different settings. It will show sat's when attempting to read the config file, but otherwise shows nothing :( Can you post the default file for this module?

    ReplyDelete
    Replies
    1. http://pastebin.com/L38cqv8a

      Here's my config (not the default), serial port set to 115200 bps.

      Delete
    2. Thanks Emeryth, I found a default setting thing and it worked with that, but I'll keep your file. I think I got carried away clinking stuff.... clicked cold start and wasn't patient enough for it to find sat's.

      Delete
  20. Does anyone know how/if the module can be configured to output only GGA and RMC data ?

    ReplyDelete
    Replies
    1. Yes it can, through U-Center.
      I have not tried this, but there is a config option (MSG) for selecting which messages are sent over each interface.

      Delete
    2. is there any way to make the changes persistent over power on/off couldn't find any setting ?

      Vlad

      Delete
    3. The CFG configuration message lets you save settings to flash.

      Delete
  21. I should have payed more attention :) if anyone wants to configure this device to output only GGA and RMC data this are the steps to follow (using the u-center tool):
    1. go to view-> configure view
    2. select MSG(Message)
    3. from the dropdown box select which strings you don't want to output and deselect on which interface you don't want to output and remember to hit send after every change

    hope this helps someone,
    Vlad

    ReplyDelete
  22. Hi

    I have brought one from ebay, but can't get gps fix.
    Have happened to someone?

    ReplyDelete
    Replies
    1. Did you attach an antenna?
      Are you getting any satellites at all?

      Delete
    2. It's strange because in the ublox center show me the satellites conected and state of the signal. When disconnect the antenna can't see the satellites like should be.
      when i go see the data send on a console don't show any satellites connected.

      Delete
    3. I am seeing the same thing with a module that I purchased. Using the u-center program and Emeryth's configuration file, I am currently "Tracking" 8 SVs but none of them are 'Used" and I am not showing any Lat/Lon information and the SkyView window shows up blank.

      Delete
    4. Did any of you manage to solve this problem? My module finds all the satellites in a second, but then fails to get a fix, even when left for hours. Looking in the u-center monitor section, it seems it also doesn't get the ephemeris data from the satellites. The signal strength for most of the satellites varies by ~10dB+ from sample to sample.

      Delete
    5. I am having the same issue. I can track 5 to 8 sats but I never get a position fix. It always says NoFix.

      Delete
  23. Hey,

    i have some question:

    1. USB-Supply:
    surely i have to reduce the supply voltage from 5v to 3v3, i do that with a low-voltage-drop regulator (MCP1700-3302E) its designed for 250mA. is that enought? how much does that board draw (with/without active antenna)?

    2. USB-D+/D-:
    i'm not soo sure about the usb data lines. what is better to use, inline resistors (with which value? 72R / 68R / 33R? i've seen severel configs) or z-diodes to GND? and do i even need them?

    3. UART:
    did someone figure out if the inputs are 5V compatible?

    ReplyDelete
    Replies
    1. 1. I'm not sure how much exactly the module draws, but 250mA seems enough. Even if it isn't, the worst thing that will happen is that voltage will drop and the module will reset.

      2. You don't need any protection, the D+/D- testpoints are directly connected to the pins on the edge connector, which will be connected to your USB controller like a regular device.

      3.I have no idea

      Delete
  24. First of all thanks for the tip Emeryth!

    I wrote a python script to decode the GPS data. I use it to create a html file hosted on a Raspberry Pi running a web server. The script can be found here: https://gist.github.com/Lauszus/5785023.

    ReplyDelete
  25. I have cut it, not half but the remaining part is square and it is working ok.

    ReplyDelete
  26. Has anyone used this for anything? I would love to make some kinda logger that I could put inside my RC airplanes and take with me on bike rides to save my route and speed.

    ReplyDelete
  27. I just want to confirm that you can cut the PCB!! If you remove the sticker on the top, there is a Ublox logo, I cut along that logo with my dremel and it still works fine without that inch of un-used PCB!

    ReplyDelete
    Replies
    1. I also did it: http://galeria.tech-blog.pl/U-blox_PCI-5S_GPS/U-blox_PCI-5S_GPS_10.jpg.html

      Delete
    2. Nice, but be careful with the connector you made, the test pads are easy to rip out :/

      Delete
    3. Thanks for the warning. I'm going to use epoxy glue, to protect it.

      Delete
  28. hi,
    have someone try to find where to connect a battery for not have always cold boot?

    ReplyDelete
  29. this is what i was looking for. I've ordered one already :) btw, I've fount this thingy on ebay: http://www.ebay.com/itm/1pc-Import-GPS-Module-SIRF3-TTL-RS232-/281190259803 and I'm wondering if it could work with an atmega... sry for bad english :)

    ReplyDelete
    Replies
    1. I think that's this one:
      https://www.sparkfun.com/products/8234

      Delete
  30. I'm really stuck. I am unable to get a lat/long from the unit. I pickup sat's but they only appear in the sat signal monitor as blue bars and not green bars as expected. If I take the unit outside I was tracking 13 'blue' sats but apparently they don't provide position info? Tried just about everything in the config file.

    ReplyDelete
    Replies
    1. Since most modules are really old, the almanac and ephemeris data might be outdated. They will get updated when receiving data from the satellites. This takes at least 12.5 minutes. You can get a faster time to fix if you download current data from the web and send it to the module. Use u-center > Tools > AssistNow Offline, select "14 Days AlmanacPlus" and "Flash update". After clicking "OK" you should get a position fix in short time.

      Delete
  31. After Emeryth published the pinout, I also started to experiment with this board. I found out that you can update the firmware using the LEA-5 firmware version 6.02 from the u-blox web site. The module also works very well with the patched firmware version EXT_G50_602_LEA-5H.bdbfccefb9dbd8395dec7adece53c1f9.bin. This version enables the output of raw data for use with rtklib for real-time kinematic and precision positioning.
    I am currently using the module with a Mini-PCIe-to-USB adapter for 3G WWAN cards like this one:
    http://www.ebay.com/itm/MINI-PCI-E-TO-USB-PCI-E-TO-SIM-3G-TEST-CARD-WWAN-TEST-CARD-upgrade-veersion-/251378335831?pt=LH_DefaultDomain_0&hash=item3a87510057
    You can then use the standard drivers from the u-blox web site for Windows. They provide a virtual COM port. Please note that updating the firmware just worked using the physical serial port of the Mini-PCIe card, it did not work using the USB adapter.

    ReplyDelete
    Replies
    1. Thanks a lot, I wondered about the firmware update myself, but didn't want to risk it.

      Delete
  32. You have great collection regarding Electronics products. I really like your blog, I have found some very helpful article. I would like to say Thanks for sharing such a good collection.
    Best 7 Inch Tablet

    ReplyDelete
  33. Hi, I have an idea and would need your help to let me know what exactly i need to purchase to get this working:

    - gps unit that will be placed outdoors in/on a small plastic construction. it can be either outside on the construction or inside, but the construction will be outdoors, so it will be there when it rains/snows.
    - on the construction there will be a solar panel to power the gps
    - the gps needs to send its location 24/7 so that a person coming with a mobile phone will be able to receive its signal and find it

    thats all. can you please let me know:
    - does the gps have to be outside on the construction in order to send signal or can it "see" through the construction so it can be inside (so it wont have to be waterproof)?
    - how can i supply power from the solar panel to the gps?
    - what product (gps+antenna+..?) do i need to purchase for this to work?
    - + some mobile app to interpret the data..?

    thanks!

    Tomas

    ReplyDelete
  34. I used this chip and your pin layout for an autopilot project of my own!
    http://denialmedia.ca/?p=360

    ReplyDelete
  35. hello all,

    Emeryth, nice blog. The info about pinout of the pci-5s help me a lot.
    I already using this for an ntp server with pps support.

    Does anyone knows what are the other pads-test points on the board?

    Thank you all,
    Petros

    ReplyDelete
  36. U-blox PCI-5S - a cheap GPS module for your projects indeed has many advantages, thanks for the idea

    ReplyDelete
  37. very nice,, module makes my inspiration for the future,, trimakasih for posting

    ReplyDelete
  38. hi! Can somebody help me? I just bought it from eBay but it came with no drivers... Once I put the card on my laptop it doesn't show up in the device manager... any ideas? What should I do?

    ReplyDelete
    Replies
    1. Добрий вечір!
      В мене така сама проблема.
      Ви цю проблему вирішили? якщо так, підскажіть як.
      Дякую.

      Delete
  39. Thanks for this Interesting and useful information that you have provided here on your page.

    gps antenna manufacturers & cell phone booster antenna

    ReplyDelete
  40. If I install this in on a board with mini-pci slots, do I simply wire PPS output from the GPS module to COM2's DCD header?
    http://i.imgur.com/cfN4W69.jpg

    ReplyDelete
  41. I discovered that the pads between TX and RX is i2c SDA and the pad below RX is i2c SCL, and the pad to the left of the USB is a GPS Fix LED State, here's a pic with the pads I was able to identify.

    https://photos.google.com/album/AF1QipOGZCbmEz4Dz2Eia2fWAqSSVyyk1uaFy9rD398M/photo/AF1QipPGOgO9JEWhZxfdl4Ect143CgqsKX1OXuspl3-S

    ReplyDelete
  42. Appears to be a 100 pin BGA UBX-G5000-A00-BT u-blox5 Baseband Processor
    - GPS + Galileo (with firmware update)
    - 32 channel acquisition engine, 18 channel tracking engine

    - Integrated DC/DC converters enable power-efficient applications with single voltage supply
    - Current: 25 uA
    - Voltage range: 1.3 – 4.8 V
    - Power Consumption: 50 mW (tracking & navigating)

    - Connectivity: USB, 2 UARTs, SPI, DDC
    - GPIOs: 22 I/O, 3In Voltage range: 1.2 – 3.3 V

    Datasheet - http://read.pudn.com/downloads113/ebook/473139/UBX-G5010.pdf

    ReplyDelete
  43. Super-Duper site! I am Loving it!! Will come back again, Im taking your feed also, Thanks. GDPR toolkit

    ReplyDelete
  44. Greate article. Keep writing such kind of info on your site. Im really impressed by your site.
    Hello there, You've performed a great job. I will certainly digg it and individually recommend to my friends. I am sure they'll be benefited from this website.

    ReplyDelete
  45. I am in fact grateful to the owner of this site who has shared this great article at at this time.

    ReplyDelete
  46. I appreciate your article. You truly share relevant and extraordinary knowledge. Thank you for keep sharing these valuable thoughts.

    VIDEO OPT AMP 2RU MTG - TELLABS INC
    DCD GPS TMG RCVR - SYMMETRICOM
    DCD GPS TMG RCVR 5.3 - TODD PRODUCTS

    ReplyDelete