1. Pendahuluan

Pada tutorial ini, Anda akan menggunakan software POSTMAN atau MQTT FX untuk mengirim pesan downlink ke perangkat LoRaWAN Anda. Modul yang digunakan pada tutorial ini adalah modul Arduino LoRa Antares berbasis Arduino Pro Mini (ATMEGA328P).

loramodul

2. Prasyarat

Sebelum memulai, pastikan Anda telah memenuhi syarat sebagai berikut:

a. Install Arduino IDE pada komputer Anda. Klik Software Arduino IDE jika Anda belum menginstall.

b. Board Arduino: Download Library Loraid pada Arduino IDE. Klik Download Download Library Loraid

c. Untuk menggunakan RESTFUL API berbasis protokol HTTP, Anda perlu meng-install software POSTMAN. Klik Software POSTMAN jika Anda belum menginstall.

d. Untuk menggunakan RESTFUL API berbasis protokol MQTT, Anda perlu meng-install software MQTT FX. Klik Software MQTT FX jika Anda belum menginstall.


3. Konfigurasi Perangkat

a. Masuk pada laman console Antares akun Anda. Buat device pada aplikasi di console akun anda. Jika sudah memiliki device Anda bisa langsung buak page device yang telah Anda buat sebelumnya. Kemudian klik Set LoRa seperti pada gambar berikut:

downlink-tutorial-1

Lalu akan muncul kotak dialog Set LoRa Device seperti gambar di bawah. Pada pilihan Select LoRa Device Class, pilih Class C > Aktivasi ABP > ABP Parameter Inherit > Klik Set LoRa .

downlink-tutorial-2

b. Pada Arduino IDE, konfigurasikan Arduino Pro or Pro Mini sebagai board yang akan Anda gunakan. Klik Tools > Board > Arduino Pro or Pro Mini.

c. Pada Arduino IDE, konfigurasikan Processor ATmega328P (3.3 V,8 MHz) sebagai processor yang akan Anda gunakan. Klik Tools > Processor > ATmega328P (3.3 V,8 MHz).
*Notes: Jika menggunakan board lain, pilih sesuai board yang digunakan

d. Pada Arduino IDE, konfigurasikan Port sesuai dengan Board Arduino LoRa yang Anda gunakan. Klik Tools > Port > COM ....

e. Pada Arduino IDE, upload program example class C dari library loraid melalui File > Examples > loraid > loraid-send-class-C. Sesuaikan data access key dan juga device address sesuai akun di ANTARES. Berikut source code untuk file example class C:.

#include "loraid.h"

long interval = 10000;    // 10 s interval to send message
long previousmillis = 0;  // will store last time message sent
unsigned int counter = 0;     // message counter

void setup() {
  // setup loraid access
  lora.init();

  // set lorawan class
  lora.setdeviceclass(class_c);

  // set data rate
  lora.setdatarate(2);
  
  // put antares key and devaddress here
  lora.setaccesskey("your-access-key");
  lora.setdeviceid("your-device-address");
}

void loop() {
  // put your main code here, to run repeatedly:
  char mystr[50];
  char outstr[255];
  int recvstatus = 0;
  
  unsigned long currentmillis = millis();

  // check interval overflow
  if(currentmillis - previousmillis > interval) {
    previousmillis = currentmillis; 

    sprintf(mystr, "ini data lora ke-%d", counter); 
    lora.sendtoantares((unsigned char *)mystr, strlen(mystr), 0);
  }

  recvstatus = lora.readdata(outstr);
  if(recvstatus) {
    serial.println(outstr);
  }
  
  // check lora rx
  lora.update();
}
                            

Setelah mengupload program example class C pada board yang digunakan. Pastikan perangkat sudah mengirimkan data lora dan sampai pada platform ANTARES. Jika data dari board sudah dapat masuk ke ANTARES, maka langkah selanjutnya yaitu melakukan downlink (mengirimkan message) ke perangkat melalui Platform ANTARES via POSTMAN atau MQTT FX.



Setelah Anda selesai melakukan konfigurasi pada perangkat dan perangkat sudah dipastikan dapat mengirim data ke ANTARES, saatnya mencoba untuk mengirim downlink ke device melalui Platform ANTARES dengan menggunakan software POSTMAN

Jika belum melakukan instalasi POSTMAN dapat mengikuti tutorial pada page Tutorial POSTMAN.

Untuk melakukan downlink digunakan metode POST. Untuk melakukan metode POST ini diperlukan paramter header dan juga body. Petama-tama Isi parameter Header sesuai tabel dibawah ini:
*Notes: Sesuaikan parameter access key dan alamat URI sesuai akun Anda

Field Initial Value Current Value
access-key access-id:access-password access-id:access-password
application-name your app name in ANTARES your app name in ANTARES
device-name your device name in ANTARES your device name in ANTARES
e-mail Your e-mail Your e-mail

Jika sudah diisi, tampilan header akan menjadi seperti ini

downlink-tutorial-3

Kemdian selanjutnya ke bagian body. Pada bagian body ini berisikan data yang ingin dikirimkan ke device LoRa Anda. Isi parameter Body sesuai dengan apa yang ingin dikirimkan ke perangkat dengan mengikuti format di bawah ini:

Field Value
Body
{
      "m2m:cin": {
        "con": "{\"type\":\"downlink\", \"data\":\"your-downlink-data\"}"
    }
}

Jika parameter body sudah diisi maka akan seperti pada gambar di bawah ini:

downlink-tutorial-4

Klik send untuk mengeksekusi POST downlink message ke ANTARES. Jika sudah di POST maka downlink message akan langsung dikirimkan ke perangkat melalui gateway LoRa terdekat. Message downlink dapat dilihat melalui serial monitor pada Arduino IDE

downlink-tutorial-9

Jika menggunakan board arduino dapat menggunakan Baud Rate 9600 untuk melihat data downlink yang diterima. Berikut contoh serial monitor saat berhasil menerima downlink:


downlink-tutorial-10


Setelah Anda selesai melakukan konfigurasi pada perangkat dan perangkat sudah dipastikan dapat mengirim data ke ANTARES, selain menggunakan POSTMAN, Bagi Anda yang lebih cocok menggunakan protokol MQTT, Anda dapat mencoba untuk mengirim downlink ke device melalui Platform ANTARES dengan menggunakan software MQTT FX

Pada bagian ini, Anda untuk mengirimkan data melalui MQTT FX, diperlukan konfigurasi broker ke Platform ANTARES sebagai berikut:

Host mqtt.antares.id
Port 1883

Untuk bagian Client ID bisa disesuaikan dengan access key akun Anda ataupun uniqe code lainnya. Setelah sesuai dapat disimpan dengan menekan tombol save.


Setelah konfigurasi broker sudah sesuai dapat langsung dihubungkan ke broker MQTT ANTARES dengan menekan tombol Connect.

downlink-tutorial-6

Jika sudah terhubung maka akan menampilkan lingkaran hijau di atas kanan seperti pada gambar:

downlink-tutorial-7

Setelah terhubung, langkah selanjutnya yaitu mengirimkan publish ke ANTARES ke device yang terdaftar di ANTARES dengan menginputkan topic dan juga content body sebagai berikut:

Topic /oneM2M/req/your-access-key/antares-cse/json
Payload
{
  "m2m:rqp": {
    "fr": "your-access-key",
    "to": "/antares-cse/antares-id/your-application-name/your-device-name",
    "op": 1,
    "rqi": 123456,
    "pc": {
      "m2m:cin": {
        "cnf": "message",
        "con": "{\"type\":\"downlink\",\"data\":\"your-downlink-data\"}"
      }
    },
    "ty": 4
  }
}

Setelah data access key dan alamat device sudah sesuai, klik tombol publiish untuk mengirimkan data ke ANTARS

downlink-tutorial-8

Jika berhasil masuk ke ANTARES, maka pada device ANTARES akan muncul seperti pada gambar dibawah ini:

downlink-tutorial-9

Jika data downlink masuk ke Platform ANTARES, maka akan langsung di forwardkan ke NS Lora dan dikirimkan melalui gateway terdekat. Data dapat diterima oleh perangkat seperti pada gambar berikut:

downlink-tutorial-10