Ceritanya saya mendapatkan projek yang menggunakan arduino MKR wifi 1010 dan sama sekali belum pernah saya oprek arduino yang satu ini. arduino mkr wifi 1010 dilengkapi dengan modul wifi dan chip bawaan SAMD21 keluarga ARM. untuk sepeknya bisa baca selengkapnya di https://store.arduino.cc/usa/mkr-wifi-1010
Harga nya lumayan mahal, di halaman resmi arduino .cc saja tercantum $32.10 mungkin kalo dirupiahkan sekitar 600-700 ribuan (kurs saat ini 14000) ditambah pajak dan juga ongkir, ya ada sekitar harga satu jutaan.
gampang gampang susah memulai dan instalasi arduino MKR wifi 1010 pada arduino IDE. makanya silahkan ikuti tutorial ini untuk memahami cara penggunaanya.
Instalasi Board Arduino MKR 1010 pada Arduino IDE
caranya mudah sih, tinggal buka software arduino ide nya kemudian buka tools, kemudian board manager cari arduino SAMD Boards
setelah sudah terpasang, silahkan coba masukan usb ke laptop dan juga ke arduino mkr wifi 1010. dan pilih boardnya menjadi arduino mkr wifi 1010.
Untuk port nya harus muncul seperti ini ya, kalo ga muncul nama arduino wifi mkr 1010 nya ga akan bisa ngupload program. semisal kalian ga muncul juga, silahkan di update driver nya. nanti dibawah saya jelaskan cara update.
Nah semisal driver nya belum diupdate begini cara update nya.
- Buka device manager
- Pasti akan muncul port com baru
- Klik kanan update driver
- Manual aja brows dikomputer kalian dan arahin ke folder arduino > folder driver
Kalo sudah semua, silahkan coba upload program basic/blink. kalo bisa diupload berarti arduino mkr wifi 1010 kalian bisa digunakan.
Library yang disarankan supaya kerja arduino mkr 1010 optimal
WiFiNINA
library ini berguna jika kalian akan menggunakan fitur wifi, seperti wificlient, wifiSSLclient, webserver dan macam macam sih ya sama kaya menggunakan ESP8266 wifinya.
Scheduler
Kalo library ini berfungsi untuk memanfaatkan multitasking program pada arduino mkr wifi 1010, jadi dua loop atau dua program dijalankan secara bersamaan, bukan dengan interrupt ya.
ArduinoJson
Kalo yang ini library untuk parsing data yang dalam bentuk json, bisa dari api web atau apapun sih yang pake json hehe taunya saya cuma dari server aja.
Projek #1 Kontrol LED dengan Telegram menggunakan Arduino MKR WiFi 1010
Kebetulan saya mencoba mengakses arduino mkr wifi 1010 ini untuk diintegrasikan dengan telegram. jadi kita akan gunakan telegram bot yang bisa kontrol dan monitoring arduino mkr wifi 1010 ini.
yang dibutuhin untuk projek kontrol led dengan telegram dan arduino mkr 1010 cuma led dan akun telegram aja sih.
oh iya sama library nya.
Library Universal Telegram Bot adalah pilihan terbaik untuk mengakses telgram dengan arduino MKR WiFi 1010
#include <SPI.h> // ---------------------------- // Additional Libraries - each one of these will need to be installed. // ---------------------------- #include <WiFiNINA.h> // Library for using network deatures of the official Arudino // Wifi Boards (MKR WiFi 1010, Nano 33 IOT etc) // Search for "nina" in the Arduino Library Manager // https://github.com/arduino-libraries/WiFiNINA #include <UniversalTelegramBot.h> // Library for connecting to Telegram // Search for "Telegram" in the Arduino Library Manager // Install the "Universal Telegram" one by Brian Lough // https://github.com/witnessmenow/Universal-Arduino-Telegram-Bot #include <ArduinoJson.h> // Library used for parsing Json from the API responses // Search for "Arduino Json" in the Arduino Library manager // https://github.com/bblanchon/ArduinoJson // Wifi network station credentials char ssid[] = "SSID"; // your network SSID (name) char password[] = "password"; // your network password // Telegram BOT Token (Get from Botfather) #define BOT_TOKEN "XXXXXXXXX:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" const unsigned long BOT_MTBS = 1000; // mean time between scan messages int status = WL_IDLE_STATUS; WiFiSSLClient client; UniversalTelegramBot bot(BOT_TOKEN, client); unsigned long bot_lasttime; // last time messages' scan has been done void handleNewMessages(int numNewMessages) { for (int i = 0; i < numNewMessages; i++) { bot.sendMessage(bot.messages[i].chat_id, bot.messages[i].text, ""); } } void printWiFiStatus() { // print the SSID of the network you're attached to: Serial.print("SSID: "); Serial.println(WiFi.SSID()); // print your board's IP address: IPAddress ip = WiFi.localIP(); Serial.print("IP Address: "); Serial.println(ip); // print the received signal strength: long rssi = WiFi.RSSI(); Serial.print("signal strength (RSSI):"); Serial.print(rssi); Serial.println(" dBm"); } void setup() { //Initialize serial and wait for port to open: Serial.begin(9600); while (!Serial) { ; // wait for serial port to connect. Needed for native USB port only } // check for the WiFi module: if (WiFi.status() == WL_NO_MODULE) { Serial.println("Communication with WiFi module failed!"); // don't continue while (true); } String fv = WiFi.firmwareVersion(); if (fv < "1.0.0") { Serial.println("Please upgrade the firmware"); } // attempt to connect to WiFi network: while (status != WL_CONNECTED) { Serial.print("Attempting to connect to SSID: "); Serial.println(ssid); // Connect to WPA/WPA2 network. Change this line if using open or WEP network: status = WiFi.begin(ssid, password); // wait 10 seconds for connection: delay(10000); } Serial.println("Connected to wifi"); printWiFiStatus(); } void loop() { if (millis() - bot_lasttime > BOT_MTBS) { int numNewMessages = bot.getUpdates(bot.last_message_received + 1); while (numNewMessages) { Serial.println("got response"); handleNewMessages(numNewMessages); numNewMessages = bot.getUpdates(bot.last_message_received + 1); } bot_lasttime = millis(); } }
dari program diatas, silahkan masukan token bot nya dan juga data wifi kalian supaya terhubung ke internet.
Sebenernya setelah ini saya mau membahas tentang thingspeak dan thinger IO juga dengan arduino MKR 1010 WiFi, tapi karena saya capek nulisnya, untuk yang dua itu saya tunda dulu ya. kalo artikel ini rame saya akan perbanyak artikel tentang arduino MKR Wifi 1010.
Terimakasih.
Mengatasi kendala Gagal Upload Arduino MKR 1010
Banyak sih kemungkinan penyebab gagal upload program pada arduino yang satu ini, bisa jadi karena kabelnya, karena rusak atau karena harus dalam keadaan lampu orange kedip kedip.
yang saya alami adalah karena program yang saya upload ngebuat si arduino mkr 1010 ini stack, ga memproses apapun, bisa jadi penyebabnya karena koneksi wifi atau sebagainya.
tetep jalan, cuma karena baru dinyalakan langsung stak, arduino mkr 1010 ga bisa upload program lagi.
solusinya, saat pertama dinyalakan tekan dua kali tombol reset sampai led orange samping pin header kedip redup. baru nanti muncul com port baru dan ada tulisan arduino mkr wifi 1010, dan akhirnya arduino nya bisa diprogram lagi.