elektronika

Menggunakan Mode Deep Sleep di ESP32

Pada artikel kali ini saya akan membahas tentang apa itu deep sleep dan bagaimana cara menerapkan deep sleep ini di ESP32 dan bagaimana cara mengaktifkan metode wakeupnya.

ok sebelum kita membahas lebih detil tentang mode deep sleep ini, hal utama yang harus kita pahami terlebih dahulu adalah kira-kira power mode apa saja yang ada di esp32 ini.

berikut ini adalah beberapa jenis-jenis power mode yang disediakan oleh esp32

  • Active mode
  • Modem sleep mode
  • deep sleep mode
  • hibernation mode

berikut ini adalah gambar perbedaan dari power mode esp32 diatas

dan berikut ini adalah perbandingan konsumsi energi dari masing-masing mode di ESP32

Mengapa harus mode deep sleep?

ketika anda membuat sebuah projek menggunakan ESP32.coba anda banyangkan jika projek yang anda buat tadi menggunakan batrei dan dalam kondisi aktif sepanjang hari.otomatis batrei yang anda gunakan akan cepat habis.

source:gadgetstouse.com

kasus diatas bisa dikurangi ketika anda menggunakan mode deep sleep di ESP32.jadi ketika kita menggunakan mode deep sleep maka secara otomatis akan mengurangi konsumsi energi dan membuat bateri menjadi lebih tahan lama.

ketika kita mengaktifkan mode deep sleep ini di ESP32, maka sistem akan bekerja ketika ada trigger saja dan pada kondisi ini CPU dan WIFI tidak melakukan aktifitas apapun, tapi yang aktif adalah sistem ULP(ultra low power).

walaupun kita menggunakan mode deep sleep, tapi memori di RTC akan tetap aktif, sehingga kita tetap bisa menuliskan program pada ULP dan menyimpan di memori RTC.

sehingga program yang ada di memori RTC ini bisa digunakan untuk mengakses peripheral devices, internal timer dan external sensor.

jadi dengan mode ini kita bisa mengaktifkan CPU utamanya ketika ada trigger dari luar atau berdasarkan timer yang sudah di setting sebelumnya sehingga konsumsi powernya bisa diminimalkan.

PIN RTC GPIO

Selama mode deep sleep ini  beberapa pin yang ada di ESP32 bisa digunakan oleh ULP co-processor.berikut ini adalah gambar pin RTC_GPIO yang ada di ESP32.

Mengaktifkan Mode Deep Sleep

setelah kita setting mode deep sleep di esp32, kemudian apa saja yang harus dilakukan untuk mengaktifkanya dari mode deep slep menjadi mode wake up.berikut ini adalah beberapa cara yang bisa dilakukan :

  • Menggunakan Timer, kita bisa mengaktifkan ESP32 ini dengan periode waktu tertentu
  • External wake-up.ekternal wakeup ini bisa dilakukan ketika ada trigger dari luar ( data, sensor,dll)
  • Menggunakan Touch pins
  • Menggunakan ULP co-processor

Cara memprogram dalam kondisi Deep Sleep

untuk menulis sebuah program ketika esp32 dalam kondisi deep sleep ada beberapa hal yang perlu diperhatikan seperti :

  • pertama kita harus menkonfigurasi terlebih dahulu wake-up sourcenya
  • kita juga bisa menentukan device mana saya yang akan di shutdown selama mode deep sleep ini.
  • kita bisa menggunakan fungsi esp_deep_sleep_start() untuk mengaktifkan mode deep sleep

 

 

 

Related Articles

Leave a Reply

Your email address will not be published. Required fields are marked *