mru00 / crane_gps_watch

Linux and Windows client for the crane gps watch
GNU General Public License v2.0
29 stars 15 forks source link

Krippl HO0-GPS-1 watch support #28

Open knedlyk opened 5 years ago

knedlyk commented 5 years ago

Hi Rudolf, Would you like to add a support for a Krippl watches? My old crane wathch was damaged so I had to buy a new one. It is a similar watch, looks likes my old one, but I can't get tracks from this watch. Windows software doing great, I use NewBalance 900 software version 2.0.16. It says that watch has firmware version 1.20 and nothing besides that. Concerning linux, it uses different driver and probably different protocol (?). Please take a look:

[ 7857.341456] usb 8-1: new full-speed USB device number 15 using uhci_hcd
[ 7857.520458] usb 8-1: New USB device found, idVendor=04fc, idProduct=0201, bcdDevice=71.09
[ 7857.520462] usb 8-1: New USB device strings: Mfr=0, Product=2, SerialNumber=0
[ 7857.520465] usb 8-1: Product: USB to RS232C Adapter
[ 7857.523530] spcp8x5 8-1:1.0: SPCP8x5 converter detected
[ 7857.523616] usb 8-1: SPCP8x5 converter now attached to ttyUSB0
$ sudo crane_gps_watch_client --device /dev/ttyUSB0 --verbose
Opening serial port '/dev/ttyUSB0'
Connected to watch on '/dev/ttyUSB0'
error: Serial link: protocol error in 'frame leader 1' expected: 160 received: 179
Terminating

And I also can not get image file. What information should I provide to get it work with linux? Regards, Yarema

knedlyk commented 5 years ago

Probably this can help (see attachment)? test.pcap.zip

knedlyk commented 5 years ago

BTW, windows client works well, so the problem can be in the serial port initialization.

knedlyk commented 5 years ago

BTW, windows client works well, so the problem can be in the serial port initialization. With my experiments with python I had to use rtscts=True, dsrdtr=True, something like

    port=serial.Serial(port=device,
    baudrate=115200,
    bytesize=serial.EIGHTBITS,
    stopbits=serial.STOPBITS_ONE,
    parity=serial.PARITY_NONE,
    timeout=None,
    rtscts=True,
    dsrdtr=True)

to initialize serial port in the watch.