<div dir="ltr"><div>Yes that's correct, no udev because of LEDE, but I'm in favor of way way way simpler and less error prone.</div><div><br></div><div>After setting the preferences like help recommends, I was able to switch to verizon once, and failed all the other times with "error: error creating device: unexpected response received in dload sdp: 0x70"</div><div><br></div><div>This is what I'm doing:</div><div><br></div><div>qmicli -p -d /dev/cdc-wdm0 --dms-set-firmware-preference="02.24.05.06,002.034_000,VERIZON"</div><div>qmicli -p -d /dev/cdc-wdm0 --dms-set-operating-mode=offline</div><div>qmicli -p -d /dev/cdc-wdm0 --dms-set-operating-mode=reset</div><div>read -p "when /dev/ttyUSB0 is available press enter"</div><div>/etc/init.d/modemmanager stop</div><div>qmi-firmware-update -t /dev/ttyUSB0 --update-qdl SWI9X30C_02.24.05.06.cwe SWI9X30C_02.24.05.06_VERIZON_002.034_000.nvu </div><div><br></div><div><br></div><div>To make it automatic maybe I should poll dmesg, unless there is a better way.</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Sep 8, 2017 at 1:55 AM, Aleksander Morgado <span dir="ltr"><<a href="mailto:aleksander@aleksander.es" target="_blank">aleksander@aleksander.es</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">On Thu, Sep 7, 2017 at 10:13 PM, Nathaniel Haggard <<a href="mailto:natester@gmail.com">natester@gmail.com</a>> wrote:<br>
> I'm trying to update the mc7455 to verizon firmware, but I get the following<br>
> error:<br>
><br>
> ~# qmicli -d /dev/cdc-wdm0 --dms-set-operating-mode=<wbr>offline<br>
> [/dev/cdc-wdm0] Operating mode set successfully<br>
> ~# qmicli -d /dev/cdc-wdm0 --dms-set-operating-mode=reset<br>
> [/dev/cdc-wdm0] Operating mode set successfully<br>
> :~# qmi-firmware-update -t /dev/ttyUSB0 --update-qdl<br>
> SWI9X30C_02.24.05.06.cwe SWI9X30C_02.24.05.06_VERIZON_<wbr>002.034_000.nvu<br>
><br>
> error: error creating device: unexpected response received in dload sdp:<br>
> 0x70<br>
><br>
> /dev/ttyUSB0 does exist of course.<br>
<br>
</div></div>The offline+reset+update-qdl sequence isn't correct, you need a<br>
--dms-set-firmware-preference command before. The offline/reset<br>
sequence alone will reboot the modem, but will not put it in<br>
boot-and-hold mode to wait for firmware. You're probably sending the<br>
QDL commands to a TTY that isn't capable of using that protocol.<br>
<br>
I assume you cannot use the much simpler --update command for some<br>
reason? That takes care of selecting the firmware to download (DMS Set<br>
Firmware Preference) and also waits for the reboot to happen before<br>
sending the files via the TTY. (way way way simpler and less<br>
error-prone) The only reason why you wouldn't use --update is because<br>
libqmi was compiled without udev support (e.g. if system doesn't have<br>
udev like openwrt), and then you need the "manual" procedure to update<br>
the firmware. Quoting the --help-examples output in<br>
qmi-firmware-update:<br>
<br>
******************************<wbr>******************************<wbr>********************<br>
<br>
 Example: Manual process to update a Sierra Wireless MC7354.<br>
  (or other 9x15 or 9x30 devices, like the MC7304, MC7330, MC7455... ).<br>
<br>
 The upgrade of devices from the 9x15 and 9x30 families is triggered via a<br>
 'firmware preference' setting. If the device accepts the setting, the user<br>
 can request a device power cycle, which will boot in QDL download mode:<br>
<br>
 a) Set firmware preference setting:<br>
    $ sudo qmicli \<br>
          -d /dev/cdc-wdm0 \<br>
          --dms-set-firmware-preference=<wbr>"05.05.58.00,005.025_002,<wbr>Generic"<br>
<br>
 b) Request power cycle:<br>
    $ sudo qmicli \<br>
          -d /dev/cdc-wdm0 \<br>
          --dms-set-operating-mode=<wbr>offline<br>
    $ sudo qmicli \<br>
          -d /dev/cdc-wdm0 \<br>
          --dms-set-operating-mode=reset<br>
<br>
 c) Wait for the /dev/ttyUSB device to appear.<br>
<br>
 d) Run updater operation while in QDL download mode:<br>
    $ sudo qmi-firmware-update \<br>
          -t /dev/ttyUSB0 \<br>
          --update-qdl \<br>
          SWI9X15C_05.05.58.00.cwe \<br>
          SWI9X15C_05.05.58.00_Generic_<wbr>005.025_002.nvu<br>
<br>
 d) Now wait for the device to fully reboot, may take up to several minutes.<br>
<span class="HOEnZb"><font color="#888888"><br>
<br>
--<br>
Aleksander<br>
<a href="https://aleksander.es" rel="noreferrer" target="_blank">https://aleksander.es</a><br>
</font></span></blockquote></div><br></div>