Installing helloWorld on WP76xx device fails

I currently am working in Ubuntu 16.04 in a VM on Windows 10. I have a MangOH Green board with a WP76xx device installed. I can connect to the device (although I get errors when it tries to “Get filesystems info” with “java.io.IOException: inputstream is closed” error. However i does seem to work with other commands and it thinks it’s connected.

The logs show this message:
"Jan 6 00:31:28 | updateDaemon[613]/updateDaemon T=main | system.c system_RemoveUnusedApps() 986 | App with MD5 sum bc153e714179743b044b4bd599dba51f is still needed. "
There’s actually 7 of those messages, with different sum values. Is that a problem?
Anyway, when I compile I get no errors. When I try to install I get the message:
"Legato Framework version used in application (17.06.0) and running on the device (null) are not the same.
Continue the installation anyway?"
Hitting OK, it works until it executes “Find App core files” and gets an inputstream is closed exception.

Any help would be appreciated.

Hi @Evets

This is a known problem. It is fixed by WP76 Release 6.

Hi @daav,
I upgraded to R6 with no problems. But it changes the IP address back to the one mentioned in all the documentation. However, I upgraded another colleague’s board, and it said it was successful, but it wasn’t. Started rebooting all the time, but then stopped rebooting. Trying to SSH into the device gets refused. Trying to reprogram it again gave me errors:

FDT version: 1.0.1708.0
Awaiting suitable port or adapter …
Enabling selective suspend …
Firmware download failed.
Primary error code: 82 - Failed in checking modem mode.
Secondary error code: 5 - Neither NDIS adapter nor serial port is available.
Device error code: 0x0 - Unknown device error code.

Preexisting images information:
Current:
Firmware:
ImageId:
BuildId:
Configuration:
ImageId:
BuildId:
Final images information:
Current:
Firmware:
ImageId:
BuildId:
Configuration:
ImageId:
BuildId:

OEM PRI:
IMEI:
Total time elapsed: 25141 ms.

Images downloaded:
Press Enter to continue …

Actually, after I went back to my board, it won’t work either. I can’t SSH into it (refused). But it did work, as I was able to SSH and connect to it via Dev Studio before I turned off power. I can ping it, but it’s not communicating via SSH. I does seem more stable however… It’s not rebooting like the others. Is there a way to turn on the SSH via AT commands? Because I can get to the serial ports and have it execute AT commands. It also is not attaching to the tower anymore.

Steve

Hi @Evets

First point, Release 6 should have fixed the USB ECM IP address to set it to the expected default of 192.168.2.2
But, we do have a new problem that is USB ECM now fails to setup with recent Linux kernels on the host (4.X)
It typically impacts Ubuntu 16.04 LTS

The workaround is to use Ethernet until this problem is fixed by a future release.
To use SSH over Ethernet:

  • Connect the Ethernet wire and boot your device
  • Open the serial port shell
  • Turn down the firewall rules (SSH is not possible over Ethernet by default)
    iptables -F && iptables -A INPUT -j ACCEPT && iptables -A FORWARD -j ACCEPT
  • Check the device IP address with ifconfig

Hi @daav,

I did that. However, my device keeps rebooting. It appears to be an orderly shutdown though, says “rcK: Executing run_K_scripts…”. It appears thought that it will reboot several times then stop for a while. If I connect it with a data session, it will stay active for a minute or so, then reboot. Oddly enough, I CAN connect to it today with the Windows Dev studio (vers 5.2), whereas yesterday I couldn’t connect (refused) through my VM. I’m also getting this error in the logs:

QMUXD: WARNING qmi_qmux_if_pwr_up_init failed! rc=-6

Over and over.

interestingly enough, I was able to install modemDemo via Windows, which I’ve not been able to do before. Also, it did it without docker… how is that possible? This is all through the USB interface. The bad news is that it was just the modemDemo as is and it didn’t run.

Steve

Please can you try a fwupdate query and cm info all in your serial terminal when by chance the device stays quiet for some time?
How did you upgrade to Release 6?

fwupdate query
Connecting to service …
Firmware Version: SWI9X07Y_02.09.02.00 000000 jenkins 2017/10/17 22:59:59
Bootloader Version: SWI9X07Y_02.09.02.00 000000 jenkins 2017/10/17 22:59:59
Linux Version: 3.18.44 #2 PREEMPT Tue Oct 17 23:17:35 UTC 2017

cm info all
Device: WP7601-1
IMEI: 351709090002743
IMEISV: 1
FSN: WC729540301106
Firmware: SWI9X07Y_02.09.02.00 000000 jenkins 2017/10/17 22:59:59
Bootloader: SWI9X07Y_02.09.02.00 000000 jenkins 2017/10/17 22:59:59
PRI PN: 9907596
[ 9789.373272] i2c-msm-v2 78b8000.i2c: NACK: slave not responding, ensure its powered: msgs(n:1 cur:0 tx) bc(rx:0 tx:2) mode:FIFO slv_addr:0x3a MSTR_STS:0x0c1300c8 OPER:0x00000090
PRI Rev: 001.000
Carrier PRI Name: GENERIC
Carrier PRI Rev: 002.009_000
SKU: 1103728
MCU Version: 002.004
LAST RESET REASON: Unknown
RESETS COUNT: Expected: 3 Unexpected: 38

All were updated via Windows. I did try to re-update the “bricked” one via the fwupdate method through linux without success.

@daav,
On the two devices that are rebooting, I managed to get one into a somewhat stable state where at least I have a command prompt. I can download files to it, but if I do the fwupdateStatus command I get back "Bad status (Unkown), install not possible. Is there anything I can do at this point, or is the device just toast?

Steve

I am now running swiflash, which is connecting to the device OK, but has now been running for about 10 minutes and is still outputting “…” with no other indications. Is this normal?

I finally just stopped the swiflash after about 1/2 hour. After several device reboots and other testing, I was able to reflash the device using the Windows exe. I used the same technique on my second device and now all of them are on R6. Yay!

Steve

OK, I’m glad you finally managed to get it working.

FYI, we do have an opened ticket about swiflash vs WP76 that is behaving strangely from time to time.

I am also trying to run helloWorld on WP76xx and I am able to install the app but unable to run it successfully.

See image for details.

info

Ok, my current understanding is that my SDK is using framework 17.06 while the board firmware is running 17.08.1, therefore there is a mismatch. Now I’m trying to figure out how to update my SDK framework.

I successfully updated the SDK with:

legato-spm --install --module WP76XX --update-link

From there, I was able to build the app, install, and run it.

Any new details to share on this problem. I am trying to use WP7603 on Mangoh Red (no ethernet) and I just upgraded to the R6.1 and discovered that it is is worse shape with respect to USB enumeration than R6. At least R6 came up on 192.168.225.1 on our MACs. It appears that there is at least a missing file:
Starting Dropbear SSH server: DONE
cat: can’t open ‘/sys/devices/virtual/android_usb/android0/f_ecm/native_ethaddr’: No such file or directory
dropbear.
stopping DNS forwarder and DHCP server: dnsmasq… stopped /usr/bin/dnsmasq (pid 966)
done.

root@swi-mdm9x28:/sys/devices/virtual/android_usb/android0/f_ecm# ls
device ecm_transports subsystem
ecm_ethaddr power uevent

Not really sure where the problem is, but currently R6.1 is generally inaccessible via USB.

Release 7 will have all ECM issues fixed. It should be available within the next 2 weeks.

I’ve upgraded to R6.1 with Win 10. I also had to update the drivers as there was a lot of strange behavior with the device, when connecting to the tower. But once that was done, the only thing I think is a problem is I can’t “attach” to a running process anymore. It says it doesn’t have enough info.

But mine comes up on 192.168.2.2, not the 225.1.