TimeStick V2 — USB to 2.5GbE Adapter with AX88279 and SMA Timing Port
TimeStick V2 — USB to 2.5GbE Adapter with AX88279 and SMA Timing Port
The TimeStick V2 brings precision timing and advanced network functionality to any platform with a USB port. In a compact stick form factor, it integrates the high-performance ASIX AX88279 USB-to-Ethernet controller with a 1PPS SMA output, a 5-pin GNSS connector, and a DIP switch for IO control — making it a powerful tool for building portable PTP clients or grandmasters without needing a PCIe slot.
GitHub: https://github.com/armando-jp/TimeStickV2
Key Features
- SMA connector — configurable as 1PPS input or output via onboard DIP switch
- 5-pin right-angle GNSS connector — for connecting an external GNSS module
- DIP switch — controls SMA IO direction without software changes
- USB 3.0 Type-A — plug-and-play with any USB 3.0 host
- RJ45 with up to 2.5 GbE — high-speed Ethernet via AX88279 controller
DIP Switch Settings
The onboard SMA can be configured as either an input or output using the DIP switch. Refer to the DIP switch settings diagram on GitHub for the full configuration table.
Schematics
Driver Setup
Tested on Ubuntu 22.04.1 LTS (kernel 6.8.0-90-generic) and Ubuntu 24.04.02 LTS (kernel 6.11.0-29-generic).
Building the Driver
1. Download the AX88279 Linux TOD Suite from the official ASIX GitLab repository.
unzip ax88279_linux_tod_suite-main.zip
cd ax88279_linux_tod_suite-main
unzip ASIX_USB_NIC_Linux_Driver_Source_v3.5.17_251008.zip
cd ASIX_USB_NIC_Linux_Driver_Source_v3.5.17_251008
makeIf successful, ax_usb_nic.ko will be created in the current directory.
Installing the Driver
Install for use with modprobe (backs up the built-in ax88179_178a driver if present):
sudo make installLoad or unload the installed driver:
sudo modprobe ax_usb_nic
sudo modprobe -r ax_usb_nicCheck driver info:
modinfo ax_usb_nicManual Driver Loading
To load from the build directory without installing:
sudo modprobe mii
sudo insmod ax_usb_nic.koTo unload manually:
sudo rmmod ax_usb_nicCheck driver info:
modinfo ax_usb_nic.koPTP Test Setup
Prerequisites
sudo apt install net-tools
sudo apt install ethtool
sudo apt install linuxptpNote: The test script assumes the ax_usb_nic driver has been installed via sudo make install.
Running ptp_setup.sh
The /Scripts/ directory in the GitHub repo contains ptp_setup.sh for quickly configuring a PTP master/slave test.
1. Identify the TimeStick V2 network interface on each machine:
ifconfig2. On the master machine:
./ptp_setup.sh <device_name> -m3. On the slave machine:
./ptp_setup.sh <device_name> -sTip: Run both scripts at the same time to avoid one timing out while waiting for the other.
4. Stop the script by pressing s then Enter.
Script usage reference:
Usage: ./ptp_setup.sh <device_name> <mode>
<device_name>: The network interface (e.g., eth1).
<mode>: 'm' for master, 's' for slave.With an oscilloscope connected to both TimeSticks and a rising-edge trigger on the master, you should see the 1PPS signals converge as PTP synchronizes.