* Core, API: add externs for c++
* Makefile: improve debug speed, flash with openocd, cleanup f2 config
* Power: add cli diagnostic.
* Local: fix api hal externs
* Local: fix externs in main and flipper_hal
* F2: power state dump stabs
* Bootloader flashing with openocd
* F3: move bq drivers to libs
* temporary do not build drivers on local
* temporary do not build drivers on f2
Co-authored-by: aanper <mail@s3f.ru>
* variable cluster size, label info functions for targets
* app record
* init, mount, get label, get sn, get space
* enable exfat
* more stack for the stack god
* remove c app and add cpp app
* remove MULTI_PARTITION
* fix 4gb bug
* update app to new template lib, add animated waiting
* tiny buffer configuration
* write speed benchmark
* fnv1a hash library
* make DEFAULT_STACK_SIZE and MAX_TASK_COUNT defined per target
* fully functional sd card app
* build sd test app to release firmware
* cpp, not c
* light up red led if error
* flags for c++
* linking with g++
* suppres snprintf warning
* move format work area to heap
Co-authored-by: coreglitch <mail@s3f.ru>
* initial gpio layer
* move temlplate.c to template.c.example in preparing to applications.mk rework
* separate arduino layer
* separate flipper_hal.x
* prepare to switch applications on v2 core gpio api
* swithch applications to v2 gpio api
* gpio api for local target
* better gpio_disable handling
* remove pwm functions from local target
* inline gpio funcs
* common function to init all api's
* fix local example blink
* move delay us to hal api folder
* move pwm_set/pwm_stop to hal api folder
* update applications to use hal pwm api
* remove gpio mode case warning
* add speaker demo to build
Co-authored-by: DrZlo13 <who.just.the.doctor@gmail.com>
* fixed inline functions for modern C standart
* more stack for application
* added library
* init fatfs library
* fatfs example application
* Merge with current master
* fix typo and delete old files
* cmsis os 2 reentrance fix
* Reworked dependency wait to support multiple dependency
* Build FatFS on local target, syscall.c is target-specific.
* run local target ok
* testcase for fatfs
Co-authored-by: aanper <mail@s3f.ru>
* Lib: move cube to libs. Firmware: prepare for code base refactoring, detach from cube, port to cmsis_os2.
* Firmware, target f2: regenerate project with latest cube package, tim17 for os ticks.
* Firmware: unified codebase.
* Core: do not include semaphore on old targets. Firmware: dfu uplaod target.
* CI: submodules, add firmware build.
* CI: proper submodule config.
* refactor build system
* CI: update chain to use new targets. Documentation: update to match current structure.
* CI: clean before rebuild.
* Add local test
docker-compose exec dev make -C firmware TARGET=local TEST=1 run
* Makefile: target specific build directory. CI: updated artifacts path.
* Makefile: init git submodules if they don't exists.
* Makefile: debug rule now doesn't reset MCU, prevent SIGINT propagation to st-util.
* Makefile: proper rebuild sequence in zz and zzz
* Makefile: timestamp tracking for flash and upload commands.
* Apps: modular build. Input: fix flipper hal inline.
* Wiki: proper bootloader link.
* Applications: fix broken build for local targets.
* add st-flash to docker
* fix build
* force rebuild app
* move app force to firmware part
* fix build deps
* qrcode build ok
* fix example display
* add testing routine
* update build instruction
Co-authored-by: Aleksandr Kutuzov <aku@plooks.com>
Co-authored-by: aanper <mail@s3f.ru>