Establishing the network type HL7812


I have been asked to indicate the type of cellular network our equipment is connected to, we are using the HL7812 Module. I just need to be able to give an indication of either 2G, 3G or 4G as is common on most all mobile phones.

From my research on Google, it would seem that I should be able to get that information from the +CREG and +CEREG responses, but I am struggling to work out how to to map that information to one of the three categories above.

If my basic understanding it correct, the following mapping could reasonably be used:

GSM = 2G
UTRAN (Any) = 3G
E-UTRAN (Any) = 4G

But the AT Command Interface Guide seems to imply that all of the +CEREG codes that could be returned for UTRAN are ‘not applicable’ which is somewhat confusing. Unfortunately, I am in an area with blanket 4G coverage, so I cannot see if the UTRAN codes are actually returned by +CEREG in a 3G only coverage area or not.

Can anyone throw some light on this please? Am I missing something, does ‘not applicable’ mean not available on this module, and if so, is there another way to distinguish between 3G and 4G? I have also seen reference to +CGREG but that does not seem to be supported in the command set at all.

Any insight would be really useful.

Hi @tim.nicholson,

Welcome to our community!

Based on the information in the Product Technical Specification, HL7812 only supports LTE and 2G technologies. Please refer to page 8 of the following document for more information:


Thanks Jerdung,

That would explain it, so would I be right in thinking that if only 3G was available, the module would fall back to GSM?



Hi @tim.nicholson,

To make the module operate in 2G, you need to switch the RAT (Radio Access Technology) to GSM.
To enable the module to automatically switch the Radio Access Technology (RAT) to GSM, you need to use the command +KSELACQ. Please refer to the following documentation for more information: