Rewrite:
For people without a usb keyboard. On any android you can use an app like ConnectBot to SSH into your pi using RNDIS USB ethernet.
Activate SSH on the Raspberry Pi
navigate to raspi-config >> Interfacing Options >> SSH
or (untested)
create an empty file named ssh in the boot directory of the raspberry sdcard
Install the apps on your android
ConnectBot (or preferred ssh client)
LanDroid (optional)
F-Droid (optional - Free Open Source Software for Android)
Activate the RNDIS USB ethernet
use your phone charger to connect the Android device to the raspberry pi USB.
android settings >> network & internet >> Mobile Hotspot/Tethering >> USB tethering
or if you're phone provider has this service blocked
for android 2.3 - 4.4
Use an app like Notification Bar will sometimes allow you to enable tether using the widget. Or install an unbranded rom like cyanogen-mod.
for android ?5.0 - 8.0
android settings >> system >> about phone >> x7 build number (click on the build number 7 times)
with "developer mode" enabled
android settings >> developer options >> "select usb configuration" - RNDIS (USB Ethernet)
(This is a good way to turn your phone into a wifi adapter if your router allows internet connection sharing)
Aquire the IP address of the Pi using arp
navigate to "show IP" on the raspberry pi
or
using ConnectBot app; add a host; change protocol to "local"; or use local terminal emulator
type cat /proc/net/arp or ip neighbor into android terminal
look for the ip-address 192.168.42.*
or
open the app LanDroid, and select the ARP & ND Cache
or on windows
use commandline arp -a look for a dynamic address that is not listed in ipconfig
Open a SSH to the Raspberry Pi
Use ConnectBot to add a ssh host filling out the username "pi"(default) and host "ip.address"(from the arp cache)
other apps can be used and configured including sftp, I use the apps Total Commander and SFtp plugin for Total Commander
or on windows
windows 10 has ssh built in, simply type ssh ip.address
or use one of these programs
PuTTY(ssh)
BitVise SSH client with ftp (easy to advanced)
KiTTY (PuTTY with more features, easy)
WinSCP (scp, sftp, ftp, advanced)
FileZilla (sftp & ftp)
And many more inlcuding Terminus, Super Putty and the amazing though complex Cygwin
Android RNDIS creates IP addresses from the range 192.168.42.[1-255] these are generated randomly and will change when you reconnect the tether. When I figure out how to assign a static ip or save the dhcp or create some sort of order I will share. And if anyone know how to do this then please do.
Alternatively to setting up ethernet, import the wpa passkey (wifi passkey) create a wifikeyfile.txt with the contents
ssid="NETWORK_NAME"
psk="NETWORK_PASSWORD"
save it to the main folder of the microsd with retropie installed using a microsd reader.
Reinsert the micro sd with RetroPie installed and power on the Raspberry Pi.
Navigate Emulationstation using your controller to WiFi and Import wifi credentials from /boot/wifikeyfile.txt
So it is possible with any android phone with a usb charging cable to tether and access configurations. or if you have a ethernet cable for your computer.
I'm happy to help. Feel free to practice and take notes. It is difficult to find memories like this from while travelling. @trekdrop
~Bon voyage.