   }
 }
 
+static void add_cell_info(JsonArray& json_array, vm_cell_info_struct *info) {
+  JsonObject& cell = json_array.createNestedObject();
+  cell["mcc"] = info->mcc;
+  cell["mnc"] = info->mnc;
+  cell["lac"] = info->lac;
+  cell["ci"] = info->ci;
+  cell["sig"] = info->rxlev;
+}
+
 static void handle_report() {
   if (!g_report_lock && !g_report_other) {
     return;

    root["battery"] = LBattery.level();
    root["charge"] = (LBattery.isCharging() == true);

    vm_cell_info_struct *current_cell_ptr = NULL;
    LTask.remoteCall(&get_current_cell_info, (void *)&current_cell_ptr);
    JsonObject& cell = root.createNestedObject("cell");
    cell["mcc"] = current_cell_ptr->mcc;
    cell["mnc"] = current_cell_ptr->mnc;
    cell["lac"] = current_cell_ptr->lac;
    cell["ci"] = current_cell_ptr->ci;
    g_report_other = false;
  }


#include <LTask.h>
#include <MQTTClient.h>

#define JSON_BUF_SIZE 1024

#define PIN_MOTOR 0
#define PIN_LOCK_STATUS 5
