neige d'aoust

knowledge, art, and other stuff

User Tools

Site Tools


gobi2000

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
gobi2000 [2025/03/06 19:50] Yukigobi2000 [2025/03/07 17:15] (current) Yuki
Line 1: Line 1:
 ====== Install a Qualcomm Gobi 2000 on a Thinkpad on Linux ====== ====== Install a Qualcomm Gobi 2000 on a Thinkpad on Linux ======
 +
 +A 3G modem with GPS support built into some IBM/Lenovo ThinkPad laptops.
 +
 +<note important>
 +Most carriers turned 3G off already or are going to do so in 2025, so the modem part is going to be useless unless you somehow managed to make your own 3G transmitter. The GPS part should still work, so these instructions should still apply for the foreseeable future, as long as the GPS satellites are still in orbit.
 +</note>
  
 See also [[https://www.thinkwiki.org/wiki/Qualcomm_Gobi_2000]] See also [[https://www.thinkwiki.org/wiki/Qualcomm_Gobi_2000]]
  
-You can verify the ID with ''lsusb'', on mine it's ''05c6:9204''.+You can verify the ID with ''lsusb'', on mine it's ''05c6:9204''. Take note of it, it's going to be important later.
  
 ===== Install software and firmware ===== ===== Install software and firmware =====
Line 10: Line 16:
  
 <note warning> <note warning>
-Do not install ''gobi-firmware'', it probably has the wrong firmware, instead install it manually as described below.+Do not install ''gobi-firmware'' from the repos, it likely has the wrong firmware. Instead, install it manually as described below.
 </note> </note>
  
Line 26: Line 32:
 </code> </code>
  
-These are the generic ones, refer to [[https://www.thinkwiki.org/wiki/Qualcomm_Gobi_2000#Choosing_the_Right_Firmware|this table]] if you have a carrier in the list.+This copies the generic ones, refer to [[https://www.thinkwiki.org/wiki/Qualcomm_Gobi_2000#Choosing_the_Right_Firmware|this table]] if you have a carrier in the list.
  
 Now you can reboot. If successful, the ID in ''lsusb'' should change to ''05c6:9205'', and you should have 3 devices starting with ''/dev/ttyUSB'' instead of only one. You should now be able to use it with ModemManager. Now you can reboot. If successful, the ID in ''lsusb'' should change to ''05c6:9205'', and you should have 3 devices starting with ''/dev/ttyUSB'' instead of only one. You should now be able to use it with ModemManager.
- 
-FIXME //most carriers turned 3G off already or are going to do so in 2025// 
  
 ===== Make the GPS work ===== ===== Make the GPS work =====
Line 43: Line 47:
  
 <code udev /etc/udev/rules.d/60-gps.rules> <code udev /etc/udev/rules.d/60-gps.rules>
-KERNEL=="ttyUSB2", ATTRS{idVendor}=="05c6", ATTRS{idProduct}=="9205", RUN+="/etc/udev/enable_gps $devnode+SUBSYSTEM=="tty", ATTRS{idVendor}=="05c6", ATTRS{idProduct}=="9205", SYMLINK+="gobi%n" GOTO="gobigps
-</code>+GOTO="gobigps_end"
  
-FIXME //ttyUSB2 can change if udev detects another USB serial port device at boot, use a symlink to ensure correct operation//+LABEL="gobigps" 
 +ATTRS{bInterfaceNumber}=="02", SYMLINK+="modem" 
 +ATTRS{bInterfaceNumber}=="03", SYMLINK+="gps", RUN+="/etc/udev/enable_gps $devnode" 
 + 
 +LABEL="gobigps_end" 
 +</code>
  
 <code bash> <code bash>
Line 52: Line 61:
 </code> </code>
  
-You should now be able to use gpsd, using ''/dev/ttyUSB2'' as the device, and sync time with ntp.+You should now be able to see NMEA data out of ''/dev/gps''. If it doesn'ttry with another set of firmware. Then, you can use gpsd and sync time with ntp. 
 + 
 +===== Location ===== 
 + 
 +<code bash /etc/default/gpsd> 
 +GPSD_OPTIONS="-n" 
 +DEVICES="/dev/gps" 
 +</code> 
 + 
 +<code bash> 
 +sudo systemctl enable gpsd 
 +sudo systemctl start gpsd 
 +cgps -s 
 +</code> 
 + 
 +FIXME //use geoclue to get google maps working?// 
 + 
 +===== Time ===== 
 + 
 +<note important> 
 +If you're trying to sync time with ntp or chrony, be aware this GPS does not support PPS signals, so while it can be roughly accurate to within a second, it's definitely not going to be more accurate as using NTP servers on the Internet. 
 +</note> 
 + 
 +Start gpsd, then add something like this to your chrony.conf: 
 + 
 +<code - /etc/chrony.conf> 
 +refclock SHM 0 delay 0.0 refid NMEA 
 +</code> 
 + 
 +<code bash> 
 +sudo systemctl enable chronyd 
 +sudo systemctl start chronyd 
 +watch -n1 chronyc sources 
 +</code>
gobi2000.1741308604.txt.gz · Last modified: 2025/03/06 19:50 by Yuki