[Mechanical keyboards] krbjmpr:
Test Platform:

Samsung Tab Active2 SM-T390

Test OS:

Android 9

Hardware under Test:

Reyenne "Zero Delay Game Controller", Powered off USB, currently siphoning power from tablet.

Recognized as a "DragonRise Inc. Generic USB Joystick, with 20 available buttons, by Key Mapper

USB-C / USB-B cable

OTG adapter not needed, at least not yet

Currently powered off tablet, unknown current draw at this time

Android 9 Accessibility Universal Switch is able to see the controller, and can assign a button, but does not allow to assign button to an app. Only options are Accessories (Scanning, Global Actions, and Gestures), Camera (track head / hand using camera), Screen (Touch anywhere on the screen).

Accessories Scanning: Select Item; Move to Next Item; Move to Previous Item; Turn Auto scan on or off

Accessories Camera: Body Tracking, not interested in using

Accessories Screen: Touch Anywhere on this screen

The screen option might be helpful if apps are being run inside popup windows, like those created by Popup Factory 2. Windows reduced in size would leave an area of desktop / Home screen visible featuring the shortcuts. Tap Anywhere would be able to activate those shortcuts. Upside, this method is currently in use, using finger, with Popup Factory 2. Downside, software is not open source, and Popup Factory 2 app must be running to create the windowed instance. Samsung power control tends to shut this app down often, and a restart is required to get it running again in background.

Key Mapper is an open source mapping app that is found on F-Droid, and other areas, covered by GPL 3.0 license. Source code is available. Key Mapper is able to assign a button to an app. Example, Button 12 was assigned to launch an app, Google Maps. Using task manager, Key Mapper was closed, button still opened Google Maps. Upon Shutdown / Restart, button still worked. Checked Running Services in Dev Options, Key Mapper is running in background. Looked to kill in Dev Options, but do not have option. It is running with Accessibility Permissions.

So, the game controller works, a 3rd party app is required for mapping button inputs. Using accessibility switch, can press on screen and activate a shortcut. This would require apps being launched in windowed instance. I don't have that knowledge, nor would I expect target user to known, so would require a 3rd party app like Popup Factory 2 to use. Not open source, but is free with adverts.

Next step, identify what is required to charge the tablet, at 1.0+ Amp, via USB-C, as well as look at same requirement for USB Micro. It may be easier just to use a usb power inserter of sorts. It may be as simple as using a USB Y cable, but if memory serves, current draw is limited to 200mA. Not sure how device will react when power is being fed into it. Likely will require specific resistance across D- line to ground, at either end of the cable. Given that solder connections are easily accessible on controller pcb, this will be likely place and not have to require a modified cable.

Happened across some capacitive switches last night. Can be configured for Output On at boot, and be considered Active Low output, as well as Output off at boot, and considered Active High. Switches also have a press on / press off latch function. Eventually will look at those as may be easier to use for some user installations. Also discovered that TeensyDrino apparently has hardware already that is considered to be superior to other arduino iterations. Lots more complexity, will be looking for more information. Especially nice if can get everything rolled into a nice little package and dumb down the sketch program process for average person to work with.

Nah, it will just be a side project after main is completed.

KISS is being practiced.