Jump to content

Serial GPS via Prolific BU-353


Recommended Posts

The Packet Squirrel is EXACTLY what we need to passive collect in-line traffic, but time drift is causing end to end packet analysis near impossible. I've installed NTP on the PS and have received timing via the network, but we have to always assume that we'll never reach an NTP server. The systems that collect the network streams also don't have NTP inside them, so we can't do any Wireshark time adjustments. Our only method to receive sub-millisecond precision is to use a USB-to-serial GPS device (based on cost). In the past, we've used GPS via USB Serial (Raspberry Pi) to timestamp packets collected successfully. We now wanted to leverage that same concept on the PS, but are not able to read serial NMEA streams? Do we need a custom firmware build to access usb-to-serial streams?

Link to comment
Share on other sites

35 minutes ago, andersen73 said:

We now wanted to leverage that same concept on the PS, but are not able to read serial NMEA streams? Do we need a custom firmware build to access usb-to-serial streams?

You should be able to use gpsd which can run on Openwrt, I haven't tried it on the PS so don't know if there is enough room, and of course you loose your USB storage unless you use a mini USB hub.

Quick google guide (im sure you may find better) http://www.h-wrt.com/en/doc/gps

Link to comment
Share on other sites

Thanks for the quick reply. I do have a mini USB hub with the USB storage attached. It's just that I can't get the NMEA streams (or any echo'd serial streams) via USB-to-Serial from my device. When I plug into both my Raspberry Pi 3 and/or Window 10 system, I can serially see the proper NMEA streams and set my NTP as the source. It's the OpenWRT on the PS that's giving me problems. Here's some output for reference.

root@squirrel:/dev# uname -a
Linux squirrel 3.18.45 #16 Mon Nov 20 01:57:52 UTC 2017 mips GNU/Linux

root@squirrel:/dev# busybox
BusyBox v1.23.2 (2017-09-06 11:27:56 UTC) multi-call binary.

root@squirrel:/dev# lsusb
Bus 001 Device 005: ID 05e3:0608
Bus 001 Device 001: ID 1d6b:0002
Bus 001 Device 006: ID 0781:5583
Bus 001 Device 007: ID 16c0:0483   <---- **** NMEA GPS USB-to-Serial device

root@squirrel:/dev# dmesg | grep tty
[    0.000000] Kernel command line:  board=HAK5-SQUIRREL  console=ttyATH0,115200 rootfstype=squashfs,jffs2 noinitrd
[    0.670000] ar933x-uart: ttyATH0 at MMIO 0x18020000 (irq = 11, base_baud = 1562500) is a AR933X UART
[    0.680000] console [ttyATH0] enabled

****Shouldn't I see ttyUSB0?

root@squirrel:/dev# ls tty*
tty      ttyATH0  ttyS0

****Shouldn't I see a /dev/ttyUSB0 connected as the Serial device?

root@squirrel:/dev# opkg list | grep usb | grep serial
kmod-usb-serial - 3.18.23-1 - Kernel support for USB-to-Serial converters
kmod-usb-serial-pl2303 - 3.18.23-1 - Kernel support for Prolific PL2303 USB-to-Serial converters
[NOTE: trimmed to show above]



Link to comment
Share on other sites

1 hour ago, andersen73 said:

Shouldn't I see ttyUSB0?

Yes or ttyACM0 depending on device. I suspect it would need the relevant serial driver, i have tried a couple for mine but nothing working so far. I hit kernel errors but even with --force-depends  gets passed but i still get nothing detected so far.

Take a look at the list - opkg list | grep kmod-usb-serial

On my Ubuntu box it detects my serial gps as a cdc_ecm ttyACM0 USB serial device. I do see a kmod-usb-acm in opkg but it still didn't work for me after a "opkg install kmod-usb-acm --force-depends" and a reboot to enable the inserted kernel module.

Sorry, im not sure where to go from here. I think it may be possible though as the gps kmods are quite small.

Hopefully someone may be able to give some further pointers. Let me  know if you get it working.

Link to comment
Share on other sites

Okay, was able to hammer out an OpenWRT system within VirtualBox from openwrt-15.05.1-x86-64-combined-ext4.img. I then added the USB Serial and NTP related packages, then plugged my USB-to-Serial device that was capturing GPS NMEA fun sending those streams via serial to the OpenWRT VM. I then tied NMEA to NTP and had precision time, thus had .pcaps with precision time (sub-millisecond).

Now it would be cool if I could get a 'beta' firmware build for the Packet Squirrel to allow us to receive NMEA streams via USB. By adding a small USB hub onto the PS that had both the USB Flash and GPS NMEA Serial device, then this could seriously help in our problem with pcap time drifting...

How can I request this firmware build or how can I add this capability to the latest Firmware 1.2 images? I can send my notes that I did for the OpenWRT VirtualBox build, if that'll help.

Bueller... Bueller... Bueller ... Anyone

Link to comment
Share on other sites


This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Create New...