
flipperzero-firmware v1.5.0-rc
Codice sorgente del firmware Flipper Zero
Flipper Zero Firmware
- Sito ufficiale di Flipper Zero - Un modo semplice per spiegare ai tuoi amici cosa può fare Flipper Zero.
- Aggiornamento del firmware di Flipper Zero - Miglioramenti per il tuo delfino: ultime versioni del firmware, strumenti di aggiornamento per PC e dispositivi mobili.
- Documentazione utente - Scopri di più sul tuo delfino: specifiche, guide all'uso e tutto ciò che vuoi chiedere.
- Documentazione sviluppatore - Immergiti nel codice sorgente del firmware di Flipper Zero: sistema di build, struttura del firmware e altro.
Contributi
Il nostro obiettivo principale è costruire una comunità sana e sostenibile attorno a Flipper, quindi siamo aperti a nuove idee e contributi. Abbiamo anche alcune regole e tabù qui, quindi per favore leggi attentamente questa pagina e il nostro Codice di condotta.
Ho bisogno di aiuto
Il posto migliore per cercare risposte è la nostra Documentazione utente. Se non trovi la risposta lì, controlla il nostro server Discord. Se vuoi contribuire allo sviluppo del firmware o modificarlo per le tue esigenze, puoi anche consultare la nostra Documentazione sviluppatore.
Voglio segnalare un problema
Se hai trovato un problema e vuoi segnalarlo, controlla la nostra pagina Issues. Assicurati che la descrizione contenga informazioni sulla versione del firmware in uso, sulla tua piattaforma e una chiara spiegazione dei passaggi per riprodurre il problema.
Voglio proporre una nuova funzionalità
Se hai una richiesta di funzionalità o vuoi votare per una già esistente, utilizza Discussioni e segui le nostre Linee guida per le discussioni.
Voglio contribuire con del codice
Prima di aprire una PR, conferma che le tue modifiche debbano essere contenute nel firmware. Molte idee possono essere facilmente implementate come applicazioni esterne e pubblicate nel Catalogo applicazioni Flipper. Se non sei sicuro, contattaci sul server Discord o sulla pagina Issues, e ti aiuteremo a trovare il posto giusto per il tuo codice.
Inoltre, leggi la nostra Guida ai contributi e il nostro Stile di codifica, e assicurati che il tuo codice sia compatibile con la nostra Licenza di progetto.
Infine, apri una Pull Request e assicurati che gli stati CI/CD siano tutti verdi.
Sviluppo
Il firmware di Flipper Zero è scritto in C, con alcune parti scritte in C++ e linguaggio assembly armv7m. Si consiglia un livello intermedio di conoscenza del C per programmare comodamente. I linguaggi C, C++ e assembly armv7m sono supportati per le applicazioni Flipper.
Requisiti
Piattaforme di sviluppo supportate:
- Windows 10+ with PowerShell and Git (x86_64)
- macOS 12+ with Command Line tools (x86_64, arm64)
- Ubuntu 20.04+ with build-essential and Git (x86_64)
Debugger in-circuit supportati (opzionali ma altamente raccomandati):
- Flipper Zero Wi-Fi Development Board
- Compatibile CMSIS-DAP: sonda di debug Raspberry Pi, ecc.
- ST-Link (v2, v3, v3mods)
- J-Link
Il sistema di build di Flipper si occuperà di tutte le altre dipendenze.
Clonazione del codice sorgente
Assicurati di avere spazio sufficiente e clona il codice sorgente:
git clone --recursive https://github.com/flipperdevices/flipperzero-firmware.git
Compilazione
Compila il firmware utilizzando Flipper Build Tool:
./fbt
Flash del firmware tramite debugger in-circuit
Collega il tuo debugger in-circuit al tuo Flipper ed esegui il flash del firmware utilizzando Flipper Build Tool:
./fbt flash
Flash del firmware tramite USB
Assicurati che il tuo Flipper sia acceso e che il firmware funzioni. Collega il tuo Flipper con un cavo USB ed esegui il flash del firmware utilizzando Flipper Build Tool:
./fbt flash_usb
Documentazione
- Flipper Build Tool - compilazione, flashing e debug del software Flipper
- Applicazioni, Manifesto delle applicazioni - sviluppo, compilazione, distribuzione e debug delle applicazioni Flipper
- Combinazioni hardware e ripristino da brick - recuperare il tuo Flipper dalle situazioni più critiche
- Formati dei file Flipper - tutto su come Flipper memorizza i tuoi dati e come puoi lavorarci
- Telecomandi universali - contribuisci con il tuo telecomando a infrarossi al database dei telecomandi universali
- E molto altro nella Documentazione sviluppatore
Struttura del progetto
applications- Applicazioni e servizi usati nel firmwareapplications_users- Spazio per le tue applicazioni e servizi aggiuntiviassets- Risorse usate da applicazioni e servizidocumentation- Configurazioni del sistema di generazione documentazione e file di inputfuri- Furi Core: primitive e helper a livello di sistema operativolib- Librerie nostre e di terze parti, driver, strumenti e così via...site_scons- Configurazione e moduli del sistema di buildscripts- Script supplementari e varie librerie Pythontargets- Target del firmware: codice specifico della piattaforma
Inoltre, consulta i file ReadMe.md all'interno di queste directory per ulteriori dettagli.
Collegamenti
- Discord: flipp.dev/discord
- Reddit: reddit.com/r/flipperzero
- Sito web: flipper.net
- Kickstarter: kickstarter.com
Strumenti SAST
- PVS-Studio - analizzatore statico per codice C, C++, C# e Java.