Senangnya hati ini saat berhasil menduplikasi alat jadul saat penulis kerja praktek pada tahun 2002 (bisa dibaca disini ) terutama saat berhasil mengirimkan data pembacaannya menuju grafik pada microsoft excel menggunakan NBIOT telkomsel dan Antares sebagai platform IOT nya. Dan sekarang saya ingin mengetes proses kebalikan dari alat ini yaitu subscribe ke topic antares dan mencoba menerima data. Sebagai pemahaman untuk pembaca, proses subscribe MQTT dari antares selalu menggunakan topik :
/oneM2M/resp/antares-cse/ACCESS:KEY/json
Access:key merupakan username dan password yang anda dapatkan dari platform antares . Karena topiknya satu saja maka data yg ingin diolah diterima dibagian mana ? Mari kita lihat contoh respon atau jawaban dari topik mqtt.
{
"m2m:rsp" : {
"rsc" : 2001,
"rqi" : "123456",
"pc" : {
"m2m:cin" : {
"rn" : "cin_63068886",
"ty" : 4,
"ri" : "/antares-cse/cin-63068886",
"pi" : "/antares-cse/cnt-682859183",
"ct" : "20200707T152502",
"lt" : "20200707T152502",
"st" : 0,
"cnf" : "message",
"cs" : 35,
"con" : "{\"led\":\"on\"}"
}
},
"to" : "username:password",
"fr" : "/antares-cse"
}
}
Wihh panjangnya sekitar 500 karakter nih...padahal kalau dilihat dari buffer nya library tinyGSM hanya mencantumkan rx buffer sebanyak 64 byte saja. Jadi berdasarkan penelusuran praktek menghidupkan LED melalu NBIOT-ANTARES pesan tidak bisa diterima karena kepanjangan. Kalau saya errorkan mengirim data maka response dapat diterima dengan baik karena pesan nya tidak melewati jumlah byte buffer.
Dapat disimpulkan datanya terlalu panjang untuk buffer sim7000 bagaimana kalau buffernya dibesarkan? Yang terjadi adalah memory RAM arduino yang saya gunakan menjadi kritis 80% dan tidak mampu untuk mengerjakan fungsi memori dinamis scriptnya. Bagaimana kalau kita menggunakan broker lain dan mencoba mengirim data panjang ? Kita coba menggunakan broker HIVEMQ dan hasil yang didapat kurang lebih sama. Untuk lebih jelasnya dapat dilihat pada video berikut ini.
0 komentar:
Posting Komentar