Zephyr® Project di Slackware 15

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

Kompilasi sukses!

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

Kompilasi berhasil!

———————

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

Kompilasi sukses! Tinggal cek blinky…

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

Kompilasi sukses!

———————


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.

WeAct Blackpill STM32F411CE

Kesimpulan :

Tahu gimbal sudah datang, simpulkan sendiri yach! lol

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout /  Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout /  Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout /  Ubah )

Connecting to %s