   EthernetClient net_client;
 
   while (0 == net_client.connect(host, port)) {
+    Serial.println("c");
+    delay(1000);
+  }
+  delay(100);
+
+  net_client.write(buf, *len);
+  net_client.flush();
+
+  while (!net_client.available()) {
+    Serial.println("a");
+    delay(1000);
+  }
+
+  *len = net_client.read(buf, BUFSIZE - 1);
+  buf[*len] = 0;
+
+  net_client.stop();
+}
+
+void simple_send_recv2(uint8_t *buf, uint16_t *len, IPAddress ip, uint16_t port) {
+  EthernetClient net_client;
+
+  while (0 == net_client.connect(ip, port)) {
     Serial.println("c");
     delay(1000);
   }

  }

//  Serial.println("\nconnected!");
//  client.subscribe(topic);
  set_alias(g_devid);
}

void check_connect() {
  if (millis() - g_last_check_ms > 2000) {
    boolean st = client.connected();
    Serial.println(st);
    if (st != g_net_status) {
      Serial.print("cst:");
      g_net_status = st;

  buf[len] = 0;
  Serial.println((char *)buf + 3);

//  simple_send_recv(buf, &len, "reg-t.yunba.io", 9944);

  IPAddress ip(182, 92, 105, 230);
  simple_send_recv2(buf, &len, ip, 9944);

  if (len > 0) {
    len = (uint16_t)(((uint8_t)buf[1] << 8) | (uint8_t)buf[2]);
