Arduino expansion board v2 (aka Controller Mk1-alpha)


A second iteration of an Arduino Nano expansion board, which is also happens to be a new iteration of a RC controller board.
Board features:
-
Fits Arduino Nano and Arduino Pro Micro
-
Can host 2 DRV8833 dual DC motor driver board
-
4-pin I2C socket, designed to fit a 0.91 128x32 OLED display
-
2 buttons
-
6 Troyka modules locations with support for analog, I2C, SPI, UART, GPIO modules.
-
size is 100x65mm
Compared to previous Arduino Nano expansion board, the new one also supports Arduino Pro Mini, so will accommodate RP2040 and nRF52840 boards in same format (these are popular in mechanical keyboard communities). It also has space for 2 motor DRV8833 modules (so up to 4 motors), and places to solder 2 potentiometers. OLED display and 2 buttons are still in place. So in these regards it’s an extension of v1 in every way (it’s also larger).
The incompatible change is that the motors are now controlled with PWM+DIR pins instead of PWM1+PWM2. This requires only 1 PWM pin per motor instead of 2, a change that allowed control of 4 motors. (Due to fewer pins on Arduino Pro Micro, only 3 motors are supported there).
However, the most significant change is that this time the board is designed to be modular and use of Amperka Troyka modules ecosystem. This makes it more versatile and the board can be for more applications by swapping the modules on top. Using joystick modules, for example, will allow the PCB to be used as a remote control or a gamepad (provided Rf/USB-capable MCU is used).
Mounting a steering wheel should also be possible.
The original idea for this PCB is to be a continuation of Controller Mk0, that’s why the it’s officially called "Controller Mk1-alpha" in EasyEDA. The new board does not directly support LILYGO T-Display though.