Help creating full system spk for FX30 Cat1

Hi, I am trying to create a full system spk (with all parts) however I am struggling to create an spk the modem will accept. I am using “fwupdate download [spk file]” to download the spk…

I’ve built my own legato.cwe using a sdef file → mksys → systocwe
I then build my spk using

swicwe -c …/leaf-data/current/fx30-cat1-image/9999999_9907152_SWI9X07Y_02.37.03.00_00_GENERIC_002.095_000-full.spk …/leaf-data/current/fx30-cat1-linux-image/linux.cwe legato.wp76xx.cwe -o full.wp76x.spk

Am I doing this incorrectly? Am I including the incorrect images?

The update fails with the bootloader… running fwupdate checkStatus gives

 `Bad status (Bootloader failed), install not possible.`

PS. The reason for this is to aid the production process, but also to ensure the apps are part of the base legato image so that they cannot be removed…

Have you downloaded one by one by fwupdate to make sure those three images are good?

Having dug into this a little more… the problem seems to be with my legato.cwe file…

As just trying to fwupdate that results in the same problem…

I’ve created it as follows

systocwe wp76xx System.wp76xx.update _build_cwe_wp76xx

I can confirm that the System.wp76xx.update can be applied by itself successfully, but the generated legato.cwe cannot…

How could I debug this? Or is there something obvious I am doing incorrectly…

Thanks,
Karl

The modem image can be flashed on its own…

I don’t use systocwe, instead i make the legato.cwe directly by “make wp76xx” in the legato source package

Hmm ok I could try that… that would require me changing default.sdef file would it not?

systocwe should work though? should it not?.. by the way I am assuming systocwe is the same as systoimg?

Here shows how to add application directly to legato.cwe by modifying wifi.sdef

why do you modify wifi.sdef? that seems odd?

It works for me to add app to the image
You can try other sdef file if you want

Do you run make from the Wifi folder or from the legato root folder?

I did “make wp76xx” In legato root folder

Hmmm I tried just running “make wp76xx -d” without changing anything and am getting the following error

Updating goal targets…
Considering target file ‘all’.
File ‘all’ does not exist.
Considering target file ‘config’.
File ‘config’ does not exist.
Considering target file ‘/home/legato/.leaf/fx30-cat1-legato_19.11.5/build/wp76xx/framework/lib/libjansson.so’.
Considering target file ‘/home/legato/.leaf/fx30-cat1-legato_19.11.5/build/wp76xx/framework/lib’.
Finished prerequisites of target file ‘/home/legato/.leaf/fx30-cat1-legato_19.11.5/build/wp76xx/framework/lib’.
No need to remake target ‘/home/legato/.leaf/fx30-cat1-legato_19.11.5/build/wp76xx/framework/lib’.
Finished prerequisites of target file ‘/home/legato/.leaf/fx30-cat1-legato_19.11.5/build/wp76xx/framework/lib/libjansson.so’.
Prerequisite ‘/home/legato/.leaf/fx30-cat1-legato_19.11.5/build/wp76xx/framework/lib’ is newer than target ‘/home/legato/.leaf/fx30-cat1-legato_19.11.5/build/wp76xx/framework/lib/libjansson.so’.
Must remake target ‘/home/legato/.leaf/fx30-cat1-legato_19.11.5/build/wp76xx/framework/lib/libjansson.so’.

why do you add parameter -d?
Do you do it in leaf shell?

Not sure if you need to do a clean build for “make clean”

yes I’m in leaf shell… the “-d” gives me debug output of the make process…otherwise I get a more cryptic error

I tried “make clean”… no difference

Does this have anything to do with needing to getsrc?

didn’t you already have the source code?

The error I otherwise get is

make[2]: *** [Makefile.targetTools:109: /home/legato/.leaf/fx30-cat1-legato_19.11.5/build/wp76xx/framework/lib/libjansson.so] Error 127

I’ve only run “leaf setup xxx -p xxx”

you can see here: (seems to be same error)

Thanks that was it… doh… no cmake… difficult to tell from the error messages… now to try include my apps…

It really would be easier if the systocwe worked… would be a lot easier… editing the legato files is not great…

Hi @jyijyi, I’ve followed your suggestion of re-purposing the wifi sdef file.

The system builds fine… looking around the build output. The update files that are created in ./build/wp76xx/system/app/* are they full update files? I ask because they are significantly different in size compared to update files created using mkapp of the same adef files?

Thanks