Hi
@hatzisn I reply to your questions, and may explain better what I doing.... Just to be clear, my 3D printer is Creality Ender 3 but this should work on most of 3D printers. The app can control 3D printer in two ways, as USB serial host (with USB OTG cable) or over network with ESP8266/ESP32 or Raspberry PI (tested on PI Zero W) as server connected to a 3D printer over USB. The Raspberry code is writed with B4J, it not only works on Raspberry, but even on desktop pc connected to printer over USB. Anyway ESP32 have uSD card, the gcode file is inside Android device, when user use USB, the file is read from Android and then the app send line by line over USB to a printer. When the user print online (over network) the app send the gcode file to ESP or Raspberry or Pc, it save and then acts as host over USB. In this case ESP or RPI or PC is completely indipendent, like any app to print out, is an Host, even do feedback over network to Android App. Is a bit complex, I started the project iin 2018 and I'm near to finish.