Karena contoh dokumentasi yang tersedia untuk Ubuntu, maka saya menulis contoh instalasi Zephyr 3.0.99 ini untuk Slackware :). Digunakan Slackware 64bit murni dengan Kernel 5.15.38 saat ini. Jika akses internet cepat, waktu instalasi sampai blinky board tidak lebih lama dari order online tahu Gimbal favorit.

CMake dan Python sudah tersedia di Slackware, jadi tinggal kompile dan instal device-tree-compiler. Setelah selesai cek semuanya untuk memastikan. Misal $cmake --version
untuk cek versi cmake. $dtc --version
untuk versi dtc, dan $python3 --version
untuk mengetahui versi python3.
Untuk langkah selanjutnya, sudah sama dengan dokumentasi. Oh ya! Tanda ~/ berarti posisi ada di home direktori. Misal punya saya /home/mic
.
$pip3 install --user -U west
$echo 'export PATH=~/.local/bin:"$PATH"' >> ~/.bashrc
$source ~/.bashrc
Trus lanjut :
$west init ~/zephyrproject
$cd ~/zephyrproject
$west update
$west zephyr-export
Selanjutnya install depedency python3 untuk keperluan zephyr lewat pip.
$pip3 install --user -r ~/zephyrproject/zephyr/scripts/requirements.txt
Masuk kebagian Toolchain. File ini sebesar 1,4GB. Ada beberapa opsi penempatan toolchain ini. Ikuti saran yang diberikan. Saya menempatkan di /home/mic/.local
.
$wget https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.14.1/zephyr-sdk-0.14.1_linux-x86_64.tar.gz
Kemudian untuk cek keutuhan file tersebut
$wget -O - https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.14.1/sha256.sum | shasum --check --ignore-missing
Jika sudah OK alias tidak ada komplain, ekstrak file tersebut.
$tar xvf zephyr-sdk-0.14.1_linux-x86_64.tar.gz
Masuk ke direktori zephyr-sdk-0.14.1
dan jalankan ./setup.sh
$cd zephyr-sdk-0.14.1
$./setup.sh
Kopi file udev rules agar zephyr bisa dijalankan dengan user biasa. Untuk hal ini, gunakan hak akses root untuk mengkopi. Sesuaikan direktori dengan sistem Anda. Punya saya terletak di /home/mic/.local/zephyr-sdk-0.14.1
$su
#cp /home/mic/.local/zephyr-sdk-0.14.1/sysroots/x86_64-pokysdk-linux/usr/share/openocd/contrib/60-openocd.rules /etc/udev/rules.d
Reload udev tanpa perlu restart
#udevadm control --reload
————————————————–
Test minimal!
Untuk cek kompilasi cross compiler, jalankan contoh samples/basic/minimal
. Tujuan utama adalah mengetahui kalau cross compiler jalan di aneka target arsitektur. Ada 10 jenis arsitektur berbeda mulai dari x86, ARM, ARM64, Espressif/Xtensa, NIOS, RISCV, SPARC, POSIX… Mau dicoba semua tidak apa lol.
Contoh test kompile arsitektur Xtensa ESP32 : (jangan lupa $cd
ke zephyrproject/zephyr
)
$west build -p auto -b esp32 samples/basic/minimal

Contoh test kompile target arsitektur ARM – Raspberry Pi Pico$west build -p auto -b rpi_pico samples/basic/minimal

———————
Contoh test kompile target arsitektur ARM – Board WeAct BlackPill STM32F411CE$west build -p auto -b blackpill_f411ce samples/basic/minimal

Contoh test kompile target arsitektur SPARC :$west build -p auto -b generic_leon3 samples/basic/minimal

———————
Test Blinky :
Digunakan WeAct Blackpill F411 favorit :). Ada 2 mode untuk flashing: internal bootloader dfu dan stlink. Contoh dibawah pakai stlink.
$west build -p auto -b blackpill_f411ce samples/basic/blinky

Hasil kompilasi seperti di atas. Sedang dibawah saat flash
$west flash --runner openocd

File script target openocd stm32f4x.cfg sedikit dimodif “adapter speed 1800
” hingga pesan komplain tidak muncul hehe. Saya perlu menekan reset pada board setelah instruksi flashing agar proses flashing bisa dimulai.

Kesimpulan :
Tahu gimbal sudah datang, simpulkan sendiri yach! lol