ERROR cannot deliver device serial request

I created a new image “pc.img”. After I install the image on the device I get the following error:

user1-company@ubuntu:~$ snap changes
ID   Status  Spawn               Ready               Summary
1    Done    today at 21:10 UTC  today at 21:11 UTC  Initialize system state
2    Error   today at 21:11 UTC  today at 21:11 UTC  Initialize device
3    Error   today at 21:16 UTC  today at 21:16 UTC  Initialize device
4    Done    today at 21:18 UTC  today at 21:18 UTC  Refresh all snaps: no updates

user1-company@ubuntu:~$ snap change 3
Status  Spawn               Ready               Summary
Done    today at 21:16 UTC  today at 21:16 UTC  Generate device key
Error   today at 21:16 UTC  today at 21:16 UTC  Request device serial

......................................................................
Request device serial

2023-06-02T21:16:27Z ERROR cannot deliver device serial request: Cannot process serial request for device with brand "S..............................b" and model "ubuntu-core-20-intel-iot"

user1-company@ubuntu:~$ 

What does this error mean exactly and why am I seeing it?

1 Like

Also have the same error with core 22.

$ snap change 94
Status  Spawn               Ready               Summary
Done    today at 10:14 -03  today at 10:14 -03  Generate device key
Error   today at 10:14 -03  today at 10:14 -03  Request device serial

......................................................................
Request device serial

2023-06-05T10:14:33-03:00 ERROR cannot deliver device serial request: Cannot process serial request for device with brand "********************************" and model "ubuntu-core-22-amd64"

I think I figured it out, but I have not tested it yet.

This link contain the detailed specification for the model assertion. The important field is the following:

serial-authority (optional) list of serial authorities. Use [“generic”] to request a serial generated by the Snap Store.

By using a custom authority-id and brand-id, I assume the model also changes the Serial Vault. This is useful if you’re providing a Dedicated Snap Store, but it is not my case.

@victoitor I’ve tried this. It doesn’t work.

I modified the my-model.json file to include "serial-authority": ["generic"],. After that I signed the model, built the image, deployed the image to the device. I get the same error.

The my-model.json file looks like the following:

{
    "type": "model",
    "series": "16",
    "authority-id": "Sxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxb",
    "brand-id": "Sxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxb",
    "model": "ubuntu-core-20-intel-iot",
    "architecture": "amd64",
    "serial-authority": ["generic"],
    "timestamp": "2023-06-06T19:59:32+00:00",
    "revision": "2",
    "base": "core20",
    "grade": "signed",
    "snaps": [
        {
            "name": "pc",
            "type": "gadget",
            "default-channel": "20/stable",
            "id": "UqFziVZDHLSyO3TqSWgNBoAdHbLI4dAH"
        },
        {
            "name": "intel-iotg-kernel",
            "type": "kernel",
            "default-channel": "20/stable",
            "id": "v7evc8smSqgPwL0KCjpGJf3KuucG2Yap"
        },
        {
            "name": "core20",
            "type": "base",
            "default-channel": "latest/stable",
            "id": "DLqre5XGLbDqg9jPtiAhRRjDuPVa5X1q"
        },
        {
            "name": "snapd",
            "type": "snapd",
            "default-channel": "latest/stable",
            "id": "PMrrV4ml8uWuEUDBT8dSGnKUYbevVhc4"
        },
        {
            "name": "modem-manager",
            "type": "app",
            "default-channel": "20/stable",
            "id": "KtwxgRlwCAVKFw92BUdt1WloH1Va3QPo"
        },
        {
            "name": "network-manager",
            "type": "app",
            "default-channel": "20/stable",
            "id": "RmBXKl6HO6YOC2DE4G2q1JzWImC04EUy"
        }
    ]
}

Where you able to verify?

I tried something different which also did not work.

I installed the canonical provided image. My objective was to remodel into my model assertion so I would not need to build an image. It’s important to note that the canonical provided image does indeed provide a device serial which I can see with snap model. When I attempt to remodel, it gets stuck with

$ sudo snap remodel homelab.model
Request new device serial

While it’s stuck, I open another terminal and run snap changes to find

10   Doing   today at 14:13 -03  -                   Remodel device to ********************************/ubuntu-core-22-amd64 (0)

and

$ snap change 10
Status  Spawn               Ready  Summary
Doing   today at 14:13 -03  -      Request new device serial
Do      today at 14:13 -03  -      Prepare remodeling

Looking at the error message again, it does state: Cannot process serial request for device with brand "********************************" and model "ubuntu-core-22-amd64" Since a more knowledgeable person did not answer, I’m guessing a serial will not be provided by the generic serial authority and our brand unless we purchase a Dedicated Snap Store.

Just an update, I had some network settings which were incorrect. Just fixed them and tried the remodeling again.

I’m not sure what this means, but this is what I got:

$ sudo snap change 12
Status  Spawn               Ready               Summary
Error   today at 14:42 -03  today at 14:42 -03  Request new device serial
Hold    today at 14:42 -03  today at 14:42 -03  Prepare remodeling

......................................................................
Request new device serial

2023-06-09T14:42:16-03:00 ERROR cannot deliver device serial request: invalid request: unexpected data after serial-request and optional model

It did not hang like the last time.

1 Like