ปัจจุบัน Build ล้มเหลวสำหรับบอร์ด Moteinomega เนื่องจากคำจำกัดความพินที่ล้าสมัยใน Platformio ดูปัญหา #199 ในแพลตฟอร์ม/atmelavr
หากต้องการแก้ไขในพื้นที่ให้ไปที่ ~/.platformio/packages/framework-arduino-avr/variants/moteinomega/pins_arduino.h
เพิ่มในบรรทัดนี้ที่บรรทัด #72:
#define digitalPinToInterrupt(p) ((p) == 10? 0: (p) == 11? 1: (p) == 2? 2: NOT_AN_INTERRUPT)
ไม่เกี่ยวกับบล็อกสุดท้ายใน platformio.ini จากนั้นสร้างอีกครั้ง
Kissloratnc เป็นงานที่ได้มาจากรหัสที่เขียนโดย Sandeep Mistry และ Mark Qvist
รหัสนี้ได้รับการพัฒนาโดยใช้ VSCODE และ Platformio
Kissloratnc ได้รับการพัฒนาสำหรับ:
ไฟล์ config.h มี pinouts สำหรับบอร์ดที่ใช้ Arduino ที่แตกต่างกัน pinouts เหล่านี้มีความเฉพาะเจาะจงกับบอร์ดไมโครคอนโทรลเลอร์และการจับคู่อุปกรณ์ LORA ในรายการด้านบน หากคุณตัดสินใจที่จะใช้การจับคู่ที่แตกต่างกันโปรดปรับ config.h ตามนั้น นอกจากนี้โปรดจำไว้ว่าควรปรับเอาต์พุตพลังงานด้วยเนื่องจาก RFM96W มีค่าพลังงานสูงสุด TX ที่ 20DBM Hamshield: Lora Edition 440MHz สามารถตั้งค่าเป็น 30dbm (1 วัตต์)
การตั้งค่า "เริ่มต้น" คือ:
โดยทั่วไปหลังจากตรวจสอบไฟล์ config.h เพื่อความถูกต้องสร้างและอัปโหลดไปยังบอร์ดที่ใช้ Arduino ของคุณ
คำสั่ง KISS Sethardware (0x06) รองรับตัวเลือกติดตาม (PC ถึง TNC):
| ตัวเลือก | ข้อมูล | คำอธิบาย |
|---|---|---|
| 0x22 | uint8_t | ปัจจัยการแพร่กระจายของ Lora (6 - 12) |
| 0x23 | uint8_t | อัตราการเข้ารหัส LORA (5 - 8) |
| 0x24 | uint32_t | แบนด์วิดธ์ Lora (MSB First) |
| 0x25 | uint8_t | ส่งกำลัง (0 - 20 dBm) |
| 0x26 | uint32_t | ความถี่ (MSB ก่อน) |
| 0x27 | ไม่มี | บันทึกพารามิเตอร์ฮาร์ดแวร์ใน EEPROM |
| 0x28 | ไม่มี | กู้คืนพารามิเตอร์ฮาร์ดแวร์จาก EEPROM |
ตัวอย่างต่อไปนี้แสดงให้เห็นว่าแพ็คเก็ต KISS จะเป็นอย่างไร (ใน Hex Bytes):
ในการตั้งค่าปัจจัยการแพร่กระจาย 12: 0xc0 0x06 0x22 0x0c 0xc0
ในการตั้งค่าความถี่ 433.775 MHz: 0xc0 0x06 0x25 0x19 0xda 0xe1 0x98 0xc0
หากต้องการบันทึกพารามิเตอร์ฮาร์ดแวร์ใน EEPROM: 0xC0 0x06 0x27 0xc0
หมายเหตุ: ติดตาม Kiss Byte ที่เหมาะสมหาก Fend (0xc0) หรือ FESC (0xdb) ปรากฏในข้อมูล
ก่อนหน้าเฟรมที่ได้รับแต่ละเฟรม SNR และ RSSI ของเฟรมที่ได้รับจะถูกส่งจาก TNC ไปยังพีซีโดยใช้คำสั่ง Kiss Sethardware (0x06):
| ตัวเลือก | ข้อมูล | คำอธิบาย |
|---|---|---|
| 0x21 | int8_t | SNR (DB) |
| int16_t | RSSI (DBM, MSB ก่อน) |
ตัวอย่างเช่นสำหรับ SNR ของ 10 dB และ RSSI ของ -45 dBM แพ็คเก็ตจะเป็น (ในฐานสิบหกไบต์): 0xc0 0x06 0x21 0x0a 0xff 0xd3 0xc0
สำหรับรายละเอียดเกี่ยวกับโปรโตคอล KISS โปรดดูที่ KISS TNC: โปรโตคอลการสื่อสารโฮสต์กับ TNC แบบง่าย ๆ
แอปพลิเคชันที่มีประโยชน์: