I've got a NanoPi Neo Core 2 and a NanoPi Neo Air. It bothered me that the USB OTG did not function in host mode. Turns out, the included Armbian .dtb's don't have the parts necessary to define the regulator which pushes power back to a client device when the board needs to run in OTG host mode. You can see the regulator on page 8 of the schematic
I found an upstream patch at
which defined the missing parts for a Neo Plus 2. I put the relevant parts into an overlay dts file (attached) that can be loaded with
sudo armbian-add-overlay otg.dts
I've tested this on both of my devices. I assume it should work on other devices with the same wiring.
One quirk I didn't figure out though... online sources all used "GPIO_ACTIVE_HIGH" as a kind of defined value, but the version of 'dtc' included with Armbian chokes on it. So instead I just in the equivalent numeric value.