All For One
What is All For One?
All For One is software that was originally written to work with Helders Retro PSU. The initial idea was that it would allow you to use a joystick with it but this quickly grew to a full set of controls using GPIO pins and an on screen display.
Whilst the software works best with the Retro PSU, it can be used in any system using GPIO pins for controls and an optional ADS1015 for battery monitoring.
- Battery Monitoring. This works with Helders PSU, ADS1015 or an ADS1115 to give you a battery reading as a percentage.
- Dpad and button controls. The buttons are connected to GPIO pins button presses into keyboard presses.
- Joystick support. Using an ADS1015 you can add a joystick to the system. You can use an ADS1115 but the voltage values in keys.cfg may need changing.
- Safe shutdown. When you pop the power switch to off the OneForAll software will initiate a safe shutdown. This will work with any of the safe shutdown boards availabe.
- Low power shutdown. The OneForAll Software will trigger a shutdown when the battery falls below a voltage specified in keys.cfg.
- Hotkey menu When pressing the specific hotkey an overlay will display showing you the current volume and status of the joystick, wifi and bluetooth.
- Quick access connectivity and sound. Whilst holding the hotkey you can press any of the directional or A, B buttons to toggle wifi, bluetooth, joystick and volume.
Installing One For All
One For All can be found on Helders github page along with installation instructions. It assumes you know how to ssh into the Raspberry Pi.
Configuring One For All
All configuration is done in the keys.cfg file. A brief explanation of the configurations can be found underneath.
|[GENERAL] SHUTDOWN_DETECT||GPIO Pin that when driven low will cause the system to shutdown. Set to -1 if not required.|
|[KEYS]||Configure which GPIOs relate to which buttons.|
|[JOYSTICK] DISABLED||If True, completely turns off Joystick. If False, joystick can be toggled on and off when needed using a hotkey combo.|
|[JOYSTICK] DEADZONE||This is the voltage range that is ignored by the software. When a joystick moves, it generates a voltage. This deadzone stops movement commands being sent form slight presses of the joystick. It is the joystick sensitivity.|
|[JOYSTICK] VCC||This is the voltage change from furthest left to furthest right. Change this if not using 5V as an input to the Joystick. Does not need to be changed when using the Retro PSU Board.|
|[BATTERY] ENABLED||If True, enables battery monitoring on the RetroPSU Board. Set to false if not using a battery monitor|
|[BATTERY] FULL_BATT_VOLTAGE||Voltage when the battery is fully charged. In centivolts e.g. 3.2 Volts is 320.|
|[BATTERY] BATT_LOW_VOLTAGE||Voltage when the battery is considered low. Shows as red in battery meter. In centivolts e.g. 3.2 Volts is 320.|
|[BATTERY] BATT_SHUTDOWN_VOLT||Voltage when safe shutdown is initiated. Shows as red in battery meter. In centivolts e.g. 3.2 Volts is 320.|