 				analogWrite(14, 1023);
 	}
 	char *token = NULL;
-	char *msg = (char *)malloc(64);
+	char *msg = (char *)malloc(MQTT_MSG_LEN);
 	__bzero(msg, sizeof(msg));
 	for (int i = 0; i < length; i++)
 		msg[i] = payload[i];

	if (token == NULL) {
		log_warn("no payload, ignore\n\r");
	} else if (strcmp(token, "light:") == 0) {
		int val = atoi(&msg[7]);
		analogWrite(14, val);
	} else if (strcmp(token, "servo:") == 0) {
		int val = atoi(&msg[7]);
		log_dbg("hit servo, msg(value): %s(%d)\n\r", &msg[7], val);
		myservo.write(val);
	} else {
	}
	free(msg);

		neurite_worker();
	else
		neurite_cfg_worker();
#ifdef NEURITE_ENABLE_USER
	neurite_user_loop();
#endif
}

/*
