Raketenwilli: Einfachster Leseversuch (aber unter Linux....)

Beitrag lesen

Ich habe hier eine „GPS-Maus“, die via USB und einen darüber simulierten seriellen Anschluss kommuniziert. Anschluss und Kontrolle im syslog:

  • usb 1-1.3: new full-speed USB device number 10 using xhci_hcd
  • usb 1-1.3: New USB device found, idVendor=1546, idProduct=01a6, bcdDevice= 7.03
  • usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
  • usb 1-1.3: Product: u-blox 6 - GPS Receiver
  • usb 1-1.3: Manufacturer: u-blox AG - www.u-blox.com
  • cdc_acm 1-1.3:1.0: ttyACM0: USB ACM device

Soso: /dev/ttyACM0 ist also das Gerät.

<?php

$devise = '/dev/ttyACM0';

$FH = fopen( $device 'r' );
if ( $FH ) {
    while ( ( $line = fgets( $FH ) ) !== false) {
        echo $line;
    }

    fclose( $FH );
} else {
	trigger_error( 'Fehler beim Verbindungsaufbau zum Gerät ' . $devise, E_USER_ERROR );
}

da kommt:

$GPRMC,115418.000,V,0000.0000,N,00000.0000,E,0.00,0.00,280722,,,N*73

$GPVTG,0.00,T,,M,0.00,N,0.0,K,N*02

$GPGGA,115418.000,0000.0000,N,00000.0000,E,0,00,99.9,-17.0,M,17.0,M,,0000*71

$GPGSA,A,1,,,,,,,,,,,,,99.9,99.9,99.9*09

$GPGSV,1,1,04,12,,,21,20,,,19,22,,,10,31,,,21*77

$GPGLL,0000.0000,N,00000.0000,E,115418.000,V,N*49

Ich die kann also Daten lesen: Es ist in meinem Fall CSV. Willst Du das Vorgehen nicht erstmal nach Windows portieren und wenigstens mal antesten?