# Sending json data to serial and display in msg payload

**URL:** <https://discourse.nodered.org/t/sending-json-data-to-serial-and-display-in-msg-payload/31632>\
**Category:** General\
**Created:** [17 August 2020 01:52 UTC](https://discourse.nodered.org/t/sending-json-data-to-serial-and-display-in-msg-payload/31632 "2020-08-17T01:52:59Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Wannahusna](https://avatars.discourse-cdn.com/v4/letter/w/439d5e/32.png) [@Wannahusna](https://discourse.nodered.org/u/Wannahusna)\
**Post date:** [17 August 2020 01:52 UTC](https://discourse.nodered.org/t/sending-json-data-to-serial-and-display-in-msg-payload/31632/1 "2020-08-17T01:52:59Z")

</div>

Hi, i plan to sending json data to serial and display to msg. payload but didnt work. and for continue i want sending json data to serial and read by hc12 but didnt work

 ![nodered](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/e/a/eabf5fc51e7755fbd4b9b01e6015a0cbd6769dcc.jpeg)

i applied to software serial for tracer where part didnt work. when it works i will send to hc12 by software serial and parser json data

//Concentrator

#include \<SoftwareSerial.h\>  
#include \<ArduinoJson.h\>  
#define rxPin 5  
#define txPin 4  
#define setPin 6

SoftwareSerial HC12(rxPin, txPin); // ke arah sensor node  
//SoftwareSerial gateway(

void setup() {  
Serial.begin(19200);  
pinMode(rxPin, INPUT);  
pinMode(txPin, OUTPUT);  
HC12.begin(9600);  
if (HC12.isListening()) {  
Serial.println("OK");  
} else {  
Serial.println("NOK");  
}  
}

// keep in sync with ESP\_NOW sensor struct  
struct **attribute** ((packed)) SENSOR\_DATA {  
uint16\_t sessionid;  
int idmeter[10];  
int angkastandmeter[10];  
boolean state[10];  
} sensorData;

void loop() {  
//Parsing paket data (JSON) yang diterima dari Nodered  
while (Serial.available()) {  
delay (500);

```
StaticJsonDocument<300> doc; //alokasi memori untuk data yg disimpan ke dokuemn
DeserializationError error = deserializeJson(doc, Serial);//untuk parsing jsdon input dan disimpan ke json document
if (error) {
  Serial.println(F("deserializeJson() failed: "));
  Serial.println(error.c_str());
  return;
}
JsonObject sessionid = doc["sessionid"].as<JsonObject>();
JsonObject N = doc["N"].as<JsonObject>();
JsonArray idmeter = doc["idmeter"].as<JsonArray>();
JsonArray angkastandmeter = doc["angkastandmeter"].as<JsonArray>();
JsonArray state = doc["state"].as<JsonArray>();
JsonObject uplink = doc["uplink"].as<JsonObject>();

sensorData.sessionid = doc["sessionid"];
for (int i = 0; i < N ; i++) {
  sensorData.idmeter[i] = doc["idmeter"];
  sensorData.angkastandmeter[i] = doc["angkastandmeter"];
  sensorData.state[i] = doc["state"];
}

delay(500);
uint8_t bs[sizeof(sensorData)];
memcpy(bs, &sensorData, sizeof(sensorData));

HC12.println("$$"); //just for indicator
HC12.write(sizeof(bs));
HC12.write(bs, sizeof(bs));

```

}

while (HC12.available()) {  
delay(2000);  
if (HC12.read() == '&') {  
while ( ! HC12.available() ) {  
delay(1);  
}  
if ( HC12.read() == '&' ) {  
byte len = HC12.read();  
while (HC12.available() \< len) {  
delay(1);  
}  
HC12.readBytes((char\*)&sensorData, len);  
StaticJsonDocument\<300\> dok;  
JsonObject sessionid = dok.createNestedObject("sessionid");  
dok["sessionid"] = sensorData.sessionid;  
JsonArray id = dok["idmeter"].to();  
JsonArray astd = dok["angkastandmeter"].to();  
JsonArray st = dok["state"].to();  
for (int i = 0; i \< 10; i++) {  
id.add(sensorData.idmeter[i]);  
astd.add(sensorData.angkastandmeter[i]);  
st.add(sensorData.state[i]);  
}  
delay(500);  
serializeJsonPretty(dok, Serial);  
}  
}  
}  
}

please help me

---

<div class="post-metadata">

**Author:** ![Colin](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/colin/32/17040_2.png) [@Colin](https://discourse.nodered.org/u/Colin)\
**Post date:** [17 August 2020 09:37 UTC](https://discourse.nodered.org/t/sending-json-data-to-serial-and-display-in-msg-payload/31632/2 "2020-08-17T09:37:18Z")

</div>

Are you asking for help with the Arduino code or do you think it is a problem in node-red?

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/1X/d073cd938eafa2e558d7c2cd59003b3ef4963033.png) [@system](https://discourse.nodered.org/u/system)\
**Post date:** [16 October 2020 09:37 UTC](https://discourse.nodered.org/t/sending-json-data-to-serial-and-display-in-msg-payload/31632/3 "2020-10-16T09:37:35Z")

</div>

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.
