เป้าหมายหลักของเราคือการสร้างชุมชนที่มีสุขภาพดีและยั่งยืนรอบๆ Flipper ดังนั้นเราจึงเปิดรับแนวคิดและการมีส่วนร่วมใหม่ๆ นอกจากนี้เรายังมีกฎและข้อห้ามบางประการที่นี่ ดังนั้นโปรดอ่านหน้านี้และหลักจรรยาบรรณของเราอย่างละเอียด
สถานที่ที่ดีที่สุดในการค้นหาคำตอบคือเอกสารผู้ใช้ของเรา หากคุณไม่พบคำตอบที่นั่น โปรดตรวจดูเซิร์ฟเวอร์ Discord หรือฟอรัมของเรา หากคุณต้องการสนับสนุนการพัฒนาเฟิร์มแวร์หรือแก้ไขตามความต้องการของคุณเอง คุณสามารถตรวจสอบเอกสารประกอบสำหรับนักพัฒนาของเราได้
หากคุณพบปัญหาและต้องการรายงาน โปรดตรวจสอบหน้าปัญหาของเรา ตรวจสอบให้แน่ใจว่าคำอธิบายมีข้อมูลเกี่ยวกับเวอร์ชันเฟิร์มแวร์ที่คุณใช้ แพลตฟอร์มของคุณ และคำอธิบายที่ชัดเจนเกี่ยวกับขั้นตอนในการทำให้เกิดปัญหาอีกครั้ง
ก่อนที่จะเปิด PR โปรดยืนยันว่าการเปลี่ยนแปลงของคุณจะต้องอยู่ในเฟิร์มแวร์ แนวคิดมากมายสามารถนำมาใช้เป็นแอปพลิเคชันภายนอกได้อย่างง่ายดายและเผยแพร่ใน Flipper Application Catalog หากคุณไม่แน่ใจ โปรดติดต่อเราที่เซิร์ฟเวอร์ Discord หรือหน้าปัญหา แล้วเราจะช่วยคุณค้นหาตำแหน่งที่เหมาะสมสำหรับโค้ดของคุณ
นอกจากนี้ โปรดอ่านคู่มือการสนับสนุนและรูปแบบการเขียนโค้ดของเรา และตรวจสอบให้แน่ใจว่าโค้ดของคุณเข้ากันได้กับ Project License ของเรา
สุดท้าย ให้เปิด Pull Request และตรวจสอบให้แน่ใจว่าสถานะ CI/CD เป็นสีเขียวทั้งหมด
Flipper Zero Firmware เขียนด้วยภาษา C โดยบางส่วนเขียนด้วยภาษา C++ และภาษาแอสเซมบลี armv7m แนะนำให้ใช้ความรู้ C ระดับกลางเพื่อการเขียนโปรแกรมที่สะดวกสบาย ภาษาแอสเซมบลี C, C++ และ armv7m ได้รับการสนับสนุนสำหรับแอปพลิเคชัน Flipper
เฟิร์มแวร์ RoadMap Miro Board
แพลตฟอร์มการพัฒนาที่รองรับ:
ตัวดีบักเกอร์ในวงจรที่รองรับ (เป็นทางเลือก แต่แนะนำอย่างยิ่ง):
Flipper Build System จะดูแลการพึ่งพาอื่นๆ ทั้งหมด
ตรวจสอบให้แน่ใจว่าคุณมีพื้นที่เพียงพอและโคลนซอร์สโค้ด:
git clone --recursive https://github.com/flipperdevices/flipperzero-firmware.git
สร้างเฟิร์มแวร์โดยใช้ Flipper Build Tool:
./fbt
เชื่อมต่อดีบักเกอร์ในวงจรของคุณกับ Flipper และเฟิร์มแวร์แฟลชโดยใช้ Flipper Build Tool:
./fbt flash
ตรวจสอบให้แน่ใจว่า Flipper ของคุณเปิดอยู่ และเฟิร์มแวร์ของคุณกำลังทำงาน เชื่อมต่อ Flipper ของคุณด้วยสาย USB และเฟิร์มแวร์แฟลชโดยใช้ Flipper Build Tool:
./fbt flash_usb
applications
- แอปพลิเคชันและบริการที่ใช้ในเฟิร์มแวร์applications_users
- สถานที่สำหรับแอปพลิเคชันและบริการเพิ่มเติมของคุณassets
- สินทรัพย์ที่ใช้โดยแอปพลิเคชันและบริการdocumentation
- การกำหนดค่าระบบการสร้างเอกสารและไฟล์อินพุตfuri
- Furi Core: พื้นฐานและตัวช่วยระดับ OSlib
- ไลบรารี ไดรเวอร์ เครื่องมือ และอื่นๆ ของเราและบุคคลที่สามsite_scons
- สร้างการกำหนดค่าระบบและโมดูลscripts
- สคริปต์เสริมและไลบรารีหลามต่างๆtargets
- เป้าหมายเฟิร์มแวร์: รหัสเฉพาะแพลตฟอร์ม นอกจากนี้ โปรดดูไฟล์ ReadMe.md
ภายในไดเร็กทอรีเหล่านั้นเพื่อดูรายละเอียดเพิ่มเติม