Este es un pequeño tutorial sobre cómo configurar NIDD (Entrega de datos sin IP) en el servicio en la nube de MTS con el nombre autoexplicativo "Administrador M2M". La esencia de NIDD es el intercambio energéticamente eficiente de pequeños paquetes de datos a través de la red NB-IoT entre dispositivos y un servidor. Si los dispositivos GSM anteriores se comunicaban con el servidor, intercambiando paquetes TCP / UDP, entonces estaba disponible un método de comunicación adicional para los dispositivos NB-IoT: NIDD. Al mismo tiempo, el servidor interactúa con la red del operador mediante solicitudes POST / GET unificadas. Escribo para mí (para no olvidar) y para todos los que lo encontrarán útil.
Puede leer sobre NB-IoT:
NB-IoT, Internet de las cosas de banda estrecha. Información general, características de la
tecnología NB-IoT, Internet de las cosas de banda estrecha. Modos de ahorro de energía y comandos de control
Teoría NIDD de MTS
Documentation para el módulo NB-IoT que se utilizó en el proceso de prueba:
Neoway N21 .
Servicio MTS para la gestión de dispositivos M2M .
Para sentir el NIDD, necesitamos:
- Tarjeta SIM NB-IoT MTS
- Dispositivo NB-IoT con soporte NIDD
- contraseña e inicio de sesión desde el administrador M2M de MTS
Usé la placa de demostración N21 como dispositivo y los empleados de MTS amablemente me proporcionaron la contraseña y el nombre de usuario para acceder al administrador de M2M. Por ello, así como por las diversas ayudas y numerosas consultas, muchas gracias a ellos.
Entonces, vaya al administrador M2M y verifique que:
- en el elemento de menú "Administrador SIM" hay "Centro de control NB-IoT";
- nuestra tarjeta NB-IoT ha aparecido en el "NB-IoT Control Center", así como las secciones:
NIDD APN
NIDD NIDD Cuentas
Seguridad - en la parte inferior hay un elemento de menú "API M2M" con "NIDD Developer's Guide"
Toda esta economía debería verse así:
si falta algo en el administrador M2M, no dude en enviar una solicitud a su administrador en MTS con una descripción detallada de sus deseos.
Si los elementos necesarios del Centro de control de NB-IoT están en su lugar, puede comenzar a llenarlos. Además, el elemento "Cuentas NIDD" es el último: necesitará datos de las secciones vecinas.
- NIDD APN: Ingrese y complete el nombre de nuestro APN y el "ID de la aplicación".
- Seguridad NIDD: aquí indicamos la dirección IP de nuestro servidor de aplicaciones, que se comunicará con los dispositivos NB-IoT a través del servicio MTS (servidor).
- Cuentas NIDD: simplemente complete todos los campos y haga clic en "Guardar".
Tan pronto como se completen todos los elementos, puede comenzar a atender las solicitudes que debe generar nuestro servidor. Vaya a API M2M y lea la Guía para desarrolladores de NIDD. Para que el dispositivo se registre en la red NB-IoT, debe crear una configuración SCS AS:
el manual contiene una descripción de los parámetros de solicitud individuales, solo daré un par de pequeños comentarios:
- enlace para enviar solicitudes: m2m-manager.mts.ru/scef/v1/3gpp-nidd/v1/ {scsAsId} / configuraciones, donde scsAsId es el "ID de la aplicación" del elemento de menú "NIDD APN";
- método de autorización básico con nombre de usuario y contraseña: utilice el nombre de usuario y la contraseña que se le ocurrieron al completar el elemento del menú "Cuentas NIDD";
- notificationDestination: la dirección de tu servidor. Desde él, enviará mensajes que no sean IP a los dispositivos, y el servidor MTS enviará notificaciones sobre el envío y la recepción de mensajes que no sean IP.
Cuando se crea la configuración de SCS AS, y el dispositivo se ha registrado correctamente en modo NIDD en la red NB-IoT del operador, puede intentar intercambiar los primeros mensajes que no sean IP entre el servidor y el dispositivo.
Para transferir un mensaje del servidor al dispositivo, estudie la sección "2.2 Enviar un mensaje" del manual:
{configurationId} en el enlace de solicitud - el valor del tipo "hex-abracadabra" obtenido en la etapa de creación de la configuración. Tiene la forma: b00e2485ed27c0011f0a0200.
datos : contenido del mensaje en codificación Base64.
Configuración de un dispositivo NB-IoT para que funcione en NIDD
Por supuesto, para intercambiar datos con el servidor, nuestro dispositivo no solo debe poder funcionar en la red NB-IoT, sino que también debe ser compatible con el modo NIDD (no ip). En el caso de la placa DEMO N21 u otro dispositivo basado en el módulo N21 NB-IoT, la secuencia de acciones para transmitir mensajes no IP se describe a continuación.
Activamos la configuración con APN, que se nos ocurrió al completar el ítem "NIDD APN" del administrador M2M (aquí - EFOnidd):
AT + CFGDFTPDN = 5, "EFOnidd"
y pedimos al dispositivo que se vuelva a registrar en la red:
AT + CFUN = 0
AT + CFUN = 1
después de eso
emitimos el comando AT + CGACT = 1,1
y enviamos el mensaje “test”:
AT + NIPDATA = 1, “test”
Al recibir un mensaje no ip, se emite un mensaje no solicitado del formulario a la UART del módulo N21:
+ NIPDATA: 1,10,3132333435 // mensaje no IP '12345' recibido
donde
1 es CID, contexto pdp
10 es el número de bytes de datos después del punto decimal
El mensaje llega al servidor en codificación Base64 (en una solicitud POST).
PD: Es conveniente utilizar Postman para simular la transferencia de datos desde el servidor . Cualquier script que simule un servidor HTTP se puede utilizar para recibir mensajes.
Espero que sea útil para alguien.
Gracias.