Skip to content

Commit

Permalink
Rex main (#32)
Browse files Browse the repository at this point in the history
* Add more sunga config

* fix 17b layout

* improve on the issue templates (OpenStickCommunity#880)

* Update BoardConfig.h for Pico config (OpenStickCommunity#877)

Update BoardConfig.h

Tihs PR reverts the Pico config to its original state which had  Turbo, Turbo LED, board LED and the OLED display on by default.

This was originally removed because of conflicts that could occure but we have a more robust web-config setup now.

This will address a number of issues for people that have purchased generic devices on AliExpress which were designed around the original configuration.

* Update to reintroduce PicoAnn config (OpenStickCommunity#878)

This PR brings back the PicoAnn configuration under our new board configuration structure.

It is being brought back to help users who have purchased devices running the PicoAnn configuration from vendors that are no longer operational to support updates.

---------

Co-authored-by: Brian S. Stephan <[email protected]>
Co-authored-by: TheTrain <[email protected]>
  • Loading branch information
3 people authored Mar 9, 2024
1 parent 18bdabe commit c96b421
Show file tree
Hide file tree
Showing 10 changed files with 407 additions and 148 deletions.
47 changes: 23 additions & 24 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -1,36 +1,35 @@
---
name: Feature request
about: Suggest an idea for this project
name: Feature Request
about: Suggest an idea for this project.
title: ''
labels: ''
labels: ['enhancement']
assignees: ''

---

### Have you checked the GP2040-CE documentation [HERE](https://gp2040-ce.info/) to confirm this feature doesn't already exist?
> Please read these quoted sections before submitting, and remove them (including this one) when you have provided what
> is asked, in order to make addressing the issue easier for everyone. Thank you!
>
> Be sure to:
> * Check the documentation [HERE](https://gp2040-ce.info/) to answer many questions on firmware capabilities and usage.
> * Make sure that your idea has not already been filed [HERE](https://github.com/OpenStickCommunity/GP2040-CE/issues).
> * Confirm the feature does not exist in the latest version of the firmware, found
[HERE](https://github.com/OpenStickCommunity/GP2040-CE/releases).

Yes/No
### Problem

### Which problem is this feature request solving?
> Which problem is this feature request solving?
>
> Provide a clear and concise description of what the problem is. For example, "I'm always frustrated when..."
Provide a clear and concise description of what the problem is. For example, "I'm always frustrated when..."
### Solution

> Describe the solution you would like to see
>
> Provide a clear and concise description of what you want to happen. Let us know about other solutions you've tried or
> researched.
### Describe the solution you would like to see
### Do you plan to work on this feature yourself?

Provide a clear and concise description of what you want to happen.


### Describe alternatives you've considered

Let us know about other solutions you've tried or researched.


### Can you submit a pull request?

Yes/No.


### Are you planning on working on this feature yourself?

Yes/No.
> Beyond a simple yes or no, we are also willing to help with partial solutions or to refine a proof of concept, if you
> are able to contribute.
14 changes: 0 additions & 14 deletions .github/ISSUE_TEMPLATE/general-questions.md

This file was deleted.

47 changes: 47 additions & 0 deletions .github/ISSUE_TEMPLATE/hardware-bug-report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
---
name: Hardware Bug Report
about: Report an issue with supported hardware running GP2040-CE.
title: ''
labels: ['bug']
assignees: ''

---

> Please read these quoted sections before submitting, and remove them (including this one) when you have provided what
> is asked, in order to make addressing the issue easier for everyone. Thank you!
>
> Be sure to:
> * Check the documentation [HERE](https://gp2040-ce.info/) to answer many questions on hardware requirements and usage.
> * Make sure that your issue has not already been filed [HERE](https://github.com/OpenStickCommunity/GP2040-CE/issues).
### Expected Behavior

> Please describe the behaviour you are expecting.
### Current Behavior

> What is the current behaviour? If this is something that worked in the past, be sure to include the conditions in
> which it did.
### Context

> Please provide all relevant information about your setup. This is important in case the issue is not reproducible
> except under certain conditions. Important elements include:
>
> * Name of device
> * Link to where you purchased the device
> * Firmware version
> * Available schematics, designs, etc., especially for custom hardware
> * Similar hardware (e.g. if it has the same GPIO-to-button assignments as a Pico)
### Steps to Reproduce

> Please provide detailed steps for reproducing the issue.
>
> 1. Step 1
> 2. Step 2
> 3. ETC...
### Screenshots & Files

> Please include any relevant screenshots or files here, including photos of the front and back of the board.
66 changes: 33 additions & 33 deletions .github/ISSUE_TEMPLATE/issue---bug-report.md
Original file line number Diff line number Diff line change
@@ -1,52 +1,52 @@
---
name: Issue / Bug report
about: Create a report to help us improve
name: Firmware Bug Report
about: Report an issue with the GP2040-CE firmware.
title: ''
labels: ''
labels: ['bug']
assignees: ''

---

### Prerequisites

Please check the following before posting an issue / bug report.

- [ ] I am running the latest version of the firmware found [HERE](https://github.com/OpenStickCommunity/GP2040-CE/releases)
- [ ] I have checked the documentation [HERE](https://gp2040-ce.info/) and found no answer
- [ ] I checked to make sure that this issue has not already been filed [HERE](https://github.com/OpenStickCommunity/GP2040-CE/issues)
- [ ] I am reporting the issue to the correct repository

### Context

Please provide all relevant information about your setup. This is important in case the issue is not reproducible except for under certain conditions.

* Firmware Version:
* Name of device:
* Link to where you purchased the device:
* Is this a custom build?:
* Operating System:
* Browser:

> Please read these quoted sections before submitting, and remove them (including this one) when you have provided what
> is asked, in order to make addressing the issue easier for everyone. Thank you!
>
> Be sure to:
> * Check the documentation [HERE](https://gp2040-ce.info/) to answer many questions on firmware capabilities and usage.
> * Make sure that your issue has not already been filed [HERE](https://github.com/OpenStickCommunity/GP2040-CE/issues).
> * Confirm your issue exists on the latest version of the firmware, found
[HERE](https://github.com/OpenStickCommunity/GP2040-CE/releases).

### Expected Behavior

Please describe the behaviour you are expecting.

> Please describe the behaviour you are expecting.
### Current Behavior

What is the current behaviour?

> What is the current behaviour? If this is something that worked in the past, be sure to include the conditions in
> which it did (prior version of the firmware, a different GP2040-CE device where it works, etc.).
### Steps to Reproduce
### Context

Please provide detailed steps for reproducing the issue.
> Please provide all relevant information about your setup. This is important in case the issue is not reproducible
> except under certain conditions. Important elements include:
>
> * Firmware version
> * Name of device
> * Link to where you purchased the device
>
> If your issue is with the web configurator, also include:
>
> * Operating System
> * Browser
1. Step 1
2. Step 2
3. ETC...
### Steps to Reproduce

> Please provide detailed steps for reproducing the issue.
>
> 1. Step 1
> 2. Step 2
> 3. ETC...
### Screenshots & Files

Please include any relevant screenshots or files here. If you are having issues with a board please include images of the front and back of the board.
> Please include any relevant screenshots, photos/recordings, or files here.
2 changes: 1 addition & 1 deletion .github/workflows/cmake.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
GP2040_BOARDCONFIG: [Pico, PicoW, BentoBox, FightboardV3, FightboardV3Mirrored, FlatboxRev4, FlatboxRev5, FlatboxRev5RGB, FlatboxRev5Southpaw, KB2040, KeyboardConverter, Haute42, Liatris, Mavercade, OpenCore0, OpenCore0WASD, PicoFightingBoard, RanaTadpole, ReflexCtrlSNES, ReflexEncodeV1.2, ReflexEncodeV2.0, RP2040AdvancedBreakoutBoard, RP2040AdvancedBreakoutBoardUSBPassthrough, RP2040MiniBreakoutBoard, SparkFunProMicro, WaveshareZero, Stress, SGFBridget, SGFFaust]
GP2040_BOARDCONFIG: [Pico, PicoW, BentoBox, FightboardV3, FightboardV3Mirrored, FlatboxRev4, FlatboxRev5, FlatboxRev5RGB, FlatboxRev5Southpaw, KB2040, KeyboardConverter, Haute42, Liatris, Mavercade, OpenCore0, OpenCore0WASD, PicoAnn, PicoFightingBoard, RanaTadpole, ReflexCtrlSNES, ReflexEncodeV1.2, ReflexEncodeV2.0, RP2040AdvancedBreakoutBoard, RP2040AdvancedBreakoutBoardUSBPassthrough, RP2040MiniBreakoutBoard, SparkFunProMicro, WaveshareZero, Stress, SGFBridget, SGFFaust]

steps:
#Global Setup
Expand Down
34 changes: 34 additions & 0 deletions configs/Pico/BoardConfig.h
Original file line number Diff line number Diff line change
Expand Up @@ -53,4 +53,38 @@
#define KEY_BUTTON_A2 HID_KEY_F2 // A2 | ~ | Capture | ~ | 14 | ~ |
#define KEY_BUTTON_FN -1 // Hotkey Function |

#define TURBO_ENABLED 1
#define GPIO_PIN_14 GpioAction::BUTTON_PRESS_TURBO
#define TURBO_LED_PIN 15

#define BOARD_LEDS_PIN 28
#define LED_BRIGHTNESS_MAXIMUM 100
#define LED_BRIGHTNESS_STEPS 5
#define LED_FORMAT LED_FORMAT_GRB
#define LEDS_PER_PIXEL 1

#define LEDS_DPAD_LEFT 0
#define LEDS_DPAD_DOWN 1
#define LEDS_DPAD_RIGHT 2
#define LEDS_DPAD_UP 3
#define LEDS_BUTTON_B3 4
#define LEDS_BUTTON_B4 5
#define LEDS_BUTTON_R1 6
#define LEDS_BUTTON_L1 7
#define LEDS_BUTTON_B1 8
#define LEDS_BUTTON_B2 9
#define LEDS_BUTTON_R2 10
#define LEDS_BUTTON_L2 11
#define LEDS_BUTTON_A1 12
#define LEDS_BUTTON_L3 13
#define LEDS_BUTTON_R3 14
#define LEDS_BUTTON_A2 15

#define HAS_I2C_DISPLAY 1
#define I2C0_ENABLED 1
#define I2C0_PIN_SDA 0
#define I2C0_PIN_SCL 1
#define BUTTON_LAYOUT BUTTON_LAYOUT_STICKLESS
#define BUTTON_LAYOUT_RIGHT BUTTON_LAYOUT_STICKLESSB

#endif
96 changes: 96 additions & 0 deletions configs/PicoAnn/BoardConfig.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
/*
* SPDX-License-Identifier: MIT
* SPDX-FileCopyrightText: Copyright (c) 2021 Jason Skuby (mytechtoybox.com)
*/

#ifndef PICOANN_CONFIG_H_
#define PICOANN_CONFIG_H_

#include "enums.pb.h"

#define BOARD_CONFIG_LABEL "Pico Ann"

// Main pin mapping Configuration
// // GP2040 | Xinput | Switch | PS3/4/5 | Dinput | Arcade |
#define GPIO_PIN_01 GpioAction::BUTTON_PRESS_UP // UP | UP | UP | UP | UP | UP |
#define GPIO_PIN_02 GpioAction::BUTTON_PRESS_DOWN // DOWN | DOWN | DOWN | DOWN | DOWN | DOWN |
#define GPIO_PIN_03 GpioAction::BUTTON_PRESS_RIGHT // RIGHT | RIGHT | RIGHT | RIGHT | RIGHT | RIGHT |
#define GPIO_PIN_00 GpioAction::BUTTON_PRESS_LEFT // LEFT | LEFT | LEFT | LEFT | LEFT | LEFT |
#define GPIO_PIN_11 GpioAction::BUTTON_PRESS_B1 // B1 | A | B | Cross | 2 | K1 |
#define GPIO_PIN_12 GpioAction::BUTTON_PRESS_B2 // B2 | B | A | Circle | 3 | K2 |
#define GPIO_PIN_13 GpioAction::BUTTON_PRESS_R2 // R2 | RT | ZR | R2 | 8 | K3 |
#define GPIO_PIN_14 GpioAction::BUTTON_PRESS_L2 // L2 | LT | ZL | L2 | 7 | K4 |
#define GPIO_PIN_07 GpioAction::BUTTON_PRESS_B3 // B3 | X | Y | Square | 1 | P1 |
#define GPIO_PIN_08 GpioAction::BUTTON_PRESS_B4 // B4 | Y | X | Triangle | 4 | P2 |
#define GPIO_PIN_09 GpioAction::BUTTON_PRESS_R1 // R1 | RB | R | R1 | 6 | P3 |
#define GPIO_PIN_10 GpioAction::BUTTON_PRESS_L1 // L1 | LB | L | L1 | 5 | P4 |
#define GPIO_PIN_06 GpioAction::BUTTON_PRESS_S1 // S1 | Back | Minus | Select | 9 | Coin |
#define GPIO_PIN_05 GpioAction::BUTTON_PRESS_S2 // S2 | Start | Plus | Start | 10 | Start |
#define GPIO_PIN_21 GpioAction::BUTTON_PRESS_L3 // L3 | LS | LS | L3 | 11 | LS |
#define GPIO_PIN_22 GpioAction::BUTTON_PRESS_R3 // R3 | RS | RS | R3 | 12 | RS |
#define GPIO_PIN_04 GpioAction::BUTTON_PRESS_A1 // A1 | Guide | Home | PS | 13 | ~ |
#define GPIO_PIN_20 GpioAction::BUTTON_PRESS_A2 // A2 | ~ | Capture | ~ | 14 | ~ |

// Keyboard Mapping Configuration
// // GP2040 | Xinput | Switch | PS3/4/5 | Dinput | Arcade |
#define KEY_DPAD_UP HID_KEY_ARROW_UP // UP | UP | UP | UP | UP | UP |
#define KEY_DPAD_DOWN HID_KEY_ARROW_DOWN // DOWN | DOWN | DOWN | DOWN | DOWN | DOWN |
#define KEY_DPAD_RIGHT HID_KEY_ARROW_RIGHT // RIGHT | RIGHT | RIGHT | RIGHT | RIGHT | RIGHT |
#define KEY_DPAD_LEFT HID_KEY_ARROW_LEFT // LEFT | LEFT | LEFT | LEFT | LEFT | LEFT |
#define KEY_BUTTON_B1 HID_KEY_SHIFT_LEFT // B1 | A | B | Cross | 2 | K1 |
#define KEY_BUTTON_B2 HID_KEY_Z // B2 | B | A | Circle | 3 | K2 |
#define KEY_BUTTON_R2 HID_KEY_X // R2 | RT | ZR | R2 | 8 | K3 |
#define KEY_BUTTON_L2 HID_KEY_V // L2 | LT | ZL | L2 | 7 | K4 |
#define KEY_BUTTON_B3 HID_KEY_CONTROL_LEFT // B3 | X | Y | Square | 1 | P1 |
#define KEY_BUTTON_B4 HID_KEY_ALT_LEFT // B4 | Y | X | Triangle | 4 | P2 |
#define KEY_BUTTON_R1 HID_KEY_SPACE // R1 | RB | R | R1 | 6 | P3 |
#define KEY_BUTTON_L1 HID_KEY_C // L1 | LB | L | L1 | 5 | P4 |
#define KEY_BUTTON_S1 HID_KEY_5 // S1 | Back | Minus | Select | 9 | Coin |
#define KEY_BUTTON_S2 HID_KEY_1 // S2 | Start | Plus | Start | 10 | Start |
#define KEY_BUTTON_L3 HID_KEY_EQUAL // L3 | LS | LS | L3 | 11 | LS |
#define KEY_BUTTON_R3 HID_KEY_MINUS // R3 | RS | RS | R3 | 12 | RS |
#define KEY_BUTTON_A1 HID_KEY_9 // A1 | Guide | Home | PS | 13 | ~ |
#define KEY_BUTTON_A2 HID_KEY_F2 // A2 | ~ | Capture | ~ | 14 | ~ |
#define KEY_BUTTON_FN -1 // Hotkey Function |

#define TURBO_ENABLED 1
#define GPIO_PIN_28 GpioAction::BUTTON_PRESS_TURBO

#define BOARD_LEDS_PIN 15

#define LED_BRIGHTNESS_MAXIMUM 50
#define LED_BRIGHTNESS_STEPS 5
#define LED_FORMAT LED_FORMAT_GRB
#define LEDS_PER_PIXEL 1

#define LEDS_DPAD_LEFT 0
#define LEDS_DPAD_DOWN 1
#define LEDS_DPAD_RIGHT 2
#define LEDS_DPAD_UP 3
#define LEDS_BUTTON_B3 4
#define LEDS_BUTTON_B4 5
#define LEDS_BUTTON_R1 6
#define LEDS_BUTTON_L1 7
#define LEDS_BUTTON_B1 8
#define LEDS_BUTTON_B2 9
#define LEDS_BUTTON_R2 10
#define LEDS_BUTTON_L2 11

#define PLED_TYPE PLED_TYPE_PWM
#define PLED1_PIN 16
#define PLED2_PIN 17
#define PLED3_PIN 18
#define PLED4_PIN 19

#define HAS_I2C_DISPLAY 0
#define I2C_SDA_PIN 26
#define I2C_SCL_PIN 27
#define I2C_BLOCK i2c1

#define BUTTON_LAYOUT BUTTON_LAYOUT_STICK
#define BUTTON_LAYOUT_RIGHT BUTTON_LAYOUT_VEWLIX
#define SPLASH_MODE SPLASH_MODE_NONE
#define SPLASH_CHOICE SPLASH_CHOICE_MAIN
#define SPLASH_DURATION 7500 // Duration in milliseconds

#endif
5 changes: 5 additions & 0 deletions configs/PicoAnn/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# GP2040-CE Configuration for PicoAnn firmware boards

![Pin Mapping](assets/PinMapping_PicoAnn.png)

Basic pin setup for boards that were running PicoAnn firmware like the Pico Advanced Breakout Board v3.0.
Binary file added configs/PicoAnn/assets/PinMapping_PicoAnn.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit c96b421

Please sign in to comment.