A little (but expandable) battery powered pedalboard that, emulating a Bluethooth keyboard, sends keystrokes (for example it can turn pages on a PDF reader... ).
Made with an ESP32
Configurable via WiFI (you can choose the keystrokes that you want to send)
Out of the box PushPushAIR is configured to send the key cursor left and right. Check the app that you want to control and, if it needs different keys, go to the Configuration section and change the keystrokes that Push Push Air send.
On the configuration page you can:
Turn on the PPA while pushing the right-most pedal. Keep the pedal pressed for at least 2 seconds.
The status led will be steady blue.
Now connect from a computer or mobile device to the wifi network "Push Push AIR" and insert the password
Once the connection is etablished, browse to 192.168.4.1 to use the configuration page.
Click on Save to store your new configuration
Please remember to click on "Finish" when you are done with the setup: in this way the WiFI access point will be closed (the led turns off). Please note that after 5 minutes from the last click on the buttons in the configuration page, the Push Push AIR WiFi access point will turn off automatically . This is important for two reasons:
If you change the password of the Configuration page and you forget it, you can revert to the factory one.
The factory password is: 12345678
How to reset:
I used a board that have the 18650 battery and charger included in it like this: (https://wiki.geekworm.com/index.php/WEMOS_ESP32_Board_with_18650_Battery_Holder)
see References folder for pictures and pinout
But then I also made some Push Push Air without battery (powered via the usual USB calble) with a classic ESP32 dev bpoard.
Any EXP32 developement board shuld be ok to run the Push Push Air code.
By default the pedals/buttons are connected to Pins 21
and 23
, and the only led used is LED_BUILTIN
, however you can customize this.
The PIN and LED assignement is done in a separate file, named customize.h
#include "customize.h"
directive at the beginning of the scriptcustomize.h
file in the same folder of the main scriptcustomize.h
file and change it as you need:
#define BATTERY_POWERED false // set to false if your devices doesn't have a battery otherwise omit it or set to true
/* Pedals/Buttons connections */
#define PEDAL1_PIN 23
#define PEDAL2_PIN 21
/* Leds connections */
#define PEDAL1_LED_PIN 2 // Blink when pedal/button 1 is pressed
#define PEDAL2_LED_PIN 2 // Blink when pedal/button 2 is pressed
#define STATUS_LED_PIN 2 // Blink to signal device's statuses
/* lEDS behaviour */
#define LED_ON HIGH
#define LED_OFF LOW
If you are using the same board with integrated battery that I used, in Arduino IDE select the WeMos WiFI&Bluethooth Battery
Otherwise select the board you are using
As Partition Scheme select: Huge APP (3MB No OTA/1MB SPIFF)
Libraries used:
Please install the following libraries: