Skip to main content

Membaca sensor eksternal (BMP 280 & BMP 180)


Section 1

Selamat berjumpa kembali teman-teman, kali ini kita akan mencoba membaca sensor eksternal dengan menggunakan mikrokontroller ESP-32. Sensor yang akan kita baca adalah sensor BMP 280 dan 180, kedua sensor tersebut sama-sama mengukur tekanan tekanan dan suhu udara, dipasaran bisa kita dapat membeli dengan harga delapan ribu sampai dua puluh ribu.

Beberapakali pengalaman saya saat membaca sensor dengan mikrokontroler tidak selalu menyenangkan, bahkan lebih sering kita harus belajar dan belajar lagi. Namun tidak mengapa teman-teman, yah demi mencapai kuota pengalaman 10.000 jam terbang seperti kata Pak Sony. Bahkan sampai saat ini, ketika kita bersama-sama membuat beberapa platform IoT, tetap saja mendebarkan menunggu pembacaan sensor. Karena bagaimanapun sensing adalah terkait keterbacaan sensor, ketika sensor sudah terbaca metode yang lain-lainnya dapat kita sesuaikan.

Berkaca dari hal tersebut, saya mencoba berbagi, apa sih yang harusnya pertama kali dilakukan untuk membaca sensor eksternal dengan ESP 32?. Sepertinya pepatah "Tak kenal maka tak sayang" tetap relevan untuk masalah ini, dimana kita harus mengenal sensor yang akan kita gunakan. Setelah kita kenal, dimana address-nya, protokol komunikasinya seperti apa, maksimal tegangannya berapa, baru kita mencoba untuk menjalin hubungan. Nah, agar kenal kami sertakan dalam tabel berikut, datasheet untuk mengenal lebih dekat dengan dua sensor yang akan kita gunakan dalam percobaan ini.

Nama  Datasheet Nama Arduino IDE Library
BMP - 280 BST-BMP280-DS001-11.pdf Adafruit_BMP280
BMP-180
BST-BMP180-DS000-09.pdf Adafruit_BMP085

Pengalaman saya membaca BMP 280, cukup menguras logika teman-teman, pertama saya sudah tahu alamatnya di 0x76 cuman ketika sudah dipasang, skemanya sudah benar tetap saja di serial monitor disebutkan bahwa sensor saya tidak ditemukan. Sampai beberapa kali mencoba saran dari berbagai forum tetap saja belum bisa terbaca. Setelah sekian lama mencari, ternyata masalahnya adalah library yang saya gunakan adalah tipe BME-280, sementara yang saya miliki adalah BMP-280 dengan 6 pin.

Menurut saya, pertama kali yang harus kita ketahui adalah jenis protokol komunikasi yang akan digunakan, misalnya I2C, SPI atau UART, dari protokol ini kita bisa menerka kira-kira skema rangkaiannya seperti apa. Kemudian layaknya sebuah komunikasi, setiap entitas yang berkomunikasi memiliki sebuah alamat (address). Setelah kita ketahui address-nya, kemudian kita memilih tools yang tepat untuk menerjemahkan komunikasi kita yaitu sebuah driver, nah kumpulan driver dan tools yang akan kita gunakan dalam berkomunikasi di Arduino IDE disimpan dalam Library

 Me


Section 2