Build an USERAPP cwe for FX30 4G

Hi,
Our company build a custom FW for the FX30 4G with several components (not legato for the most parts), but we don’t have enough space to fit all our apps on the base partition.
Is any way/docs to fill the USERAPP partition with our files at the fw cwe build?

Best regards,
Guillaume

Hi g.amaudric

You can use AT!APPPARTCHG to configure or list the sizes of the partitions.

at!apppartchg?

Total APP partition size:
261886 kB APPSBL,PAD,APPS,PAD,SYSTEM,PAD,USERDATA,PAD,USERAPP,PAD =
768,50,20000,384,50000,300,38000,2560,149440,384

You can’t collapse them into the same space, but you can steal as much space as you want from the others. The partitions are used as follows:

APPSBL - the bootloader. Leave this one alone
APPS - kernel
SYSTEM - rootfs
USERDATA - We put the Legato framework here in some instances, but you don’t have to. You can reclaim all of this space if you like. As of 15.01 it is mounted as /mnt/legato.
USERAPP - The big writable area for your use (mounted as /mnt/flash)

If you run the command as a query you should see something like:

at!apppartchg? Total APP partition size: 261886 kB APPSBL,PAD,APPS,PAD,SYSTEM,PAD,USERDATA,PAD,USERAPP,PAD = 768,50,20000,384,50000,300,38000,2560,149440,384

That will list the sizes of the partitions. The one you care about for your rootfs is “SYSTEM”. Depending on how large it is you can steal some space from the subsequent partitions without too many consequences. e.g. increase size by 10MB …

AT!APPPARTCHG=768,50,20000,384,60000,300,38000,2560,139440,384

Please refer to Flash partitions for more details.

Hi Donald,
Thanks you for your answer, unfortunately this command is unavailable/unsupported on the wp7702 (fx30 4g cat-m) which we use.

Best regards,
Guillaume

Hi g.amaudric

Can you unlock password-protected command on FX30?

AT!UNLOCK=“A710”
AT!RESET
AT!APPPARTCHG?

Please help to mark “Solution” if your question is answered.

Hi,
Here are my command return:
AT!ENTERCND=“A710” => OK
AT!RESET => OK
AT!APPPARTCHG? => ERROR

The last command seem to has been removed from the platform since it doesn’t appear on the at command reference (4118047 WPx5xx-76xx-77xx AT Command Reference_r7.1.pdf).

Hi g.amaudric

It is not supported currently on the wp7702 (fx30 4g cat-m).

By exploring the Sierra Yocto recipes of th 4g and compare them to the 3g version it appear that Sierra had remove all code which generated the overlay (mdm9x28-image-cwe.inc vs mdm9x15-image-cwe.inc).

I will try to had the overlay specific code to the new environment.

I do have the same issue with my FX30 4G. Do you have a new solution?
If not, is there a way to directly change partitions via Yocto?

Can your module enter at!partition command?

If it cannot enter this command, you need to contact distributor

Thank you for your reply and for the help.
I took a look at the datasheet and as I can see : “Supporting devices: WP76xx”. But I’m working on WP77XX with a 4G FX30.
The !partition command isn’t directly available. Also, as I understand “By default, this command is not available. It is only available as a factory (SKU-level) configuration.”. So, can I add this command with a custom Yocto recipe ?

have you tried “at!partition=?”

Yes I did,
AT!ENTERCND=“A710” => OK
AT!PARTITION=? => ERROR

no problem on my side on FW 14.1: (but my module cannot modify partition)


ati3
Manufacturer: Sierra Wireless, Incorporated
Model: WP7702
Revision: SWI9X06Y_02.36.06.00 63d944 jenkins 2020/12/10 19:12:28
IMEI: 352653090612345
IMEI SV:  6
FSN: VU213430812345
+GCAP: +CGSM

OK
at!entercnd="A710"
OK
AT!partition?
            PART    BLOCK     SIZE
            NAME   OFFSET     (KB)
           0:SBL 00000000     2560
         0:MIBIB 0000000A     2560
        0:BACKUP 00000014     6656
      0:SECURITY 0000002E     1024
       0:PERSIST 00000032     2048
          0:EFS2 0000003A    17920
       0:SWIFOTA 00000080    81152
            0:TZ 000001BD     1536
        0:DEVCFG 000001C3      768
           0:RPM 000001C6      768
         0:modem 000001C9    32768
         0:aboot 00000249     1024
          0:boot 0000024D    15360
        0:system 00000289    30720
       0:LEFWKRO 00000301     8960
         0:SWIRW 00000324    25600
       0:USERAPP 00000388   134144
      0:RESERVED 00000594    55808
        0:SLOT_2 0000066E    34304
        0:SLOT_1 000006F4    34304
        0:SLOT_0 0000077A    34304

OK
AT!partition=?
To print partition table: AT!PARTITION?
To modify partition sizes: AT!PARTITION=<name>,<size0>[,<size1>,...]
  <name> - name of the first partition to modify its size, can be blank
  <size0> - new size in KB of the first partition
  <size1>,... - new sizes of next partitions
  for example: AT!PARTITION=0:boot,2560
  List of partitions whose size can be modified:

None/Not Allowed

OK


As you can see, I’m working on the last stable release in R15. We’re preparing our products to face this new version.

I tried to enter the exact same command but seems like the !partition code was been removed
Screenshot from 2023-01-31 08-47-21

Do you have a new AT command for this version ? Or, can I re implement it by another way ?
And, do you have a new datasheet (version 9 I guess) for “AT” command ?

can you first try the same FW as my testing?

I tried on a FX30 based on R14 and worked like you with the not allowed !partition command :

So, is the !partition command removed from R15? What to do now?

If you cannot use this command, you need to contact distributor to see if there is a tool to let you use this command

BTW, do you mean the USERAPP partition is not big enough for you? (already ~130MB)

We are the distributor with Sphinx Connect France
It’s the opposite, I need to reduce USERAPP partition to increase the SYSTEM partition in order to add more preinstalled tools to a custom Yocto receipe (for example NodeJs need arround 40Mo)

then you should be able to contact the support team

BTW, here is an example to run the tool (e.g. python3) in RAM, you might consider this to zip the required tool and put in userapp partition and then extract it during each power on.
https://forum.mangoh.io/t/building-custom-yocto-image-for-mangoh-red-wp76/5374/31

here is another example to run extra python library in RAM:

Thank you for your help, I contacted them. I will keep you informed if I found something.
This is what we are currently doing, we just wanted something cleaner and to be able to keep those tools in case of a reset hardware