Skip to content

USB Interface

All Genpix products share USB Vendor ID 0x09C0:

PIDProductStateNotes
0x02008PSK-to-USB2 Rev.1ColdRequires FW01 upload to RAM
0x02018PSK-to-USB2 Rev.1WarmRequires FW02 (BCM4500 firmware)
0x02028PSK-to-USB2 Rev.2WarmBoots from EEPROM
0x0203SkyWalker-1WarmBoots from EEPROM
0x0204SkyWalker-1 (alternate)WarmBoots from EEPROM
0x0205SkyWalker-2Not in kernel 6.16.5
0x0206SkyWalker CW3KWarmRequires CW3K_INIT (0x9D)

PID 0x0203 was added to the Linux kernel dvb_usb_gp8psk device table after v6.6.1.

PropertyValue
Control endpointEP0 (default pipe, vendor requests)
Bulk IN endpointEP2 (address 0x82) — MPEG-2 transport stream
Generic bulk CTRL endpoint0x01 (BCM4500 FW02 upload, Rev.1 only)
PropertyValue
URB count7
URB buffer size8192 bytes each
Stream typeUSB_BULK
FX2 controller typeCYPRESS_FX2
EP2CFG Register (0xE610)
EP2CFG = 0xE2; // valid=1, dir=IN, type=BULK, size=512, buf=DOUBLE
BitValueMeaning
7 (VALID)1Endpoint enabled
6 (DIR)1IN (device to host)
5:4 (TYPE)10Bulk transfer
3 (SIZE)0512-byte packets
1:0 (BUF)10Double-buffered

EP4, EP6, and EP8 are disabled (&= ~bmVALID). Only EP2 is used for data streaming.

The SkyWalker-1 (PID 0x0203) enumerates directly as a “warm” device. The DVB-USB framework skips firmware download when cold_ids is NULL. No host-side firmware files are required.

DevicePIDNeeds FW01?Needs FW02?Boot Source
Rev.1 Cold0x0200YesRAM (empty)
Rev.1 Warm0x0201NoYesRAM (FW01 loaded)
Rev.20x0202NoNoEEPROM
SkyWalker-10x0203NoNoEEPROM
SkyWalker CW3K0x0206NoNoEEPROM

All vendor commands use USB control transfers with these common parameters:

ParameterValue
bmRequestTypeUSB_TYPE_VENDOR (0x40 for OUT, 0xC0 for IN)
Timeout2000 ms
RetryUp to 3 attempts for IN operations if partial data received
Data buffer maximum80 bytes (kernel driver)

See Vendor Commands for the complete command reference.

The Linux kernel uses two modules for the SkyWalker-1:

ModuleFunction
dvb_usb_gp8pskUSB transport layer, device management, firmware loading
gp8psk_feDVB frontend operations (demodulation, tuning, signal status)