Herelink Air Unit USB Tethering

Hi,

I am building a system where I would like to use USB tethering on an Airunit.
The unit needs to connect like this:
PiZero2w(usb) → Herelink air unit (usb)(wireless) → herelink groundstation(wireless)(usb) → Laptop

I have one somewhat older Airunit laying around that directly creates an ethernet connection when I plugin the USB.
multiple newer Air units only show a “usb drive” on my laptop when I plug them in. I cannot find a solution how to enable the tethering on these air units…

The older airunit has Firmware AU01230714
The newer airunits have Firmware AU01220706

Kind regards,
Andreas

Meanwhile I found out that one can hack into the airunit via adb shell, and view/edit parameters.
(btw, on the older one WITH usb-thethering, the adb-shell does not work)

I think I have to change something in the parameter “sys.usb.state”, but not sure if it is safe/correct, and how I should change it.

via adb, it shows these parameters:

adb shell getprop
[dalvik.vm.boot-dex2oat-threads]: [4]
[dalvik.vm.dex2oat-threads]: [4]
[dalvik.vm.image-dex2oat-threads]: [4]
[dalvik.vm.isa.arm.features]: [default]
[dalvik.vm.isa.arm.variant]: [cortex-a15]
[dalvik.vm.isa.arm64.features]: [default]
[dalvik.vm.isa.arm64.variant]: [generic]
[dalvik.vm.lockprof.threshold]: [500]
[dalvik.vm.stack-trace-file]: [/data/anr/traces.txt]
[ffmpeg.force.decodersource]: [audio]
[gsm.serial]: [2S329Y002716]
[gsm.version.baseband]: [BUMBLEBEE.R03.T55-7181b844c-742b10f]
[init.svc.adbd]: [running]
[init.svc.connect_manager]: [running]
[init.svc.d2d_config]: [running]
[init.svc.debuggerd]: [running]
[init.svc.debuggerd64]: [running]
[init.svc.drone_id_read]: [running]
[init.svc.emsd]: [running]
[init.svc.ffmpeg_play]: [running]
[init.svc.flash_recovery]: [stopped]
[init.svc.gps-daemon]: [running]
[init.svc.gps_manager]: [running]
[init.svc.healthd]: [running]
[init.svc.init_logcontrol]: [stopped]
[init.svc.key_service]: [running]
[init.svc.keystore]: [running]
[init.svc.lampsignal]: [running]
[init.svc.leds-sh]: [stopped]
[init.svc.logd]: [running]
[init.svc.logd-reinit]: [stopped]
[init.svc.mavlink-router]: [running]
[init.svc.media]: [running]
[init.svc.mediacodec]: [running]
[init.svc.p2p_supplicant]: [stopped]
[init.svc.perfprofd]: [running]
[init.svc.rc_service]: [running]
[init.svc.rtsp_server]: [running]
[init.svc.servicemanager]: [running]
[init.svc.set-gsm-serial]: [stopped]
[init.svc.set-mass-storage]: [stopped]
[init.svc.set_cpu_sched]: [stopped]
[init.svc.song-elog-boot]: [stopped]
[init.svc.song-mla-manager]: [stopped]
[init.svc.song-oms-mla0]: [stopped]
[init.svc.song-oms-mla1]: [stopped]
[init.svc.song-oms-mla2]: [stopped]
[init.svc.song-oms-mla3]: [stopped]
[init.svc.song-oms-sa]: [running]
[init.svc.surfaceflinger]: [running]
[init.svc.system-control]: [running]
[init.svc.uavcamera_main]: [running]
[init.svc.ueventd]: [running]
[init.svc.usbethx]: [running]
[init.svc.vendorservice]: [stopped]
[init.svc.vold]: [running]
[init.svc.webservd]: [running]
[init.svc.webtools]: [running]
[log.tag.InCall]: [V]
[logd.logpersistd.enable]: [true]
[mali.hwc.flattener.enable]: [1]
[mali.hwc.flattener.interval]: [900]
[mali.hwc.rotation.size]: [69120]
[net.bt.name]: [Android]
[net.change]: [net.tcp.default_init_rwnd]
[net.tcp.default_init_rwnd]: [60]
[oem.buildnumber]: [AU01230714]
[persist.camera.keep.hdmi.on]: [true]
[persist.camera.module.info]: [back_camera=tele.lt6911c0,front_camera=tele.lt6911c1]
[persist.dbg.allow_ims_off]: [1]
[persist.fishlog.offline.enable]: [0]
[persist.fpv.device.id]: [10]
[persist.fpv.device.type]: [0]
[persist.hdmi.src.change]: [1]
[persist.ims.ut.enable]: [1]
[persist.logd.size.main]: [2M]
[persist.logd.size.radio]: [2M]
[persist.logd.size.system]: [2M]
[persist.radio.elog.path]: [1]
[persist.song.camera.mode]: [1]
[persist.song.connect.mode]: [1]
[persist.sys.button_jack_profile]: [volume]
[persist.sys.button_jack_switch]: [0]
[persist.sys.calls.on.ims]: [true]
[persist.sys.camera.hd]: [1]
[persist.sys.camera1.hd]: [1]
[persist.sys.d2d.auth.cfg]: [1]
[persist.sys.d2d.calibrated]: [60901]
[persist.sys.d2d.dl.bandwidth]: [5]
[persist.sys.d2d.dl.frequency]: [47685]
[persist.sys.d2d.key.pair]: [1]
[persist.sys.d2d.tx.pwr.cfg]: [23,20,20,20]
[persist.sys.d2d.ul.bandwidth]: [3]
[persist.sys.dalvik.vm.lib.2]: [libart.so]
[persist.sys.elog.auto.run]: [0]
[persist.sys.initial.pdp.type]: [3]
[persist.sys.power.optimize]: [1]
[persist.sys.proj.nvram.mode]: [5]
[persist.sys.song.check.imei]: [1]
[persist.sys.song.dual2single]: [1]
[persist.sys.song.dynamic.rat]: [1]
[persist.sys.song.log]: [/data/local/log,I1,0,0,I2,0,0,I3,0,0,I4,0,0,I5,0,0,I6,0,0]
[persist.sys.song.master.card]: [10]
[persist.sys.song.msms]: [111]
[persist.sys.song.standby.rat]: [7,3]
[persist.sys.strictmode.disable]: [true]
[persist.sys.usb.config]: [mass_storage,adb]
[persist.sys.web.status]: [0]
[persist.uart.1.baud]: [57600]
[persist.uart.1.mavlink]: [1]
[persist.uart.count]: [1]
[ro.allow.mock.location]: [0]
[ro.arch]: [song]
[ro.baseband]: [unknown]
[ro.board.platform]: [abies]
[ro.boot.board-id]: [33]
[ro.boot.configfs]: [1]
[ro.boot.corner-info]: [1]
[ro.boot.cpub-freq]: [3]
[ro.boot.cpuid]: [0x2108886c96afb4]
[ro.boot.cpul-volt]: [1]
[ro.boot.distance]: [0]
[ro.boot.gpu-volt]: [1]
[ro.boot.hardware]: [telepathy-air]
[ro.boot.link-lock]: [0]
[ro.boot.one-to-n]: [0]
[ro.boot.secureboot]: [0]
[ro.boot.selinux]: [permissive]
[ro.boot.serialno]: [e19135d0]
[ro.boot.soc-class]: [1]
[ro.boot.soc-id]: [1]
[ro.boot.soc-rev]: [1]
[ro.boot.soc-type]: [0]
[ro.boot.usbcontroller]: [fa300000.usb]
[ro.boot.verifiedbootstate]: [orange]
[ro.boot.veritymode]: [logging]
[ro.bootimage.build.date]: [Sat Jul 15 12:03:59 AEST 2023]
[ro.bootimage.build.date.utc]: [1689386639]
[ro.bootimage.build.fingerprint]: [CubePilot/song/song:7.1.2/N2G47J/AU01230714:userdebug/test-keys]
[ro.bootloader]: [unknown]
[ro.bootmode]: [unknown]
[ro.build.characteristics]: [nosdcard]
[ro.build.date]: [Sat Jul 15 12:03:59 AEST 2023]
[ro.build.date.utc]: [1689386639]
[ro.build.description]: [song-userdebug 7.1.2 N2G47J AU01230714 test-keys]
[ro.build.display.id]: [song-userdebug 7.1.2 N2G47J AU01230714 test-keys]
[ro.build.fingerprint]: [CubePilot/song/song:7.1.2/N2G47J/AU01230714:userdebug/test-keys]
[ro.build.flavor]: [song-userdebug]
[ro.build.host]: [cubepilot-MS-7B98]
[ro.build.id]: [N2G47J]
[ro.build.product]: [song]
[ro.build.tags]: [test-keys]
[ro.build.target]: [uav]
[ro.build.type]: [userdebug]
[ro.build.user]: [cubepilot]
[ro.build.version.all_codenames]: [REL]
[ro.build.version.base_os]:
[ro.build.version.codename]: [REL]
[ro.build.version.incremental]: [AU01230714]
[ro.build.version.preview_sdk]: [0]
[ro.build.version.release]: [7.1.2]
[ro.build.version.sdk]: [25]
[ro.build.version.security_patch]: [2017-04-05]
[ro.com.google.locationfeatures]: [1]
[ro.config.vc_call_vol_steps]: [11]
[ro.crypto.state]: [unencrypted]
[ro.debuggable]: [1]
[ro.dirac.acs.controller]: [afm]
[ro.dirac.acs.storeSettings]: [1]
[ro.dirac.afm.mode]: [global]
[ro.dirac.config]: [64]
[ro.dirac.poolsize]: [2]
[ro.expect.recovery_id]: [0xa7cb12ad9da7bcd800f0c7c5e8cbf9536e44882acf2a2ea0569434942e158f8f]
[ro.hardware]: [telepathy-air]
[ro.hwui.drop_shadow_cache_size]: [6]
[ro.hwui.gradient_cache_size]: [1]
[ro.hwui.layer_cache_size]: [48]
[ro.hwui.path_cache_size]: [32]
[ro.hwui.r_buffer_cache_size]: [8]
[ro.hwui.text_large_cache_height]: [1024]
[ro.hwui.text_large_cache_width]: [2048]
[ro.hwui.text_small_cache_height]: [1024]
[ro.hwui.text_small_cache_width]: [1024]
[ro.hwui.texture_cache_flushrate]: [0.4]
[ro.hwui.texture_cache_size]: [72]
[ro.opengles.version]: [196610]
[ro.product.board]: [telepathy]
[ro.product.brand]: [CubePilot]
[ro.product.brand.id]: [0]
[ro.product.cpu.abi]: [arm64-v8a]
[ro.product.cpu.abilist]: [arm64-v8a,armeabi-v7a,armeabi]
[ro.product.cpu.abilist32]: [armeabi-v7a,armeabi]
[ro.product.cpu.abilist64]: [arm64-v8a]
[ro.product.device]: [telepathy-air]
[ro.product.locale]: [zh-CN]
[ro.product.manufacturer]: [CubePilot]
[ro.product.model]: [Telepathy Air]
[ro.product.name]: [telepathy-air]
[ro.radio.use-ppp]: [no]
[ro.recovery_id]: [0xa7cb12ad9da7bcd800f0c7c5e8cbf9536e44882acf2a2ea0569434942e158f8f]
[ro.revision]: [0]
[ro.ril.modem.pb]: [0]
[ro.ril.oem.sno]: [2S329Y002716]
[ro.secure]: [1]
[ro.serialno]: [e19135d0]
[ro.sf.lcd_density]: [480]
[ro.sys.display.support]: [59]
[ro.sys.sdcardfs]: [1]
[ro.telephony.default_network]: [9]
[ro.wifi.channels]:
[security.perf_harden]: [1]
[selinux.reload_policy]: [1]
[service.adb.tcp.port]: [5555]
[service.bootanim.exit]: [0]
[status.battery.level]: [5]
[status.battery.level_raw]: [50]
[status.battery.level_scale]: [9]
[status.battery.state]: [Slow]
[sys.d2d.freq.hopping]: [0,0]
[sys.device.ip.address]: [192.168.0.10]
[sys.pinecone.usb.state]: [1]
[sys.restart.cm]: [0]
[sys.uav.cell_info]: [lte,0,47685,5,5,60901,0,0,-75,-102,-17,-17,7,34]
[sys.usb.config]: [mass_storage,adb]
[sys.usb.configfs]: [1]
[sys.usb.controller]: [fa300000.usb]
[sys.usb.ffs.ready]: [1]
[sys.usb.state]: [mass_storage,adb] <---------------------------------------------
[vold.has_adoptable]: [1]
[vold.post_fs_data_done]: [1]
[wifi.interface]: [wlan0]

make sure you set the usb ID pin correctly.

Did you ever get this working?

Trying to set up an ethernet bridge but all the adapters and dongles seem redundant if “somewhat older Airunit laying around that directly creates an ethernet connection when I plugin the USB”

Considering my laptop doesn’t have an ethernet port my ground setup would be:

laptop > USB to ethernet adapter > ethernet cable > ethernet to USB > USB to OTG > Air Unit 1.0

TIA