Lapisan MAC perangkat harus dapat dikonfigurasi dari konsol.
Menggantikan https://github.com/TheThingsNetwork/lorawan-stack/issues/1378
CLI sebagai satu-satunya cara untuk mengonfigurasi lapisan MAC perangkat
Dukungan untuk mengonfigurasi semua bidang MACSettings
.
Semua perangkat
rx2_data_rate_index
rx2_frequency
factory_preset_frequencies
Kelas A-spesifik (alias, semua perangkat non-multicast)
rx1_delay
rx1_data_rate_offset
resets_f_cnt
Khusus Kelas B
ping_slot_periodicity
Kelas A-spesifik (alias, semua perangkat non-multicast)
max_duty_cycle
supports_32_bit_f_cnt
use_adr
status_time_periodicity
status_count_periodicity
Khusus Kelas B
ping_slot_data_rate_index
ping_slot_frequency
beacon_frequency
Kelas A-spesifik (alias, semua perangkat non-multicast)
adr_margin
desired_rx1_delay
desired_rx1_data_rate_offset
desired_rx2_data_rate_index
desired_rx2_frequency
desired_max_duty_cycle
desired_adr_ack_limit_exponent
desired_adr_ack_delay_exponent
Khusus Kelas B
class_b_timeout
desired_ping_slot_data_rate_index
desired_ping_slot_frequency
desired_beacon_frequency
Khusus Kelas C
class_c_timeout
CATATAN: Beberapa di antaranya mungkin sudah dapat dikonfigurasi (mis. FCnt stuff), harap perbarui kotak centang yang sesuai dan periksa apakah pengaturan ini ditempatkan di tempat yang benar (yaitu tidak tersedia untuk perangkat multicast)
Saya percaya bahwa pengaturan khusus kelas B dan C harus tersedia untuk semua perangkat, bahkan untuk perangkat yang masing-masing SupportsClass{B,C}
adalah false
. Dengan cara ini pengguna dapat (sementara) menonaktifkan/mengaktifkan operasi kelas B/C kapan pun diperlukan dan mempertahankan pengaturan khusus.
Pengaturan khusus Kelas A seharusnya hanya tersedia untuk perangkat non-multicast.
Tambahkan semua bidang dari MACSettings
https://github.com/TheThingsNetwork/lorawan-stack/blob/74c9da9a9e07a31d7103eabcd3440f9c80c24ea1/api/end_device.proto#L190 -L284 sebagai bidang ke konfigurasi Lapisan Jaringan. Bidang-bidang ini harus dapat dikonfigurasi setiap saat, yaitu saat pembuatan dan pembaruan.
Gunakan komentar dari proto untuk deskripsi.
@bafonins akan menanganinya
Saya sebagian besar selesai dengan bidang prioritas tinggi untuk konfigurasi Pengaturan MAC:
Tangkapan layar
AB:
kelas B:
OTAA:
Namun, untuk menambahkan semuanya dan memungkinkan pengguna untuk mendaftar, misalnya, The Things Uno melalui Konsol, bidang mac_state.factory_preset_frequencies
tidak ada. Saya tidak yakin bagaimana tepatnya ini harus diwakili di UI, saat ini saya memiliki ide-ide ini:
IMO, bidang seperti itu membuat pemilihan frekuensi menjadi sangat mudah. Selain itu, kami dapat menampilkan frekuensi pengguna berdasarkan frequency_plan_id
untuk perangkat akhir. Namun, seperti yang disebutkan @rvolosatovs bahwa input dapat memiliki nilai arbitrer dan tidak selalu bergantung pada rencana frekuensi perangkat akhir.
Selain itu, untuk pendekatan ini akan sangat bagus jika memiliki RPC untuk mengambil preset frekuensi per band.
Pendekatan ini lebih fleksibel, namun membutuhkan lebih banyak waktu bagi pengguna untuk mengatur bidang, membutuhkan frekuensi pengetikan.
Pada dasarnya, kombinasi 1 dan 2.
@rvolosatovs @johanstokking
Saya pikir memiliki daftar (2) paling jelas, karena itu menunjukkan urutannya. Dan urutan itu penting.
Frekuensi memang bisa apa saja, tetapi akan sangat membantu untuk mengambilnya melalui rencana frekuensi yang ada.
Menambahkan compat/api
karena kita mungkin memerlukan NS rpc untuk mendapatkan paket frekuensi.
Saya pikir memiliki daftar (2) paling jelas, karena itu menunjukkan urutannya. Dan urutan itu penting.
Keduanya memilih komponen (1) dan (2) mempertahankan urutannya juga.
Frekuensi memang bisa apa saja,
Dengan (3) nilai frekuensi arbitrer dapat ditambahkan juga
Saya pikir solusi (2) adalah yang terbersih juga, sementara (3) terlihat lebih bagus untuk jumlah frekuensi yang kecil, memiliki beberapa (misalnya 4 atau lebih) akan terlihat berantakan dan sulit untuk dilacak.
Akan sangat bagus jika kami dapat memiliki saran frekuensi untuk (2) di setiap kotak teks (dari RPC rencana frekuensi yang diusulkan), jadi seperti yang Anda lihat di (3), tetapi per kotak teks
Kurang lebih sudah selesai implementasinya, tapi mau nunggu https://github.com/TheThingsNetwork/lorawan-stack/issues/2605 digabung sebelum membuat PR untuk menambahkan tes untuk device wizard (termasuk penanganan pengaturan mac)
Apa statusnya di sini?
@johanstokking https://github.com/TheThingsNetwork/lorawan-stack/pull/3065 siap untuk ditinjau. Saya menambahkan semua bidang prioritas tinggi dan beberapa sedang.
Mengubah tonggak masalah ini tidak ada selanjutnya. Semua bidang prioritas tinggi bersama dengan beberapa bidang prioritas sedang ditambahkan di https://github.com/TheThingsNetwork/lorawan-stack/pull/3065. Akan kembali lagi nanti jika ada bidang lain yang harus ditambahkan ke konsol.