Unexpected deviceclass


I have been making an integration from Chirpstack V3 to V4 by following the migration guide. Everything seems like it has been working out, but when I try to click on a device (by clicking the DeviceEUI), I get the error “Unexpected DeviceClass”. And when I try to get the device from with the chirpstack-api, I get the same error (using grpc).

When I try to create a new device from the Chirpstack UI, that is not from the migration from V3 to V4, I don’t get the error.

Have I been doing something wrong, or is there is fix to this? It’s important for us that we can get all the devices, even though they haven’t been active yet. Hope it makes sense :slight_smile:

Kind regards



We had the same problem. We investigated this issue and seems that the migration process have a bug at line 1505: https://github.com/chirpstack/chirpstack-v3-to-v4/blob/master/main.go
The migration process updates all empty strings, but in v3 some enabled_class have a white space:

We fixed this updating all devices in database that have a white space:

update device set enabled_class='A' where enabled_class=' ';



I just released a new ChirpStack v4.6.0 version. I will also release a new v3 to v4 migration tool later today or else tomorrow which includes a fix for this + many other improvements.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.