Commit Graph
100 Commits
Author SHA1 Message Date
Aleksandr Kutuzov 1d5ca45675 Merge remote-tracking branch 'origin/dev' into release-candidate 2022-02-01 10:44:21 +03:00
あく 3cdb59805e Desktop: fix crash caused by unconsumed back button short press (#974) 2022-01-30 19:45:08 +03:00
Aleksandr Kutuzov 983537996c Merge branch 'dev' into release-candidate 2022-01-29 14:40:14 +03:00
あく 2b2a798407 Pre-RC Bug Fixes and Gui lockdown mode. (#973)
* Rfid: fix incorrect StringElement parameters
* Gui, Desktop: add lockdown mode, integrate with desktop.
* Gui: fix runglish in doxy
2022-01-29 14:20:55 +03:00
あく e804015fea [FL-2225] About: add serial number to hardware info screen (#970) 2022-01-27 15:21:21 +03:00
Aleksandr Kutuzov 830daa8b51 Merge branch 'dev' into release-candidate 2022-01-16 18:43:41 +03:00
Aleksandr Kutuzov 543402f64a Merge branch 'dev' into release-candidate 2022-01-14 17:10:12 +03:00
Aleksandr Kutuzov 24e7bda854 Merge branch 'dev' into release-candidate 2022-01-14 14:08:42 +03:00
あく 389ff92cc1 Naming and coding style convention, new linter tool. (#945)
* Makefile, Scripts: new linter
* About: remove ID from IC
* Firmware: remove double define for DIVC/DIVR
* Scripts: check folder names too. Docker: replace syntax check with make lint.
* Reformat Sources and Migrate to new file naming convention
* Docker: symlink clang-format-12 to clang-format
* Add coding style guide
2022-01-05 19:10:18 +03:00
あく 5252b207c8 SubGhz: replace incorrect frequency value (#933) 2021-12-26 18:31:48 +03:00
Aleksandr Kutuzov bb650c4e87 Merge branch 'dev' into release-candidate 2021-12-24 18:01:54 +03:00
あく 7cea359be8 Storage: lfs config fingerprinting. RTC: fix data collision in lock register, refactor and cleanup. (#928) 2021-12-24 17:33:58 +03:00
あく 79e0aed1e6 Scripts: update ob.data to match current radio stack (#927) 2021-12-24 14:19:46 +03:00
Aleksandr Kutuzov 208ea6fbb0 Merge branch 'dev' into release-candidate 2021-12-23 21:17:20 +03:00
あく 0c7a38b99f [FL-2156] Switch to smaller radio stack. (#923)
* Switch to smaller radio stack. BleGlue: update params to match new stack. Update scripts
* Git: set eol to lf
2021-12-23 19:24:09 +03:00
あく 439fb9c18d [FL-1910, FL-2146] Update to new FreeRTOS, fix CMSIS thread flags collision with stream buffer. New cube. (#917)
* Libs: add FreeRTOS submodule. FuriHal: replace ST provided FreeRTOS with original one. FuriHal: for cmsis os hal and patch it for better compatibility with stream buffer.
* Makefile: fix svd plugin on blackmagic
* Lib: update STM32CubeWB package. Project: update project to match new cube package.
* Lib: properly rebase and upload STM32CubeWB
* BleGlue: switch ack logging level to trace
2021-12-21 15:16:25 +03:00
Aleksandr Kutuzov 2ee2e8f4ba Merge branch 'dev' into release-candidate 2021-12-17 16:41:21 +03:00
あく e109e2e3e8 Debug: remove lxml dependency, pickle SVD tree for faster processing. (#909)
* Debug: remove lxml dependency, pickle SVD tree for faster processing.
* Debug: remove unused import in svd.py
2021-12-17 04:28:51 +03:00
あく 63642617ee Hide debug tools if debug is not enabled. Application: update debug tools code base. SubGhz: log duty cycle. (#903)
* Application: clean debug_tools code base.
* SubGhz: add duty cycle logging.
* Application: hide debug tools if not enabled. Gui: move icon_animation allocation to menu module.
2021-12-15 15:23:16 +03:00
あく 6579368053 [FL-1818] System setting and debug options. RTC HAL refactoring. (#902)
* FuriHal: RTC API refactoring. System Setting application. FuriCore: adjustable log levels. Minor code cleanup.
* Storage: change logging levels for internal storage.
* FuriCore: fix broken trace logging level
2021-12-15 01:39:59 +03:00
Aleksandr Kutuzov 5a0f7e20ba Merge remote-tracking branch 'origin/dev' into release-candidate 2021-12-12 14:33:17 +03:00
Aleksandr Kutuzov cf6a1a7301 Merge branch 'dev' into release-candidate 2021-12-09 14:06:47 +03:00
あく f5b2ed67d5 Github: fix non zero return behavior in docker actions. Firmware: fix F6 build. (#886)
* Github: treat non 0 exit code as fatal
* GitHub: inject missing -e flag to bash in docker
* Firmware: sync targets
2021-12-09 07:58:07 +03:00
Aleksandr Kutuzov 3a70d3b7f6 Merge branch 'dev' into release-candidate 2021-12-08 18:03:54 +03:00
あく bb96509ed1 FuriHal: temporary switch to hal ticks for timeouts. (#880) 2021-12-08 06:27:16 +03:00
あく 98bc190ac4 Hackathone session: bugfixes and documentation update (#869)
* ReadMe: update flashing scripts section
* Furi: add record exists method to record store.
* FuriHal: early OS init and i2c timeouts based on os ticks.
* Storage: replace malloc with furi_alloc, fix errors found by pvs.
* iButton: properly handle shutdown in cli search command
* SubGhz: proper argument type in sscanf and incorrect position of logging in switch.
2021-12-05 14:47:02 +03:00
あく 0b0629e6fe Cli: add I2C scanning command (#860)
* Cli: add I2C scanning command

* Cli: proper scanning limits in i2c command

* Cli: better output readability on i2c scan
2021-12-02 02:21:57 +03:00
あく 41b5d5f5c9 Gui: fix random crashes under load in icon_animation (#859) 2021-12-02 01:13:21 +03:00
あくandSG 418c0939a0 Guard RCC registers access with critical section (#854)
* Core: critical section macros. FuriHal: guard rcc registers access with critical section, fix condition race.
* FuriHal: update documentation.

Co-authored-by: SG <who.just.the.doctor@gmail.com>
2021-12-01 01:07:17 +03:00
あく 9d27ef8901 [FL-2060] FuriHal: SPI refactoring, flexible bus reconfiguration on fly, same design as i2c. (#853)
* FuriHal: SPI refactoring, flexible bus reconfigration on fly, same desiag as i2c.
* Lib: update CC1101 driver documentation
* FuriHal: update spi symbol names to match naming convention.
2021-11-30 15:09:43 +03:00
あく cf591ef7eb [FL-1911] FuriHal: i2c refactoring (#847)
* Project: fix release build, replace asserts with checks.
* FuriHal: i2c refactoring, new bus access model, flexible bus gpio configuration.
* FuriHal: set i2c pins to high on detach.
* FuriHal: more i2c bus events, put bus under reset when not used, move bus enable/disable routine to bus handler.
* FuriHal: fix i2c deadlock in power api, add external i2c handle.
2021-11-28 21:28:19 +03:00
Aleksandr Kutuzov b0b20392a5 Merge remote-tracking branch 'origin/dev' into release-candidate 2021-11-26 17:20:35 +03:00
あく 2db5eee03b Gui: define status bar workarea, remove unused icon. (#841)
* Gui: define status bar workarea, remove unused icon.

* Format Sources
2021-11-24 21:19:34 +03:00
あく 01f08f99b1 Scripts: add serial number support to cube programmer api, update usage. (#839) 2021-11-23 19:13:34 +03:00
Aleksandr Kutuzov a5fa342ffa Merge remote-tracking branch 'origin/dev' into release-candidate 2021-11-21 18:22:17 +03:00
あく 22e8da7108 SubGhz: remove debug log (#825) 2021-11-16 21:52:49 +03:00
あく 65e6ab5b8b [FL-2017] Gui: correct empty folder handling in file_select. #824 2021-11-16 17:10:06 +03:00
あくandSG b3d8f0b950 [FL-2038] Power off and auto power off on first start screen (#821)
* Power: change power_off signature to match implementation

* Desktop: auto power off on first start screen and with ok button.

Co-authored-by: SG <who.just.the.doctor@gmail.com>
2021-11-16 03:12:30 +03:00
あく 516a437305 Storage: move factory reset to the place it belongs, add gui version. (#822) 2021-11-16 03:04:33 +03:00
Aleksandr Kutuzov be02738c4a Merge remote-tracking branch 'origin/dev' into release-candidate 2021-11-15 23:38:06 +03:00
あく 7f814b5197 FuriHal: fix LPUART crash (#820) 2021-11-15 23:36:57 +03:00
あく 1571d4ec54 Project: enum cast fix. Makefile: blackmagic rule in global makefile (#819) 2021-11-15 22:55:25 +03:00
あく 2e46ec36a7 Lib: update m-lib to latest release. Update m-lib usage across project. (#818) 2021-11-15 20:09:40 +03:00
Aleksandr Kutuzov dad1b0622b Merge branch 'dev' into release-candidate 2021-11-14 18:31:48 +03:00
あく b2356c7318 BleGlue: reorder initialization sequence, move core2 start to early stage. (#816) 2021-11-13 05:41:54 +03:00
あく 70d0519178 Subghz: fix crash on arg free (#815) 2021-11-12 18:45:51 +03:00
あく 5209701add [FL-1991] Rewrite flash driver (#813)
* Toolbox: fix null pointer dereference in manchester decoder.
* FuriHal: use MPU to protect from null pointer dereference, replace flash driver with our own implementation.
2021-11-10 12:53:00 +03:00
Aleksandr Kutuzov cb227dafd1 Merge branch 'dev' into release-candidate 2021-11-04 22:44:46 +03:00
あく 300302cb7c Fix gpio debug (#802) 2021-11-02 02:49:48 +03:00
あくandDrZlo13 22a4bac448 [FL-1934] Core: wipe memory after free. SubGhz: key encryption tool. (#797)
* Core: wipe memory after free. RFID,iButton: fix iterator use after invalidation.

* Debug: support unix wildcards for register matching in svd, update MCU description file and minify it.

* Toolbox: getter for File in FlipperFile.

* Makefile: conditional flashing

* SubGhz: keeloq_mfcodes encryption tool.

* FuriHal: proper IV handling on CBC in crypto. SubGhz: add support for encrypted keeloq keys. Makefile: move formatting to top Makefile.

* SubGhz: rename some function names to match naming scheme.

* SubGhz: encryption tool, fix windows line endings

Co-authored-by: DrZlo13 <who.just.the.doctor@gmail.com>
2021-11-01 16:11:25 +03:00
Aleksandr Kutuzov f3603e3c04 Merge branch 'dev' into release-candidate 2021-10-28 17:24:03 +03:00
あく 122e0a89ab Scripts: remove padding from cli output detection (#790) 2021-10-26 18:29:03 +03:00
あく ae016ce464 [FL-1990] Correct release type in copro manifest and rename boot to bootloader (#787)
* World: rename boot to bootloader.
* Scripts: correct release type in copro bundler.
2021-10-26 15:24:14 +03:00
Aleksandr Kutuzov 7b730dd08a Merge branch 'dev' into release-candidate 2021-10-25 03:41:13 +03:00
あく 2751440193 [FL-1970, FL-1965, FL-1872, FL-1689] Python framework, Scripts and fixes (#779)
* Scripts: add flipper lib, migrate ob to flipper lib, update ob.data
* Makefile: speedup build with phony target for .d files
* FuriHal,U8G2: full MGG display support and ERC contrast tuning.
* Desktop: fix dolphin rename artifact.
* Scripts: port otp.py to flipper scripting lib.
* Scripts: add wipe and core1 flashing to flash.py, remove obsolete shell scripts
* Scripts: replace core1 flashing script with global makefile.
* Scripts: final touches and migration to python. Root Makefile for everything.
2021-10-21 15:24:34 +03:00
あく 4997b56498 DisplayTest: controller fine tuning. Disable u8g2 contrast management. (#772)
* DisplayTest: controller fine tuning. Disable u8g2 contrast management.
* DisplayTest: correct initial configuration values. Targets: cleanup dead code.
* DisplayTest: correct initial value for bias.
2021-10-19 14:42:49 +03:00
あく bde3a47078 Git: set git attributes to automatically manage line endings. (#771)
* Git: set git attributes to automatically manage line endings.

* Git: cleanup gitignore file
2021-10-18 01:54:19 +03:00
あく f390060922 [FL-1942] Applications: Display Test. u8g2 usage refactoring. #770 2021-10-17 23:34:36 +03:00
あく 2255060d52 [FL-1961] Cli: device_info format versioning. Detach target from firmware name. #765 2021-10-16 14:25:32 +03:00
あく 0e14545d48 [FL-1945] Firmware, Scripts, Cli: add OTPv2, alternative displays support and 2-step OTP programming. #764 2021-10-15 14:05:14 +03:00
Aleksandr Kutuzov 55692ee82f Merge branch 'dev' into release-candidate 2021-10-13 22:38:50 +03:00
あく 06444789bb Makefile: optimize space usage. (#761) 2021-10-13 20:33:09 +03:00
あく a3b69d8030 [FL-1949] Cli: verify all 10 keys in crypto enclave #759 2021-10-13 12:45:23 +03:00
あく 832fb1b795 [FL-1228] FuriHal: add charge suppress API. (#743)
* FuriHal: add charge suppress API.

* FuriHal: add guards to insomnia and charge suppress routines.

* FuriHal: proper API for scheduler in power.

* FuriHal: move charging control from critical section, fix deadlock.

* Gui: use FreeRTOS native timers controls for IconAnimation, fix crash on animation start stop
2021-10-04 10:01:41 +03:00
あく 89a6c09a7a [FL-1906] Documentation: add Doxyfile, prepare sources for doxygen. (#741)
* Documentation: add Doxyfile, prepare sources for doxygen.

* Update ReadMe and remove obsolete CLA

* Add contribution guide

* Contributing: update text

* Correct spelling
2021-10-03 13:36:05 +03:00
あく 1208a5077f Code of Conduct (#739) 2021-10-02 20:32:18 +03:00
あくandDrZlo13 05b610f265 Furi: refactor records (#736)
Co-authored-by: DrZlo13 <who.just.the.doctor@gmail.com>
2021-10-02 20:05:43 +03:00
あくandDrZlo13 61aaed8abb [FL-1908] New animation update scheme (#737)
* Assets: update desktop animation frame rate and cleanup.

* Power: update ViewPort only if changed.

* Gui: tie IconAnimation with View, new update event generation scheme. Desktop: update IconAnimation usage.

Co-authored-by: DrZlo13 <who.just.the.doctor@gmail.com>
2021-10-02 20:00:56 +03:00
Aleksandr Kutuzov cca004a42d Merge branch 'dev' into release-candidate 2021-09-29 17:21:03 +03:00
あく 8b6c466058 Loader: forget menu position on main menu reentry, proper NULL arg passing. Gui: set current item for menu gui module. (#729) 2021-09-29 07:18:28 +03:00
あく ec18c1a92a [FL-1781] Desktop: change first start logic, show only if factory provisioned. (#727)
* Desktop: change first start logic, show only if factory provisioned.
* Desktop: code cleanup, correct first start scene position in scene stack.
* Desktop: Remove unused include
2021-09-28 17:42:52 +03:00
Aleksandr Kutuzov b3f1db8f9e Merge branch 'dev' into release-candidate 2021-09-17 12:21:33 +03:00
あく 322bdf049d [FL-1826] Crypto: correct key provisioning procedure. (#709)
* Crypto: correct key provisioning procedure.
* Format Sources
* Cli: target for bootloder in device_info
2021-09-17 12:21:08 +03:00
Aleksandr Kutuzov badf87fe67 Merge branch 'dev' into release-candidate 2021-09-16 19:13:52 +03:00
あく b4ffc1f81b [FL-1817] Add firmware target in device_info (#708) 2021-09-16 16:42:21 +03:00
Aleksandr Kutuzov dc622321b9 Merge branch 'dev' into release-candidate 2021-09-15 20:31:28 +03:00
あく 3db456da98 [FL-1811] FuriHal: move core2 startup to hal init stage, prevent working with flash controller till core2 startup finish. #704 2021-09-15 17:40:52 +03:00
あく 72ca76097a [FL-1811] FuriHal: move core2 startup to hal init stage, prevent working with flash controller till core2 startup finish. #704 2021-09-15 17:40:09 +03:00
あく 66f9d946ae [FL-1490] FuriHal: crypto api. Crypto cli tool. (#702)
* FuriHal: crypto layer
* Furi: add crash routine.
* FuriHal: crypto api. Crypto: cli command to manipulate secure enclave and encrypt/decrypt plain text.
* DeviceInfo: secure enclave verification.
* Rename original to enclave_valid
* Update expected enclave signature to match production keys
* F7: remove unused files
2021-09-15 12:59:49 +03:00
あく 4456982e27 [FL-1699, FL-1700] Scripts: new radio firmware bundling scheme, manifest for resources. (#700)
* Scripts: new radio firmware bundling scheme, manifest for resources.
* Scripts: add destination address for copro binaries.
* Bootloader: update linker scripts
* Scripts: resource manifest FsTree.
2021-09-13 12:52:50 +03:00
あく 433025b5c7 Input, Gui: total events complementarity on all levels (#681)
* Cli: add missing const in cli_write.
* Gui, Input: bit fields based key complementarity on all levels, key and type names API.
* Gui: minor cleanup of bit filed usage
2021-08-31 11:22:52 +03:00
あく dd8a90957f Fix SubGhz test views erratic behavior on mode switch. New bootloader image. (#669)
* Assets: add bootloader DFU icon.
* SubGhz: locking model in test views, wait for calibration complete on frequency change.
2021-08-24 02:52:59 +03:00
あく 54278b9adc Github: proper workflow handling for tags (#660) 2021-08-19 12:56:42 +03:00
あく d04deb48b8 Dolphin: fix archive double start crash (#659) 2021-08-18 18:06:55 +03:00
あく f02cec45a0 [FL-1473, FL-1651] Update STM32CubeWB to latest version. Radio firmware bundle. (#642)
* FuriHal: update STM32CubeWB to latest version.
* Makefile: debug other script
* FuriHal: correctly handle 0 size transfers in VCP
* Dolphin: cleanup and minor timer tuning.
* FuriHal: update FreeRTOS config with bigger timer command queue.
* FuriHal: delayed irq enabling, fixes missing ticks.
* FuriHal: use SFSA to determine free space for internal FS, update linker script to use as much space as theoretically possible.
* Scripts: update core2 flashing scripts and OB data.
* Github: bundle resources, core2 firmware and supplementary data.
* GitHub: versioning for supplemental artifacts
2021-08-17 12:41:08 +03:00
あく 129031e779 Cli: ctrl+c reset buffer (#639) 2021-08-13 16:18:13 +03:00
あくandDrZlo13 37d7870e52 [FL-1666] Bootloader: info screen when we going to DFU. FuriHal: port SPI to LL. Cleanup. (#634)
* FuriHal: port spi to ll. Bootloader: add spi and display.
* Makefile: rollback disabled freertos introspection
* FuriHal: spi lock asserts. F6: minor cleanup port sdcard shenanigans to furi_hal_gpio.
* SdCard: port missing bits to furi-hal-gpio
* FuriHal: fix broken RX in SPI, update SPI API usage. RFAL: more asserts in SPI platform code.
* GUI: clear canvas on start. FuriHal: no pullup on radio spi bus.
* FuriHal: use check instead of assert in spi lock routines
* FuriHal: remove timeouts
* SdHal: add guard time to SDCARD CS PIN control.
* FuriHal: proper name for SPI device reconfigure routine. SdHal: one more enterprise delay and better documentation.
* Bootloader: update DFU text and add image.
* FuriHal: drop unused ST HAL modules.
* SdHal: fixed swapped hal_gpio_init_ex arguments
* SpiHal: fixed swapped hal_gpio_init_ex arguments
* IrdaHal: use hal_gpio_init instead of hal_gpio_init_ex
* RfidHal: fixed swapped hal_gpio_init_ex arguments

Co-authored-by: DrZlo13 <who.just.the.doctor@gmail.com>
2021-08-12 11:48:05 +03:00
あく 0a97d6913c Rename api-hal to furi-hal (#629) 2021-08-08 21:03:25 +03:00
あく 7907cb232b Applications: unified entry point naming scheme, drop dead code, cleanup. (#628) 2021-08-07 19:54:42 +03:00
あく bf6c9fe114 Applications: add stack_size to keypad_test and assert in furi thread (#620) 2021-08-02 18:32:15 +03:00
あく 93caf84c80 [FL-1631] SubGhz: add tim2 clocking and NVIC initialization routines #618 2021-08-02 17:03:12 +03:00
あく e9e29e0e0c ApiHal: initialize clock in parallel, switch LSE driving to high, enable EXTI line 18 to fix LSECSS, move some interrupts service routines to api-hal-interrupts. (#614) 2021-07-30 13:13:18 +03:00
あく 4c85bfedca [FL-1620] Cli command list crash fix. Correct name validation in scripts. (#613)
* Scripts: fix incorrect name validation regexp.
* Cli: fix command list iteration.
2021-07-29 18:27:06 +03:00
あく 12113b480d ApiHal: update HSE tuning to match EVT samples (#612) 2021-07-29 14:19:18 +03:00
あく 1c58de24f5 Nfc: switch to HAL ticks. ApiHal: small cleanup and refactoring. (#609) 2021-07-28 11:45:42 +03:00
あく 4c1ac2a13d [FL-1590] SubGhz: fix incorrect limits on frequency that were causing crashes #607 2021-07-27 14:47:45 +03:00
あく a81203941b [FL-1430] ApiHal: add regions and colors enums #597 2021-07-22 12:44:52 +03:00
あく ac8387e372 [FL-1581] I2C fast mode #596 2021-07-22 11:44:15 +03:00
あく 7ca89256eb [FL-1430] New OTP format #595 2021-07-22 05:49:23 +03:00
あく f25d000d53 [FL-1558] Technical Debt: console, bootloader, targets, stdglue, etc... (#590)
* ApiHal: console abstraction, change uart baud rate to 230400. Bootloader: drop F5. Furi: prevent thread local output to serial console in stdglue.
* ApiHal: take control over system initialization, reorder some subsystems in a hope of fixing USB issues.
* Main: cleanup dead code. ISR: take care of HSECSS by our self. USB: leave clock configuration alone.
* F6 cube: switch RCC to LL.
* Cli: rollback return behavior.
2021-07-20 20:14:42 +03:00