diff --git a/system/hardware/tici/hardware.py b/system/hardware/tici/hardware.py index 3431718e22..f606422028 100644 --- a/system/hardware/tici/hardware.py +++ b/system/hardware/tici/hardware.py @@ -457,24 +457,37 @@ class Tici(HardwareBase): def configure_modem(self): sim_id = self.get_sim_info().get('sim_id', '') - # configure modem as data-centric - cmds = [ - 'AT+QNVW=5280,0,"0102000000000000"', - 'AT+QNVFW="/nv/item_files/ims/IMS_enable",00', - 'AT+QNVFW="/nv/item_files/modem/mmode/ue_usage_setting",01', - ] modem = self.get_modem() + try: + manufacturer = str(modem.Get(MM_MODEM, 'Manufacturer', dbus_interface=DBUS_PROPS, timeout=TIMEOUT)) + except Exception: + manufacturer = None + + cmds = [] + if manufacturer == 'Cavli Inc.': + cmds += [ + # use sim slot + 'AT^SIMSWAP=1', + + # configure ECM mode + 'AT$QCPCFG=usbNet,1' + ] + else: + cmds += [ + # configure modem as data-centric + 'AT+QNVW=5280,0,"0102000000000000"', + 'AT+QNVFW="/nv/item_files/ims/IMS_enable",00', + 'AT+QNVFW="/nv/item_files/modem/mmode/ue_usage_setting",01', + ] + + # clear out old blue prime initial APN + os.system('mmcli -m any --3gpp-set-initial-eps-bearer-settings="apn="') for cmd in cmds: try: modem.Command(cmd, math.ceil(TIMEOUT), dbus_interface=MM_MODEM, timeout=TIMEOUT) except Exception: pass - # blue prime - blue_prime = sim_id.startswith('8901410') - initial_apn = "Broadband" if blue_prime else "" - os.system(f'mmcli -m any --3gpp-set-initial-eps-bearer-settings="apn={initial_apn}"') - # eSIM prime if sim_id.startswith('8985235'): dest = "/etc/NetworkManager/system-connections/esim.nmconnection"