Skip to main content

GP2040-CE Usage

Select the button labels to be displayed in the usage guide:



The v0.5+ release has some breaking changes to boards other than the Raspberry Pi Pico. If you are using such a board, do not update from an older version unless you have a backup .uf2 from a known good version, or you know what you're doing.


GP2040-CE uses generic button labeling for gamepad state, which is then converted to the appropriate input type before sending. This table provides a map of GP2040-CE buttons to the supported input types and layouts:


If your controller is missing dedicated buttons for any specific inputs, check the Hotkeys page on how to map a button combination that will emulate those missing inputs.


Unlike other controllers, Keyboard gets different keys for directional buttons. You can change the key mappings for Keyboard mode in Webconfig mode > Configuration > Keyboard Mapping

UpUp Arrow
DownDown Arrow
LeftLeft Arrow
RightRight Arrow

Bootsel Mode

Bootsel Mode is the state of the board where firmware can be flashed onto the board. You will need to use this whenever there is an update or as part of the troubleshooting process.

You can boot into Bootsel Mode by either holding S1 + S2 + Up buttons while plugging in the controller or by booting into the Web Configurator and then restarting in Bootsel Mode.

WebConfig Mode

WebConfig Mode is the state of the board where built-in web browser-based configuration application is launched. From here, you can customize and configure your controller as needed. For more information, click here for more information.

You can boot into WebConfig Mode by holding the S2 button while plugging in the controller.

Input Modes

GP2040-CE is compatible with a number of systems and input modes. To change the input mode, hold one of the following buttons as the controller is plugged in:

Input ModeButton Held
Nintendo SwitchB1

Input mode is saved across power cycles.


A number of useful hotkeys exist that change the functionality of GP2040 without needing to access the Web Configurator. Commonly used hotkeys include changing the directions to emulate a digital DPad, Left analog joystick, Right analog joystick or to change Simultaneous Opposite Cardinal Direction (SOCD) cleaning modes. Different SOCD cleaning modes will ensure the controller obeys certain directional input rules when sending inputs to the computer or game console.

A number of hotkeys are enabled by default and if you are encountering issues with unexpected behavior on your controller, verify that you did not accidentally trigger a hotkey.

Hotkeys Enabled By DefaultInputs
Home ButtonS1 + S2 + Up
Dpad DigitalS1 + S2 + Down
Dpad Left AnalogS1 + S2 + Left
Dpad Right AnalogS2 + A1 + Right
SOCD Up PriorityS2 + A1 + Up
SOCD NeutralS2 + A1 + Down
SOCD Last WinsS2 + A1 + Left
SOCD Invert Y AxisS2 + A1 + Right

Selected D-Pad mode and SOCD cleaning mode are saved across power cycles.

Add-Ons and Additional Features

There are a number of add-ons that expand the functionality of GP2040-CE, such as analog joystick emulation and turbo functions. Due to the large number of add-ons created by the community, they are located in a separate documentation page. Navigate to Add-Ons page for more information on the individual add-ons.