IoT-mengaktifkan kotak surat rubbermaid kuno Anda dengan ESP32, Lora Radio, dan Sensor Penutupan Kontak.
Kotak surat saya tidak sedekat itu, dan saya ingin cara untuk melihat kapan itu dibuka. Proyek ini menggunakan sensor ESP32 dengan kontak untuk mendeteksi ketika pintu kotak surat terbuka/ ditutup, radio Lora untuk mengirim ledakan JSON cepat, dan kemudian tidur nyenyak sampai pintu terbuka lagi.
Anda akan membutuhkan penerima untuk mengambil pesan dan melakukan sesuatu dengannya di ujung. Saya akan menautkan milik saya di sini setelah selesai.
Ini sangat meminjam logika keadaan pintu dari proyek ESP32_Mailbox Acbrandao, dengan beberapa perbaikan untuk mendeteksi kondisi pintu macet.
Itu hanya membutuhkan beberapa hal:
PlatformIO + VScode akan menangani semua dependensi perpustakaan Anda sehingga Anda harus hanya membangun.
Anda mungkin perlu menginstal driver CP210X sehingga komputer Anda mengenali chipset pada ESP32.
Secara opsional Anda dapat mengubah pengaturan ini agar sesuai dengan kebutuhan Anda:
#define IS_DEBUG false // enable Serial.println statements
...
#define SYNCWORD 0xF3 // used to make sure our receiver only listens to our packets
...
// Mailbox config
#define PROJECT_NAME "rad-esp32-lora-sender" // What do we call this thing?
#define LED_ENABLED true // Turn on the on-board LED when transmitting status
#define MAX_OPENDOOR_TIME 30000 // default 30s in milliseconds how long to wait while door is open to consider it stuck open
#define MAX_STUCK_BOOT_COUNT 5 // If the door is stuck for more than x times let's switch to timer interrupt to save battery
#define TIMER_SLEEP_MICROSECS 1800 * 1000000 // when on timer interrupt how long to sleep in seconds * microseconds
// Define the contact closure input pin and initial state (Depends on your sensor - N/C or N/O )
gpio_num_t doorSensorPIN = GPIO_NUM_34; // GPIO for the contact closure
const int GPIO_DOOR_CLOSED_STATE = HIGH; // Default state when the reed and magnet are next to each other
Simpan, Bangun, dan sebarkan. ?
Saya suka PR :)
Proyek ini dilisensikan di bawah lisensi MIT - lihat file lisensi.md untuk detailnya