Wireless Gameboy Controller (For PC/RPi, NES, SNES, N64, Gamecube, Wii, NES/SNES Classic Mini)

$16.00$32.00 USD

Wireless Gameboy/GBA Controller (wirelessgbc.com) allows you to use your Gameboy, MGB, GBC, GBA, GBA SP, GB Micro, DS and DS Lite as a wireless controller. Play games on your PC, laptop, RPi, etc, or use it to play games on a NES, Super Nintendo, N64, Gamecube or Wii wirelessly using any supported Gameboy of your choice. Read more about the receivers/transmitters below. Designed and made in Australia.

Check the tabs on the left of this page which cover how to use this product, FAQ, wiring options and firmware updates.

Retro Modding stock this product.

Please note that this is not a Bluetooth device.

Take a look at the overview video and some reviews on YouTube: TRF, ND, TJ, Arhn. Questions? Jump on our Discord server where we and other users can help you or contact us via Twitter.

Latest News:
12 June 2023 – DS TX cart now available! Requires an R4 card or similar. Useful when paired with our Wireless RX which can be installed in multiple DS’s for shiny hunting

SKU: N/A Category:

Description

You will need a cart and receiver as a minimum to get started. You can have multiple receivers per cart and you can use the same receiver for either the GB or GBA TX cart. Any receivers/transmitters you purchase will be paired together. Check out the FAQ on the left side menu. You can change some of the button mappings at start up, check the “How to use” section. If you are unsure about your use case, please send us a quick email to support@insidegadgets.com.

Check out the How to use section on the left and also the demo video below.

Receivers available

USB receiver (Type-A connector)
Use cases: Play games via emulation
Supports: Any device accepts a USB HID Joystick/Gamepad interface such as a PC (Windows/Linux), Raspberry Pi (e.g running RetroPie), etc. Users have reported it works on the Game Boy core on the MiSTer and Android through USB OTG. If you are using Windows 10, you will need VBA-M if you have the v1.2 firmware.
Refresh rate: 8ms or 125 times a second (tested on Windows 7 & Ubuntu 18.04).

NES receiver
Plugs into the NES controller port
Use cases: Play NES games
Supports: Mayflash Controller Adapter for the Wiimote (Has not been tested on an actual NES). The receiver has the 2 resistors which I believe should work on all NES consoles.

Super Nintendo receiver
Plugs into the Super Nintendo controller port
Use cases: Play SNES games that don’t need the Y/X buttons (or change some of the button mappings at start up – check the “How to use” section). Play GBA games on the GBA Consolizer using a GBA as a controller. Play Gameboy games using the Super Game Boy.
Supports: GBA Consolizer, Mayflash Controller Adapter for the Wiimote and SNES PAL/NTSC.
Refresh rate: 16/20ms which is controlled by the Super Nintendo itself.

Nintendo 64 receiver
Plugs into the N64 controller port. Select button = Z button.
Use cases: Play N64 games
Supports: Also tested on the “N64 Controller Adapter for PC USB” adapter.

Gamecube receiver
Plugs into the Gamecube controller port
Use cases: Play Gamecube games that only need the B/A buttons but even more useful is if you would like to play Gameboy games on the Game Boy Player or Virtual Console games/Emulators on the Wii.
Supports: Gamecube / Wii, Brook GC to SW (Gamecube to Switch/PC Adapter)
Refresh rate: Changes between 8 & 20ms which is controlled by the Gamecube itself.

WiiMote Expansion Port receiver
Plugs into the WiiMote style expansion port and acts as a Classic Controller.
Use cases: Play Wii games, virtual console games or games on emulators. Play games on the NES/SNES Classic Mini.
Supports: Wii & NES/SNES Classic Mini (untested but should work).

Atari 2600
Plugs into the Atari 2600 controller port

Transmitters available

Gameboy TX cart
Transmitted keys: Up, Down, Left, Right, Start, Select, B, A.
Supports: Gameboy (DMG), Gameboy Pocket, Gameboy Colour, Gameboy Advance and Gameboy Advance SP.
Range: Tested indoors to be at least 8 metres line of sight.
Refresh rate: Every 2ms, the keys are checked and a packet is transmitted to the receiver.

GBA TX cart
Transmitted keys: Up, Down, Left, Right, Start, Select, B, A, L & R.
Supports: Gameboy Advance, Gameboy Advance SP, Gameboy Micro, DS (untested but should work) and DS Lite. One user confirmed it works on the Revo K101+ system too.
Range: Tested indoors to be at least 4 metres line of sight; you can increase the PPK to improve it slightly but it also depends on how the cart is oriented when playing (there can be some dead zones) and if your fingers/body is close to the wireless module.
Refresh rate: Every 2ms, the keys are checked and a packet is transmitted to the receiver.

DS TX cart (requires an R4 or similar)
Transmitted keys: Up, Down, Left, Right, Start, Select, B, A, L, R, X & Y.
Supports: DS and DS Lite.
Refresh rate: Every 2ms, the keys are checked and a packet is transmitted to the receiver.
NDS rom file to download and M1-M4 memory instructions
Example DS config file
DS rom file is made by Colester Productions.

There are some hidden options when booting – check out the How To Use section on the left.

Please note that there is no encryption or security available for this device, while this should pose no issue for home users, it would be possible for an attacker to potentially take over your controls or block your control.

Each unit is assembled in house. The PCB finish is ENIG. You may hear some buzzing sounds coming from the speaker which is normal, it seems to sound louder on an original Gameboy.

Overview, Hidden options and Troubleshooting

Gameboy/GBA TX Cart and USB, Gamecube and SNES Receivers Demo

Learn more about how this project came to be and the inner workings of it here: Building a Wireless Gameboy Controller (acts as a USB HID Joystick)

This projects uses:

3D printed cases available for:

Wish List:

  • Bluetooth version
  • Auto-fire capability for B, A, L and R buttons

Arduino Receiver

You can use our example sketch to get started, it will listed on address/channel 1 so make sure to set your cart to that channel/address. Download WGC_Arduino_RX


The output will look like this and will keep repeating as long as the key is held down.

Modifications

Wireless communication between Gameboys

You can also have 2 of the GB carts communicating to each other with a little mod (limits you to 16KB of ROM size). You will need to re-program the flash chip and Atmel ATmega chip too. After modifications and re-programming, we can have 2 carts communicating to each other playing Pong. Write up and code available.

GBA TX (old version from 2021 only) with Gamecube RX Rumble Mod
GBA TX & GC RX Rumble Mod Files
(No support will be provided for this mod)

Additional information

Weight 38 g
Product

Gameboy TX Cart, GBA TX Cart, DS TX Cart, USB Receiver (Type-A), USB Receiver (Type-C), NES Receiver, NES Receiver (BYO NES cable), SNES Receiver, SNES Receiver (BYO SNES cable), N64 Receiver, N64 Receiver (BYO N64 cable), Gamecube Receiver, Gamecube Receiver (BYO GC cable), WiiMote Receiver, WiiMote Receiver (BYO WiiMote cable), Atari 2600 Receiver (BYO Atari 2600 cable)

How to Use

If you order the cart and receiver in one order, they will come paired. All you need to do is insert the cart, plug in the receiver, configure your software (if using a USB receiver) and you’re good to go.

Under normal operation you should see the LED on the cart and the receiver light up, this shows that data is being transmitted/received. With the latest receiver firmware, it will automatically search for a Gameboy or GBA cart when powered on, you will see it blink once a second or so.

Software setup examples
BGB: Go to Options > Joypad and configure the game controller.

VBA: Go to Options > Joypad > Configure > 1… and then press the buttons on the Gameboy.

If you are using Windows 10 or have issues with joystick configuration (and have firmware v1.2 or below), please try VBA-M (if you have sound issues, change the audio driver from SDL to OpenAL and DirectSound).

OpenEmu (Mac): Requires ControllerMate to convert joypad keys to standard keyboard keys

Known Issues

Multiple TX carts on different channels causing issues
Make sure to separate each TX cart by at least 3 channels as they can interfere with each other if they are too close.

GBA TX Cart
Some carts may not be detected (i.e no Nintendo boot logo) if they are fully inserted in the device, you just have to remove it slightly.

WiiMote Receiver
If you launch a virtual console game on the Wii, it appears you have to unplug and re-connect the WiiMote receiver otherwise it won’t respond to the correct key presses. You may have to do this when after you press the home button on the WiiMote.

USB Receiver
The USB receiver on firmware v1.2 and before used to output 0 to 2 for the X/Y axis which some applications didn’t work well with such as VBA on Windows 10. Firmware v1.3 corrects this issue and the X/Y axis outputs -127 to 127.

Hidden Options

Cart
– Select button held at boot – You can turn off the screen and save a bit of power.
– B button held at boot – Instead of seeing a “.” when any key is pressed, you’ll see the actual key.
– A button held at boot (GBA TX cart only) – Switch to GB mode (no L & R), useful if you haven’t updated your receivers firmware

Mappings

Please make sure your TX cart is already booted before hand. If you hold down the button before plugging in the receiver, the Gameboy/GBA buttons (column 2) will be mapped to the receiver buttons (column 3).

USB Receiver

Press the down button before you plug in the receiver and it will switch from joystick mode to DPad mode.

Gamecube Receiver

Super Nintendo Receiver

WiiMote Receiver

Nintendo 64 Receiver

GB/GBA TX Carts – Changing RF Channel/Address/Packets per Refresh

If you find that your key presses aren’t working well you may wish to change channels or increase the packets per refresh. You would see the receiver LED begin to flicker quite a lot if that’s the case or even turn off.

If your cart/receivers aren’t synced anymore, you should also follow these steps.

You can also use a single cart with multiple receivers by having all receivers be on the same channel/address.

1. Power up your Gameboy and hold down the Start button and you will see the configuration screen.

2. Use the cursor keys to change the RF channel, address or packets per refresh (every 2ms) to your liking then press the A button on the Gameboy.

3. Plug in the receiver and you should see two blinks of the LED.

4. Power cycle the Gameboy and then you should see the receiver LED turn on and stay on.

DS TX Cart

Change channel configuration, it’s a little bit tricky but this should work:

1. Power off the receiver
2. Change the channel in the SD card config file.
3. Boot the DS cart like normal and choose the M1/2/3/4 button that corresponds to the channel
4. Power up the receiver so it receives the new channel config (the LED on the receiver will blink twice)
5. Remove the TX cart and re-insert

FAQ

Ask us questions not covered here at support@insidegadgets.com

The range is very low – under a metre
We recommend changing the position of the receiver. If it’s next to any objects or is being covered up, the signal will drop. If you use a PC, try using a USB extension cable.

You can see if there is signal issues by checking the receiver’s LED – if you see it dim or quickly blink.

Does this device work with other wireless receivers or transmitters, e.g Wavebird, 8BitDo, etc?
No, unfortunately it doesn’t. You can add your own receiver or transmitter if you are familiar with the nRF2401+ module.

Does it work with Bluetooth devices?
Not at this stage as we are using the nRF24L01+ module. We have a wish list to add Bluetooth support.

Can I have multiple TX carts connect to one receiver for multiplayer games?
At the same time – no it’s not supported. However it is possible to have them paired to the receiver but only have 1 on at a time. If you switched both TX carts on, they would override each other’s button presses.

Will the receiver work with the Gameboy TX cart and GBA TX Cart?
Yes all receivers purchased after the 1st of December 2018 will work with either TX cart. You can update your firmware if need be by checking the “Updating the Firmware” tab.

Once the receiver powers up, it searches for the GB or GBA TX cart and locks on when it finds one. You will just need to have the receiver and transmitters paired together which is easy to do.

Can you add a receiver for a specific console/device?
Let us know at support@insidegadgets.com and we’ll add it to the wish list. If the console/device is readily available and not too expensive, we should be able to add support to it.

How can I pair my TX cart with my receivers?
Check out the “How to use” tab.

But just quickly – you have hold the start button when booting the TX cart to set the channel/address (make a note of them), press A to transmit, plug in the all your receivers you wish to sync and you’ll see them blink twice with high intensity. Perform the same action on any other carts you wish to have synced, enter in the same channel/address, press A and you’re done (you don’t need to plug in the receivers).

My transmitter won’t connect to the receiver
Firstly make sure that both are synced together using the steps above. If you didn’t see the high intensity double blink, then we recommend you clean the GB/GBA TX cart contacts with isopropyl alcohol or the pencil eraser method. Also see if you can clean your GB/GBA device pins as well.

Revision History

Make sure you check out the Updating the Firmware tab on how to update the USB/Gamecube/SNES receivers.

Licensing
RX receivers are licensed as CC-BY-NC (unless licensed)

Gameboy TX Cart – ROM
You will require a flasher like GBxCart RW to update
v1.2a – 20 November 2019
– Added holding down the Select + Down button at boot to make the screen black for backlit screens

v1.2 – 28 October 2018
– Added holding down the Select button at boot to turn off the screen (saves some power)
– Added holding down the B button at boot to show you the keys being pressed (consumes more power)
– Added nRF configuration option – packets per refresh (defaults to 1, allows up to 4). Can be useful if you are experiencing packet loss and don’t want to change channels/address.
– Now uses timers/halt to wake up every 2ms and check for key presses to save power [Thanks to Reddit /u/lost_file for the suggestion]

v1.1 – 27 October 2018
– Added holding down the Start button at boot to change nRF channel/address configuration

Gameboy TX Cart – AVR Firmware
v1.2 – 28 October 2018
– Added nRF configuration option
– Improved method of reading the WR line going low and compatibility with CGB-JPN-1 GBC
– Now reads configuration data to store on ATmega EEPROM at only 0x6000
– Added nRF configuration option – packets per refresh

v1.1 – 27 October 2018
– Added protection of the EEPROM by disallowing changes if a write to 0x7000 was detected (when it’s running in normal cart operation)
– Added nRF configuration options channel/address

GBA TX Cart – ROM
You will require a flasher like GBxCart RW to update.
v1.1b – 2023 (only for carts purchased after 2023)
v1.1a – 22 Dec 2019 (only for carts purchased before 2022)
– Updated to black out the screen for backlit screens if you hold Down + Select at boot

USB Receiver
v1.6 – 9 May 2021
Added the option of Dpad inputs mapping to button presses if you hold the Down button on the GB/GBA TX cart when the USB RX connects for the first time

v1.5 – 30 May 2019
– Fixed bug when detecting GB/GBA TX if some keys were held down

v1.4 – 2 May 2019
– Added support for Multi-TX SNES board

v1.3 – 16 March 2019
– Changed X/Y axis output from (0 to 2) to (-127 to 127) which should allow some applications on Windows 10 to work properly now such as VBA

v1.2 – 28 November 2018
– Added support for GBA TX cart (L & R buttons)
– On boot up, it will automatically search for a GB/GBA TX cart

v1.1 – 27 October 2018
– Switched to ATtiny441/841 due to nRF DO/DI mix up
– Added nRF configuration options channel/address

Gamecube Receiver
v1.4 – 30 May 2019
– Fixed bug when detecting GB/GBA TX if some keys were held down
– Fixed bug with timeout not occurring

v1.3 – 2 May 2019
– Added support for Multi-TX SNES board

v1.2 – 15 March 2019
– Added support for Brook GC to SW (Gamecube to Switch/PC Adapter)
– Slightly changed how the key press data is updated (lower chance of glitches – not that there were any reported before)

v1.1c – 6 February 2019
– Added option of holding down A button when the receiver is plugged in to change mapping of the Gameboy B button outputting the GC Y button and Gameboy A button outputting the GC B button
– Added option of holding down L button when the receiver is plugged in to change mapping of the GBA L button outputting the GC A button

v1.1a – 9 December 2018
– Added support for GameBoy Interface software

v1.1 – 28 November 2018
– Added support for GBA TX cart (L & R buttons)
– On boot up, it will automatically search for a GB/GBA TX cart
– For GBA TX cart: Added support for L/R push down and click after 1-2 seconds option (hold down R when the receiver is plugged in)

v1.0 – 19 November 2018
– Initial Release

NES Receiver
v1.2 – 30 May 2019
– Fixed bug when detecting GB/GBA TX if some keys were held down

v1.1 – 2 May 2019
– Added support for Multi-TX SNES board

v1.0a – 12 March 2019
– Slightly changed how the key press data is updated (lower chance of glitches – not that there were any reported before)

v1.0 – 14 February 2019
– Initial Release

Super Nintendo Receiver
v1.5 – 30 May 2019
– Fixed bug when detecting GB/GBA TX if some keys were held down
– Fixed bug when timeout occurred it would keep restarting the receiver

v1.4 – 2 May 2019
– Added support for Multi-TX SNES board

v1.3 – 12 March 2019 (only use if your board has 12MHz crystal)
– Switched crystal from 16MHz to 12MHz to allow for 3.3V input instead of the usual 5V
– Slightly changed how the key press data is updated (lower chance of glitches – not that there were any reported before)

v1.2a – 12 March 2019 (only use if your board has 16MHz crystal)
– Slightly changed how the key press data is updated (lower chance of glitches – not that there were any reported before)

v1.2 – 7 February 2019
– Improved compatibility – set first bit of data byte when latch is high
– Added 2 second timeout. If no packet is received, the key press data is reset to the default (no keys pressed).

v1.1 – 31st January 2019
– Improved compatibility – now supports the Mayflash Controller Adapter for the Wiimote

v1.0 – 1st January 2019
– Initial Release

WiiMote Receiver
v1.2 – 30 May 2019
– Fixed bug when detecting GB/GBA TX if some keys were held down
– Fixed bug when timeout occurred it would keep restarting the receiver

v1.1 – 2 May 2019
– Added support for Multi-TX SNES board

v1.0a – 30 April 2019
– Fix option at boot: Down held down, use the joystick instead of the DPad

v1.0 – 26 February 2019
– Initial Release

Nintendo 64 Receiver
v1.3 – 16 Nov 2021
– Fixed issue were the N64 would say there is no controller plugged in if you didn’t press any keys at boot.
– Fixed issue where with a GBA TX cart buttons held down at RX boot sometimes didn’t work
– Added GBA R trigger to map to C-Up if R trigger is held at RX boot which also maps GBA D-Pad to N64 D-Pad, GBA select button becomes N64 L trigger, GBA L trigger to N64 C-Right

v1.2 – 30 May 2019
– Fixed bug when detecting GB/GBA TX if some keys were held down
– Fixed

v1.1 – 2 May 2019
– Added support for Multi-TX SNES board

v1.0a – 29 April 2019
– Added option of holding down L button when the receiver is plugged in to change mapping of the GBA L button outputting the N64 Z button

v1.0 – 12 April 2019
– Initial Release (includes 5 second packet timeout)

Multi-RX
v1.3 – 15 May 2019
– Added support for Multi-TX SNES board

v1.2b – 29 April 2019
– Added option of holding down L button when the receiver is plugged in to change mapping of the GBA L button outputting the N64 Z button
– Fix option at boot: Down held down, use the joystick instead of the DPad

v1.2a – 22 April 2019
– Added support for Brook GC to SW (Gamecube to Switch/PC Adapter)

v1.2 – 13 April 2019
– Added N64 Adapter support

v1.1 – 10 April 2019
– USB: Changed X/Y axis output from (0 to 2) to (-127 to 127) which should allow some applications on Windows 10 to work properly now such as VBA
– Added 5 second timeout if no packets are received, it will go back to checking for a GB or GBA TX cart

v1.0 – 7 March 2019
– Initial Release

Updating the Firmware

Receivers

You will need a USBasp which allows for 3.3V (or USBTinyISP or similar) from Ebay for around $2.

For the old style of 6 pin (3×2) receiver you can purchase a 6 Pin To 10Pin Adapter for $1 and a DC3-6P connector for $1 (or just use male pin headers).

For the new style of 6 pin (1×6) receiver, you will need to solder wires to the board.

1. Download the firmware update file (updated July 2023). Check the Downloads page for the latest firmware. You may need to install this USBasp driver package.


(New receivers will need soldering)

2. Switch the USBasp to 3.3V using the jumper and connect all the parts together.

3. Cut the heat shrink to have access to the 6 pin ISP header

4. Plug in the USBasp, insert the connect as shown. It won’t go all the way in, it will barely be in place.

5. You will need to apply some twisting force to the connector so the pins make contact while you run the firmware update file.

You should see the above happen, it will take a few seconds and then check that it says “avrdude done. Thank you.”

Wiring for BYO Cable options

BYO Cable options

If you purchased the BYO cable option, here are the pinouts I have found from generic Ebay controller extension cords. It’s best to actually determine these yourself because the wiring may change at any given time.

Standalone receivers

Nintendo NES Generic
5V = Red
Clock = Green
Latch= Yellow
Data = Black
GND = White

Nintendo Genuine Super Nintendo PAL vs Generic
White = 5V = Green
Yellow = Clock = Yellow or White (sometimes these are swapped)
Orange = Latch= White or Yellow (sometimes these are swapped)
Red = Data = Red
Brown = GND = Black

Nintendo Genuine GameCube PAL vs Generic
Yellow = 5V = White
Blue = 3.4V = Green
Red = Data = Red
Black/Green = GND = Black
White = GND = Yellow

Nintendo WiiMote Generic v1
3.3V = Red
SCL = Yellow
SDA = Green
GND = White / Black

Nintendo WiiMote Generic v2
3.3V = Green / Black
SCL = White
SDA = Yellow
GND = Red

Nintendo WiiMote Generic v3
3.3V = Yellow & White (white = device detect)
SCL = Green
SDA = Red
GND = Black

Nintendo 64 Generic v1
3.3V = Red
Data = Green
GND = Black

Nintendo 64 Generic v2
3.3V = Red
Data = White
GND = Black

Atari 2600 Generic
5V = White
Up = Red
Down = Black
Left = Grey
Right = Orange
Fire = Green
GND = Blue

Multi-RX wiring
VCC = 3.3V or 5V
A = Gamecube 3.4V
B = SNES Latch
C = SNES Clock, Gamecube Data, WiiMote SCL
D = SNES Data, WiiMote SDA
GND = GND

Reviews

There are no reviews yet.

Only logged in customers who have purchased this product may leave a review.