diff --git a/readme.md b/readme.md index 95fbf85..93c29c4 100644 --- a/readme.md +++ b/readme.md @@ -25,34 +25,36 @@ Wiring | DB-25 Pins | Arduino Pro Micro GPIO | ESP32 GPIO | Radio | SNES | PSX | N64 | Gamecube | Genesis | |---------------|------------------------|------------|----------|--------|--------|----------|----------|-------------| -| 1 | 1 | 15 | - | - | - | - | - | P1-1 | -| 2 | 2 | 2 | - | LATCH | DATA | DATA1 | DATA1 | P1-3 | -| 3 | 3 | 4 | - | CLOCK | CMD | - | - | P1-4 | -| 4 | 4 | 16 | - | - | ATT | - | - | P1-6 | -| 5 | 5 | 17 | - | - | CLK | - | - | P1-7 | -| 6 | 6 | 5 | - | - | - | - | - | P1-9 | -| 7 | 7 | 18 | CE | - | - | - | - | P2-7* | -| 8 | 8 | 19 | CSN | - | - | - | - | - | -| 9 | 9 > 1k Ω | 35 > 1k Ω | - | 330 Ω | 100 Ω | 220 Ω | 680 Ω | 470 Ω | -| 10 | 10 | 3 | - | - | - | - | - | - | -| 11 | 0 | 1 | - | - | - | - | - | P1-2 | -| 12 | - | 22 | - | - | - | - | - | - | -| 13 | - | 23 | - | - | - | - | - | - | -| 14 | 14 | 12 | MISO | - | - | - | - | P2-6* | -| 15 | 15 | 14 | SCLK | - | - | - | - | P2-9* | -| 16 | 16 | 13 | MOSI | - | - | - | - | - | -| 17 | - | 27 | - | - | - | - | - | - | -| 18 | 18 | 26 | - | DATA1 | - | - | - | P2-1 | -| 19 | 19 | 25 | - | DATA2 | - | - | - | P2-2 | -| 20 | 20 | 33 | - | DATA3 | - | - | - | P2-3 | -| 21 | 21 | 32 | - | DATA4 | - | - | - | P2-4 | -| 22 | - | - | - | - | - | - | - | - | -| 23 | - | 3.3V VCC | 3.3V VCC | - | - | 3.3V VCC | 3.3V VCC | - | -| 24 | 5V VCC OUT | 5V VCC | 5V VCC | 5V VCC | 5V VCC | - | 5V VCC | PX-5 5V VCC | -| 25 | GND | GND | GND | GND | - | GND | GND | PX-8 GND | +| 1 TX | 1 | 1 | - | - | - | - | - | P1-1 | +| 2 SDA | 2 | 21 | - | LATCH | DATA | DATA1 | DATA1 | P1-3 | +| 3 SCL | 3 | 22 | - | CLOCK | CMD | - | - | P1-4 | +| 4 Analog | 4 | 15 | - | - | ATT | - | - | P1-6 | +| 5 Digital | 5 | 16 | - | - | CLK | - | - | P1-7 | +| 6 Analog | 6 | 2 | - | - | - | - | - | P1-9 | +| 7 Digital | 7 | 17 | CE | - | - | - | - | P2-7* | +| 8 Analog | 8 | 4 | CSN | - | - | - | - | - | +| 9 Analog | 9 > 1k Ω | 35 > 1k Ω | - | 330 Ω | 100 Ω | 220 Ω | 680 Ω | 470 Ω | +| 10 Analog | 10 | 32 | - | - | - | - | - | - | +| 11 RX | 0 | 3 | - | - | - | - | - | P1-2 | +| 12 - | - | - | - | - | - | - | - | - | +| 13 - | - | - | - | - | - | - | - | - | +| 14 MISO | 14 | 12 | MISO | - | - | - | - | P2-6* | +| 15 SCLK | 15 | 14 | SCLK | - | - | - | - | P2-9* | +| 16 MOSI | 16 | 13 | MOSI | - | - | - | - | - | +| 17 - | - | - | - | - | - | - | - | - | +| 18 Analog | 18 | 27 | - | DATA1 | - | - | - | P2-1 | +| 19 Analog | 19 | 26 | - | DATA2 | - | - | - | P2-2 | +| 20 Analog | 20 | 25 | - | DATA3 | - | - | - | P2-3 | +| 21 Analog | 21 | 33 | - | DATA4 | - | - | - | P2-4 | +| 22 - | - | - | - | - | - | - | - | - | +| 23 3.3V VCC | - | 3.3V VCC | 3.3V VCC | - | - | 3.3V VCC | 3.3V VCC | - | +| 24 5V VCC | 5V VCC OUT | 5V VCC | 5V VCC | 5V VCC | 5V VCC | - | 5V VCC | PX-5 5V VCC | +| 25 GND | GND | GND | GND | GND | - | GND | GND | PX-8 GND | * 2nd player Genesis is incompatible with Radio because it uses the same pins, 1 player Genesis is compatible -Ω This is optional and only used for dongle detection. For DB-25 pin 9: On the micro, run to pin 9 to 5V VCC with a 1k resistor. On ESP32, run to pin 35 to 3.3V VCC with a 1k resistor. On each dongle, run a resistor of the given value between DB-25 pin 9 and GND. +Ω This is optional and only used for dongle detection. On the microcontroller side, put a 1k resistor between DB-25 pin 9 and VCC (3.3v for ESP32, 5V for Micro). On each controller dongle, put a resistor of the given value between DB-25 pin 9 and GND. + +All connected pins can also function as Digital pins. Credits / Links --------------- diff --git a/src/pins.h b/src/pins.h index be543ac..6463279 100644 --- a/src/pins.h +++ b/src/pins.h @@ -6,31 +6,24 @@ #if defined(ARDUINO_ARCH_ESP32) // esp32 -#define OR_PIN_1 15 -#define OR_PIN_2 2 -#define OR_PIN_3 4 -#define OR_PIN_4 16 -#define OR_PIN_5 17 -#define OR_PIN_6 5 -#define OR_PIN_7 18 -#define OR_PIN_8 19 +#define OR_PIN_1 1 +#define OR_PIN_2 21 +#define OR_PIN_3 22 +#define OR_PIN_4 15 +#define OR_PIN_5 16 +#define OR_PIN_6 2 +#define OR_PIN_7 17 +#define OR_PIN_8 4 #define OR_PIN_9 35 -#define OR_PIN_10 3 -#define OR_PIN_11 1 -//#define OR_PIN_12 22 -//#define OR_PIN_13 23 +#define OR_PIN_10 32 +#define OR_PIN_11 3 #define OR_PIN_14 12 #define OR_PIN_15 14 #define OR_PIN_16 13 -//#define OR_PIN_17 27 -#define OR_PIN_18 26 -#define OR_PIN_19 25 -#define OR_PIN_20 33 -#define OR_PIN_21 32 -//#define OR_PIN_22 22 -//#define OR_PIN_23 23 -//#define OR_PIN_24 24 -//#define OR_PIN_25 25 +#define OR_PIN_18 27 +#define OR_PIN_19 26 +#define OR_PIN_20 25 +#define OR_PIN_21 33 #else // micro #define OR_PIN_1 1 @@ -44,20 +37,19 @@ #define OR_PIN_9 9 #define OR_PIN_10 10 #define OR_PIN_11 0 -//#define OR_PIN_12 12 -//#define OR_PIN_13 13 #define OR_PIN_14 14 #define OR_PIN_15 15 #define OR_PIN_16 16 -//#define OR_PIN_17 17 #define OR_PIN_18 18 #define OR_PIN_19 19 #define OR_PIN_20 20 #define OR_PIN_21 21 -//#define OR_PIN_22 22 -//#define OR_PIN_23 23 -//#define OR_PIN_24 24 -//#define OR_PIN_25 25 #endif // ARDUINO_ARCH_ESP32 +// currently unused, reserved for future use +//#define OR_PIN_12 - +//#define OR_PIN_13 - +//#define OR_PIN_17 - +//#define OR_PIN_22 - + #endif // OR_PINS_H