API cmd.carrier.select and config.wan.connection succeed but does not switch carrier on BYO eSIM A (firmware 8.5.2)

Hi all,

I’m building a personal app for my MAX BR1 Pro 5G (firmware 8.5.2) and one of the functions is to switch carriers on the BYO eSIM A

Manual carrier selection works perfectly in the web UI (Cellular → Carrier Selection → Manual Select → pick carrier → Save and Close).

However, the same change via API returns stat: “ok” but the active carrier never actually switches. No connection drop occurs and the Peplink UI continues showing the old carrier.

I have tried two approaches:

  1. The documented endpoint: POST /api/cmd.carrier.select with payload containing connId: 2 and selectedCarrier: { mcc, mnc, pcs, name }
  2. The full config update that the UI itself sends: POST /cgi-bin/MANGA/api.cgi with func: “config.wan.connection”, instantActive: true, and the complete eSim1.carrierSelection block

Both calls succeed, but the router does not apply the new carrier.

Has anyone successfully changed the active carrier via API on a BYO eSIM A profile in firmware 8.5.x? Is there a missing cmd.config.apply, a reconnect step, or a special requirement for eSIM profiles that isn’t documented?

Any working examples or hints would be greatly appreciated.

Thank you very much for your assistance and guidance,

Mark

Upgrade to 8.5.3 or later , we have done this.

Thank you Jonathan! I’ll grab an update in the morning and give it a shot.