Some things Flipper Zero-related I've been working on (mostly standalone plugins and applications)
Under the /applications
folder there's a (small) collection of different apps:
MultiConverter
, a multi-unit converter written with an easy and expandable system for adding new units and conversion methods (it has it's own README file with more info)Dec/Hex Converter
, a decimal to hexadecimal (and vice versa) converter with "real-time" conversion and built-in keyboard (some pics here!). Updates on this one will be probably stopped since the MultiConverter covers this scenario (and lots more with more units!)Conway's Game of Life
, simple implementation on a full-screen 32 x 16 cell grid (video and pics here!)
Each app can be added as a plugin on a regular flipperzero firmware source:
- Copy the plugin folder (ex:
/applications/game_of_life
) to the main/applications
one - Modify the
/applications/meta/application.fam
main manifest and add the plugin entry in the proper section:
App(
appid="basic_plugins",
name="Basic applications for plug-in menu",
apptype=FlipperAppType.METAPACKAGE,
provides=[
"music_player",
"snake_game",
"bt_hid",
"game_of_life", // <<--- here's the new definition (use the appid from the app application.fam manifest)
],
)
- Compile the firmware and install
I usually use a standard updater_package build that creates an executable file I can push to my Flipper and run it as a new update:
$ ./fbt --with-updater COMPACT=1 DEBUG=0 VERBOSE=1 updater_package
(this requires all the proper dependencies, check the docs from the official repo for more info!)
- The
order
option on theapplication.fam
for each app sets the priority order on the menu list - Nope, currently it's not possible to "install apps" without reflashing the entire firmware with everything inside :(
- My idea is to keep everything here up-to-date with the new firmware releases, so let me know if something doesn't work or anything related!
- To work on a full flipperzero source folder while having my stuff in my own repo I like to create symlinks to the folders inside the
/applications
main dir:
~/flipper_zero/flipperzero-firmware/applications$ ln -s ~/flipper_zero/flipperzero_stuff/applications/dec_hex_converter/ dec_hex_converter
~/flipper_zero/flipperzero-firmware/applications$ ln -s ~/flipper_zero/flipperzero_stuff/applications/game_of_life/ game_of_life
and so on...
- Official firmware
- Hello World Tutorial, I used this one as the starting point for my firsts projects. It may be a little bit outdated, but combined with any other "current" app (like the Snake minigame) it should be more than enough to start tinkering with the system.