Skip to content
Tutorial emka
Menu
  • Home
  • Debian Linux
  • Ubuntu Linux
  • Red Hat Linux
Menu

Cara Membuat OTA Update (Over The Air Update) di Raspberry Pi W

Posted on March 13, 2024

Pada tutorial kali ini kita akan mengimplementasikan bootloader untuk Raspberry Pi Pico W yang memungkinkan pengunggahan kode program melalui WiFi (“Over The Air”). Cara paling mudah untuk menggunakannya adalah dengan menyertakan repositori ini sebagai submodule dalam aplikasi yang ingin kita dapatkan pembaruan melalui WiFi.

Contoh proyek menggunakan picowota dapat ditemukan di https://github.com/usedbytes/picowota_blink

Cara termudah untuk membangun picowota itu sendiri adalah:

mkdir build

cd build

export PICOWOTA_WIFI_SSID=picowota

export PICOWOTA_WIFI_PASS=password

export PICOWOTA_WIFI_AP=1

cmake -DPICO_BOARD=pico_w -DPICO_SDK_PATH=/path/ke/pico-sdk ../

make

Uji coba library PicoWOTA

Pertama, tambahkan picowota sebagai submodule ke proyek kita:

git submodule add https://github.com/usedbytes/picowota

git submodule update –init picowota

git commit -m “Tambahkan submodule picowota”

Kemudian, modifikasi CMakeLists.txt proyek kita untuk menyertakan direktori picowota:

add_subdirectory(picowota)

picowota dapat terhubung ke jaringan WiFi yang ada (secara default) atau membuat satu, dalam kedua kasus dengan SSID dan kata sandi yang diberikan.

kita dapat menyediakan informasi berikut sebagai variabel lingkungan atau mengaturnya sebagai variabel CMake:

PICOWOTA_WIFI_SSID # SSID jaringan WiFi

PICOWOTA_WIFI_PASS # Kata sandi jaringan WiFi

PICOWOTA_WIFI_AP # Opsional; 0 = terhubung ke jaringan, 1 = membuatnya sendiri

Selanjutnya, kita dapat membangun binary aplikasi mandiri (cocok untuk pembaruan melalui picowota ketika sudah ada di Pico) atau binary gabungan yang berisi bootloader dan aplikasi (cocok untuk flashing pertama kali):

picowota_build_stkitalone(nama_executable_kita)

picowota_build_combined(nama_executable_kita)

Mengunggah Kode Melalui picowota

Setelah picowota bootloader terinstal di Pico kita, kita dapat menggunakan alat https://github.com/usedbytes/serial-flash untuk mengunggah kode ke dalamnya.

Selama Pico berada dalam bootloader picowota (yaitu karena tidak ada kode aplikasi yang valid terunggah, atau aplikasi kita memanggil picowota_reboot(true);), kita dapat mengunggah file .elf aplikasi yang dibangun oleh picowota_build_stkitalone():

serial-flash tcp:192.168.1.123:4242 nama_executable_kita.elf

Setelah mengunggah kode, jika berhasil, Pico akan melompat ke aplikasi yang baru diunggah.

Cara Kerjanya

Ini berasal dari bootloader Pico non-W saya, https://github.com/usedbytes/rp2040-serial-bootloader, yang saya tulis dalam sebuah blog post: https://blog.usedbytes.com/2021/12/pico-serial-bootloader/

Kode bootloader berusaha menghindari “brick” dengan menyimpan CRC dari kode aplikasi yang diunggah. Jika CRC tidak cocok, maka aplikasi tidak akan dijalankan dan Pico akan tetap berada dalam mode bootloader picowota. Ini seharusnya membuatnya cukup kuat terhadap kesalahan dalam transfer, dll.

Recent Posts

  •  How to Fix ‘docs.google.com Refused to Connect’ Error in Windows 10/11
  • Aerynos Feb 2026 Update: Faster Desktops and Moss Performance Boost
  • Pangolin 1.16 Adds SSH Auth Daemon: What You Need to Know
  •  How to Fix Windows Audio Endpoint Builder Service Not Starting Errors
  • What’s New in elementary OS 8.1.1 with Linux Kernel 6.17?
  • Microsoft Tests AI Feature to Monitor Open Apps on Windows 11 Taskbar
  • Is Google Chrome Secretly Downloading AI Models? Everything You Need to Know
  • Shotcut 2.6.2 Fixes Timeline & HEVC Crashes: What You Need to Know
  • Hyprland Desktop 0.54 Released: Adds Per-Workspace Layouts
  • What’s New in Grafana 12.4: Dynamic Dashboards and Enhanced Observability
  • What are the Microsoft Outlook Steam Account Ads? Here is a Breakdown of the Policy Violation
  • Open Source Endowment Launches to Support FLOSS Infrastructure
  • What is Microsoft Teams Wi-Fi Tracking? This is the Privacy Issue You Should Know
  • Windows Server Finally Supports Boot REFs After 14 Years
  • LXD 6.7 Released: Powerful Container and VM Manager Upgrades
  • Ubuntu 26.04 LTS Snapshot 4 Release Notes and Download Guide
  • What’s New in Calibre 9.4? A Deep Dive into the Latest E-Book Progress Tracking Features
  •  How to Fix Clipchamp No Internet Connection Error on Windows
  • Why Are Sudo Password Asterisks Missing in Ubuntu 26.04?
  • Omarchy Linux 3.4 Released: Arch-Based OS with New Features Explained
  • OnlyOffice Docs 9.3 Adds Multipage View and PDF Signatures
  • LibreOffice 26.2.1 Released with 70+ Bug Fixes and Improvements
  • fwupd 2.0.20 Released: Simplified Firmware Updates for Linux Users
  • What is GStreamer 1.28.1? A Deep Dive into the Latest Stability and Security Update
  • Typhoon Weather App Gets Qt6 Upgrade: What’s New?
  • Inilah Cara Mengenali Aplikasi Bodong Penghasil Uang Agar Kalian Nggak Jadi Korban Penipuan Digital
  • Apa itu Error Kode LADK3 saat Buka Rekening Brimo? Dan Solusinya!
  • BOHONG??? Inilah Rincian Anggaran Makan Bergizi Gratis, Ternyata Uang Bahan Makanannya Nggak Sampai Rp15.000!
  • Inilah Tugas Proktor Ujian TKA SD/SMP 2026, Baca Dulu Ada Yang Beda!
  • Tips Pajak Coretax: Inilah Cara Memastikan Lembaga Amil Zakat yang Sah Agar Pajak Kalian Berkurang!
  • Prompt AI Menyusun Script Pola Suara Karakter agar Brand Jadi Ikonik
  • Prompt AI untuk Merancang Karakter Brand yang Ikonik
  • Prompt AI Audit Konten Sesuai Karakter Brand
  • Prompt AI Merubah Postingan LinkedIn Jadi Ladang Diskusi dengan ChatGPT
  • Prompt AI: Paksa Algoritma LinkedIn Promosikan Konten Kalian
  • Apa itu Spear-Phishing via npm? Ini Pengertian dan Cara Kerjanya yang Makin Licin
  • Apa Itu Predator Spyware? Ini Pengertian dan Kontroversi Penghapusan Sanksinya
  • Mengenal Apa itu TONESHELL: Backdoor Berbahaya dari Kelompok Mustang Panda
  • Siapa itu Kelompok Hacker Silver Fox?
  • Apa itu CVE-2025-52691 SmarterMail? Celah Keamanan Paling Berbahaya Tahun 2025
©2026 Tutorial emka | Design: Newspaperly WordPress Theme