 static void check_network() {
   if (millis() - g_check_net_ms > 20000) {
     if (!g_mqtt_client.connected()) {
-      Serial.println("mqtt connection failed, reset gprs");
+      Serial.println("mqtt connection failed, try reconnect");
       LGPS.powerOff();
       sync_buzzer(2000);
-      g_status = STATUS_INIT_GPRS;
+      g_status = STATUS_INIT_YUNBA;
     } else {
       Serial.println("mqtt connection is ok");
     }

  digitalWrite(PIN_BUZZER, LOW);

  if (lock_status_on()) {
    g_lock_status = LOCK_UNLOCKED;
  } else {
    g_lock_status = LOCK_LOCKED;
  }
  g_status = STATUS_INIT_GPRS;
}

  bool rc = false;
  LGPRSClient net_client;

  Serial.println("connect reg");
  while (!net_client.connect("reg-t.yunba.io", 9944)) {
    Serial.println(".");
    delay(1000);
  }

  String data;
  if (device_id == NULL)
