USB Gecko

From WiiBrew
Jump to navigation Jump to search
A USB Gecko is an adapter to connect a Wii to a PC through a Gamecube memory slot

The USB Gecko is a Wii/Gamecube development and hacking tool which connects to the USB port of the computer, and to the GameCube memory slot of the Wii. It can be used to upload homebrew, to use your computer as a remote terminal under Wii Linux and as a remote debugging tool. For more information see the USB Gecko homepage. It has recently been discontinued and the schematics released on Google code. A snapshot of the code tree is here.

See Gecko OS for the Hombrew application to launch a game and be able to debug it remotely using this device.

Windows Side Application Programming

For Win32 : API DOC

Linux Side Application Programming

The USB Gecko will usually be recognized as a USB to serial port converter and a device file of the form /dev/ttyUSB0 will appear. Simply writing to and reading from this device file will send data across the USBGecko link.

Failing that, userspace tools could use the libusb library and usb_bulk_write and usb_bulk_read functions. The USBGecko will appear as 0403:6001 in the lsusb output.


Hi res photo

The USB Gecko is a two step converter to convert EXI<->serial<->usb. It is a fancy serial port. All the fun is provided by software. No, the EXI interrupt is not possible to trigger from the PC.

The Gecko has 3 chips:

  • The USB interface is provided by the FT245RL which converts USB to an 8 bit bidirectional FIFO.
  • The FIFO is connected to an ALTERA CPLD (Complex Programmable Logic Device) EPM570T100C5N which converts the parallel data to a serial datastream needed for the Wii's EXI port.
  • There is a 512K byte flashrom, the SST39VF040 which is accessable only on the Wii side through the Altera CPLD. This is not strictly necessary for the USB Gecko's main functionality.

USB Gecko schematics (BSD licensed)