This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

Thread Rating:
  • 2 Vote(s) - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
libGPS for TinkerBoard Android
#31
@lobo:

No HDMI output only in bootloader mode, so unlike mobile phone TB's console output need a terminal connection to the UART pins, thanks for the clarification.
Reply
#32
Hello

i do all the steps in this thread and it doesnt work for me.
i use gnss-5-click module 
if i run a command like - cat ttyACM0, i see the NMEA in the shell, but in the logcat and u-center i doesnt see anything 

who can help me?

thanks
Reply
#33
(03-25-2018, 06:10 AM)djpeng Wrote: 03-25 13:58:54.398  4194  4207 D gps_zkw : gps_hardware_power: line = 1243, /proc/gps open faild, errno 2
03-25 13:58:54.398  4194  4207 D gps_zkw : zkw_gps_start: line = 1264, zkw_gps_start: called
03-25 13:58:54.399  4194  4207 D gps_zkw : gps_state_start: line = 904, Could not send CMD_START command: ret=-1: Bad file descriptor
03-25 13:58:54.399  4194  4207 D gps_zkw : gps_state_start: line = 908, $PCGDC,IDLEOFF,1,*1

same error here!
connected with a gps to the UART, get NMEA messages through cat /dev/ttyS1, but get the same error.
In the tinkerboard there's no /proc/gps path...
Is there any solution?
thanks
Reply
#34
(07-28-2018, 04:14 PM)rt_rt Wrote:
(03-25-2018, 06:10 AM)djpeng Wrote: 03-25 13:58:54.398  4194  4207 D gps_zkw : gps_hardware_power: line = 1243, /proc/gps open faild, errno 2
03-25 13:58:54.398  4194  4207 D gps_zkw : zkw_gps_start: line = 1264, zkw_gps_start: called
03-25 13:58:54.399  4194  4207 D gps_zkw : gps_state_start: line = 904, Could not send CMD_START command: ret=-1: Bad file descriptor
03-25 13:58:54.399  4194  4207 D gps_zkw : gps_state_start: line = 908, $PCGDC,IDLEOFF,1,*1

same error here!
connected with a gps to the UART, get NMEA messages through cat /dev/ttyS1, but get the same error.
In the tinkerboard there's no /proc/gps path...
Is there any solution?
thanks

Could you please show me the content of your gps.conf in /system/etc/ ? And please give more information, as dongle type, baud rate, connection type, gps chipset, etc.
Thanks.

(07-23-2018, 02:13 PM)arthur99 Wrote: Hello

i do all the steps in this thread and it doesnt work for me.
i use gnss-5-click module 
if i run a command like - cat ttyACM0, i see the NMEA in the shell, but in the logcat and u-center i doesnt see anything 

who can help me?

thanks

What is gnss-5-click module? Are you sure, you have installed gps.default.so in /system/lib/hw ? There should be at leat some messages gps_zkw from the driver in logcat.
Reply
#35
Hi all !
I tried all the variants and did not show me a message, it does not connect to the satellite, nothing!
I'm not a programmer and I do not know how to compile!
Please help me with installing the NEO6M GPS via USB step by step, like the little ones!
I use the ADB program through Windows PC to connect to TinkerBoard with the latest Android version.
I installed SuperSU and I root the android and I installed Termux and got access to the root (I found tutorials on the net)!
Thank you very much!
Reply
#36
Dear YoZa,
please open a shell with adb and give command dmesg, right before this command, connect the usb gps device. You should see some similar messages:
Code:
[ 1475.507432] usb 3-1.4: new full-speed USB device number 5 using usb20_host
[ 1475.606598] usb 3-1.4: New USB device found, idVendor=1546, idProduct=01a7
[ 1475.606624] usb 3-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 1475.606631] usb 3-1.4: Product: u-blox 7 - GPS/GNSS Receiver
[ 1475.606644] usb 3-1.4: Manufacturer: u-blox AG - www.u-blox.com
[ 1475.613246] cdc_acm 3-1.4:1.0: ttyACM0: USB ACM device
You should see the serial port, in my case is ttyACM0. With the command 'ls -l /dev/ttyACM0' you can see the permission state of the port:
Code:
crw------- root     root     166,   0 2018-08-19 12:27 ttyACM0
You see above that permission is wrong. It should be 'crw-rw-rw-'. You can change this temporally with the command 'adb shell chmod 666 /dev/ttyACM0'.
Then the permission should be:
Code:
crw-rw-rw- root     root     166,   0 2018-08-19 12:27 ttyACM0
After this you can do a restart of the Android system (not a full reboot!) with the command 'adb shell am restart'. You can check gps messages with this command: 'adb shell logcat | grep gps':
Code:
08-19 13:32:28.929  5372  5958 D gps_zkw : nmea_reader_parse: line = 574,  8: '99.99'
08-19 13:32:28.929  5372  5958 D gps_zkw : nmea_reader_parse: line = 574,  9: ''
08-19 13:32:28.929  5372  5958 D gps_zkw : nmea_reader_parse: line = 574, 10: ''
08-19 13:32:28.929  5372  5958 D gps_zkw : nmea_reader_parse: line = 574, 11: ''
08-19 13:32:28.929  5372  5958 D gps_zkw : nmea_reader_parse: line = 574, 12: ''
08-19 13:32:28.929  5372  5958 D gps_zkw : nmea_reader_parse: line = 574, 13: ''
08-19 13:32:28.929  5372  5958 D gps_zkw : nmea_reader_parse: line = 595, GPS satellites
08-19 13:32:28.929  5372  5958 D gps_zkw : nmea_reader_parse: line = 765, r->fix.flags: 0
08-19 13:32:28.929  5372  5958 D gps_zkw : nmea_reader_addc: line = 873, No nmea callback
08-19 13:32:28.929  5372  5958 D gps_zkw : nmea_reader_parse: line = 561, Received: $GPGSA,A,1,,,,,,,,,,,,,99.99,99.99,99.99*30

Or something similar.

If you don't have this:
Have you installed the driver as written here https://github.com/joerg65/libGPS_TinkerBoard ?
Have you created the gps.conf in /system/etc ?


You would need to make the permission permanent, because Android system creates after every reboot the serial port with limited permission. You can create a file 'install-recovery-2.sh' in 'system/etc/' with this content:
Code:
#!/system/bin/sh
chmod 666 /dev/ttyACM0
And make it executable with: 'adb shell chmod 755 /system/etc/install-recovery-2.sh'.
You also need to extend the existing file 'install-recovery.sh' with this line at bottom (if it is not done already):
Code:
/system/etc/install-recovery-2.sh

This would correct the permission after reboot. But the usb gps device must be connected at this time.
Reply
#37
I think it might be better to arrange the permission with a udev rule. I hardly guess a correct formula, but it is something that the kernel will work upon the device is discovered. Rather than patching such a way.
Reply
#38
(08-19-2018, 04:29 PM)Im4Tinker Wrote: I think it might be better to arrange the permission with a udev rule. I hardly guess a correct formula, but it is something that the kernel will work upon the device is discovered. Rather than patching such a way.

Yes, the above is one way for not advanced user. The other way is to write to uevent.rk30board.rc the line:
Code:
/dev/ttyACM0              0666   gps        gps
But for this, one must read the boot.img, unpack it, edit the file, pack it again and flash it to the tinker board.
Reply
#39
This I didn't know about. I supposed it was a hotplug like the PC. Then for that there could be the rules in /etc/udev/rules.
Reply
#40
I got it worked. Big Grin
I am a very beginner for T/B and android. that is the reason why I had to spent 6days to get it.
It shows right exactly where i am on google map now. GREAT isnt it.

But i couldnt understand how to unpack boot.img, so i havent edited "uevent.rk30board.rc" yet.  Huh

thank you lobo and the other fellows Shy
From Japan.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)