Commit Graph

1929 Commits

Author SHA1 Message Date
g3gg0.de
826e4d1eda DigitalSequence: fix issues with concatenation of same levels and spurious bit flips 2023-04-30 23:05:56 +10:00
g3gg0.de
e2b77fcfb2 digital_signal: keep lock until all DMA transfers have finished 2023-04-30 23:05:56 +10:00
g3gg0.de
4f076485a3 digital_signal: fix memory leak 2023-04-30 23:05:55 +10:00
g3gg0.de
7e42c9c3f0 added recovery if the timer already expired 2023-04-30 23:05:55 +10:00
g3gg0.de
4c3a5e9c12 digital_signal: remove assembly code, limiting the performance but increasing portability 2023-04-30 23:05:55 +10:00
g3gg0.de
17f7f0e637 digital_signal: reduce code complexity of digital_signal_update_dma() by only reconfiguring DMA2 2023-04-30 23:05:55 +10:00
g3gg0.de
064a34e681 pulse_reader: further optimize assembly code 2023-04-30 23:05:55 +10:00
g3gg0.de
cd082c9d90 digital_signal: show unoptimized and optimized code for digital_signal_update_dma() next to each other 2023-04-30 23:05:55 +10:00
g3gg0.de
bc80ddd0a7 digital_signal/pulse_reader: allow parameters for free to be NULL 2023-04-30 23:05:54 +10:00
g3gg0.de
c18cf71646 make structures private, add C implementation of digital_signal_update_dma() 2023-04-30 23:05:54 +10:00
g3gg0.de
f08c8d6a1d pulse_reader: add call to set GPIO pull direction 2023-04-30 23:05:48 +10:00
g3gg0.de
67b02b7785 remove unit test for pulse_reader again 2023-04-30 23:05:20 +10:00
gornekich
4d09a50fbb pulse_reader: remove from API, allow to link with faps
Signed-off-by: g3gg0.de <git@g3gg0.de>
2023-04-30 23:05:18 +10:00
g3gg0.de
f56835cb65 ran format_py 2023-04-30 23:04:40 +10:00
g3gg0.de
a34f2d2903 pulse_reader_stop now deinits GPIO as recommended by @gornekich 2023-04-30 23:04:40 +10:00
g3gg0.de
146061e631 fine tuned timings for pulse_reader test 2023-04-30 23:04:40 +10:00
g3gg0.de
9cf16bdfe4 change pulse reader test timings to 1, 10 and 100 ms 2023-04-30 23:04:40 +10:00
g3gg0.de
e56cd5165a added unit test for pulse_reader 2023-04-30 23:04:39 +10:00
g3gg0.de
396ebe1ad8 fix starting level detection in pulse_reader 2023-04-30 23:04:39 +10:00
gornekich
b5b5abac27 pulse_reader: build as static library
Signed-off-by: g3gg0.de <git@g3gg0.de>
2023-04-30 23:04:35 +10:00
g3gg0
035d630ff9 fix test cases to match (expected) implementation 2023-04-30 23:02:31 +10:00
g3gg0
302739d543 allow gpio field to stay uninitialized in digital_signal_prepare_arr() 2023-04-30 23:02:31 +10:00
g3gg0
b24c0cd97f flagged functions in api_symbols.csv 2023-04-30 23:02:24 +10:00
g3gg0
9a6a796804 fixed renaming 2023-04-30 23:01:17 +10:00
g3gg0
0a714fc164 fixed linter errors and undone function renaming 2023-04-30 23:01:16 +10:00
g3gg0
26c4e88677 added send_time option to start a signal at a specific DWT->CYCCNT value 2023-04-30 23:01:16 +10:00
g3gg0
3846e81157 added DigitalSequence to chain multiple DigitalSignals
added PulseReader for hardware assisted digital signal sampling
2023-04-30 23:01:15 +10:00
Max Andreev
e42aec68c5 Disable ci/cd on release* branches (#2624) 2023-04-28 23:25:20 +09:00
あく
408edb3e99 Keep HSI16 working in stop mode. (#2621) 2023-04-27 23:01:13 +09:00
あく
0ec8fc4c55 FuriHal: use proper divider for core2 when transition to sleep, remove extra stop mode transition checks, cleanup code. Furi: proper assert and check messages. (#2615) 2023-04-26 00:11:42 +04:00
hedger
d70ba2b740 [FL-3286] Don't reboot on crash in debug builds (#2613)
* furi: never reboot on furi_crash in debug builds
* furi: crash info: added registers
* furi: check and assert optimization, split registers and stack info dump
* furi: macro uppercase

Co-authored-by: SG <who.just.the.doctor@gmail.com>
2023-04-26 01:33:13 +09:00
hedger
1ef70c0bb4 [FL-3280] cubewb: downgraded to v1.15.0 (#2605)
* cubewb: downgraded to v1.15.0
* hal: updated f18 symbols to match LL
* hal: flash: use furi_hal_cortex_timer for timeouts
* scripts: fixed cube version validation from config file
* hal: flash: added 3 seconds timeout when waiting for C2 to unlock flash controller. On timeout, triggers furi_check
* nfc: fixed missing interrupt setup on multiple platformSetIrqCallback() invocations
* hal: gpio: don't trigger furi_check on furi_hal_gpio_add_int_callback() with same parameters
* Reverted NFC fixes - will be in a separate PR
* scripts: storage: fixed exception handler for paths
2023-04-24 16:19:36 +09:00
hedger
4d015a1106 [FL-3271] cubewb: updated to v1.16.0 (#2595)
* cubewb: updated project to v1.16.0
* hal: updated api_symbols for f18
* FuriHal: add missing enterprise sleep and insomnia
* FuriHal: slightly more paranoic sleep mode

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2023-04-20 21:57:51 +09:00
hedger
3932503660 [FL-3243] github: testing SDK with ufbt action (#2581)
* github: testing SDK with ufbt action
* github: also build apps with ufbt
* github: fixed dir lookup for ufbt
* ufbt: checks for compatibility on app discovery
* github: Conditional app skip for ufbt
* github: fixed app build flow with ufbt
* extra debug
* github: lint: message capture
* github: testing different output capture method for linters
* shorter version of status check
* github: updated comment actions to suppress warnings
* Reverted formatting changes

Co-authored-by: あく <alleteam@gmail.com>
2023-04-19 20:08:13 +09:00
Astra
e0fa2e7b12 [FL-3089] Raw RFID documentation (#2592)
Co-authored-by: あく <alleteam@gmail.com>
2023-04-19 18:47:01 +09:00
Astra
74fe003f8b [FL-3171] Introduce stealth mode and auto-selective lock (#2576)
* Introduce stealth mode and auto-selective lock
* Stealth mode status bar icon
* Review fixes
* Fix icon disappearing after reboot
* Support overriding stealth mode
* FuriHal: correct reserved space size in RTC SystemReg

Co-authored-by: あく <alleteam@gmail.com>
2023-04-19 18:33:23 +09:00
Astra
2c7eb53cac [FL-2505] Active RPC session icon (#2583)
* Active RPC session icon
* Add RpcOwner, don't show the RPC icon when the session was started from BLE
* Fix rpc_test and f18 api
* Bump API version

Co-authored-by: あく <alleteam@gmail.com>
2023-04-19 17:30:26 +09:00
あく
f68c3b2a65 [FL-3264] Various stop mode fixes (#2584)
* BleGlue: log hci_cmd_resp invocation
* BleGlue: increase BleHciDriver stack size
* ble hid app: increase stack
* ble: comment unnecessary hci reset
* BleGlue: stricter checks in communication with core2, cleanup code
* Furi: enter insomnia when executing from RAM
---------
Co-authored-by: gornekich <n.gorbadey@gmail.com>
2023-04-18 21:38:35 +10:00
Eric Betts
de02a0a25a [#2589] Correctly aborts when correct key is found (#2590) 2023-04-17 14:36:15 +09:00
Georgii Surkov
37fb330b36 [FL-3226] Deep Sleep Idle (#2569)
* Improve RNG error handling
* Sync RTC shadow registers on Stop mode exit
* Implement working STOP2 mode
* Fix formatting
* FuriHal: disable SWD pins if debug is disabled
* Power: cleanup battery info view, handle zero current report from gauge
* Fbt: add command line argument for extra global defines
* FuriHal: cleanup debug defines in power and os, drop deep_insomnia counter.
* Add a setting to disable deep sleep
* Clean up furi_hal_power
* FuriHal,FapLoader,Debug: implement debug in stop mode, workaround resume in stop
* FuriHal: document OS and power subsystems debugging
* Furi: enable debug interface on crash

---------

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2023-04-14 00:47:38 +10:00
あく
5d7bdca835 FuriHal: pwr pulls for some pins (#2579) 2023-04-12 21:45:13 +10:00
Skorpionm
33e8bae78b Bugfix: ISP Programmer and SubGhz (#2574)
* AVR_ISP: fix NULL pointer dereference
* SubGhz: double back with a blocked transmission in this region
* SubGhz: fix speaker, when a transmission is blocked in this region
* SubGhz: fix speaker
* SubGhz: return region
* AVR Flasher: cleanup code

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2023-04-12 15:07:05 +09:00
gornekich
7ac7b70884 [FL-3241] NFC disable EMV support (#2571)
* nfc: remove read emv from extra actions
* nfc: remove read emv

Co-authored-by: あく <alleteam@gmail.com>
2023-04-10 23:51:55 +08:00
hedger
b9ccb274a7 ufbt: project & debugging updates (#2572)
* ufbt: removed warning in "channel=dev" update mode
* ufbt: removed API version warning; added get_blackmagic & get_apiversion targets
* ufbt: updater project template to include blackmagic & jlink targets
* ufbt: project template: fixes & updates
* ufbt: project template: added config update shortcut
* sdk: using fixed names for file components
2023-04-11 00:46:22 +10:00
Skorpionm
6cc5f30c84 Fix gpio state isp programmer (#2567)
* ISP: fix state gpio ISP Programmer
* WS: delete string debug

Co-authored-by: あく <alleteam@gmail.com>
2023-04-07 11:02:29 +08:00
hedger
89161a7a1e scripts: sconsdist: added stub file artifact for older ufbt (#2568)
* scripts: sconsdist: added stub file artifact for older ufbt
* scripts: sconsdist: not creating dummy SDK archive
2023-04-07 05:37:12 +10:00
あく
0d8518d31d [FL-3232] FuriHal: fix gpio naming and add explicit pulls for vibro, speaker and ir_tx (#2565)
* FuriHal: fix gpio naming and add explicit pulls for vibro, speaker and ir_tx
* Github: workflow event debug print
* Github: proper PR head commit SHA extraction in get_env.py
2023-04-06 19:06:19 +10:00
Skorpionm
d1ad924216 [AVR_ISP]: add AVR ISP Programmer FAP (#2475)
* [AVR_ISP]: add AVR ISP Programmer FAP
* [AVR_ISP]: add auto detect AVR chip
* [AVR_ISP]: fix auto detect chip
* [AVR_ISP]: fix fast write flash
* AVR_ISP: auto set SPI speed
* AVR_ISP: add clock 4Mhz on &gpio_ext_pa4
* AVR_ISP: fix "[CRASH][ISR 4] NULL pointer dereference" with no AVR chip connected
* AVR_ISP: add AVR ISP Reader
* AVR_ISP: add read and check I32HEX file
* AVR_ISP: add write eerom, flash, fuse, lock byte
* AVR_ISP: add gui Reader, Writer
* Github: unshallow on decontamination
* AVR_ISP: move to external
* API: fix api_symbols
* AVR_ISP: add wiring scene
* GUI: model mutex FuriMutexTypeNormal -> FuriMutexTypeRecursive
* AVR_ISP: add chip_detect view
* AVR_ISP: refactoring gui ISP Programmer
* AVR_ISP: add gui "Dump AVR"
* AVR_ISP: add gui "Flash AVR"
* AVR_ISP: fix navigation gui
* GUI: model mutex FuriMutexTypeRecursive -> FuriMutexTypeNormal
* AVR_ISP: fix conflicts
* AVR_ISP: fix build
* AVR_ISP: delete images
* AVR_ISP: add images
* AVR_ISP: fix gui
* AVR_ISP: fix stuck in navigation
* AVR_ISP:  changing the Fuse bit recording logic
* AVR_ISP: fix read/write chips with memory greater than 64Kb
* AVR_ISP: fix auto set speed SPI
* AVR_ISP: fix gui
* ISP: switching on +5 volts to an external GPIO

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2023-04-06 12:13:30 +08:00
Astra
b4ceb55fd2 [FL-2524] Graphics cleanup and icon rotation (#2561)
* Canvas with rotation
* Full icon rotation, cleanup of unused resources
* F18 API update
* Bitmap draw cleanup
* More cleaning up
* Migrate recovery and DFU to canvas
* Make the internal draw function static
* Remove all calls to u8g2_DrawXBM

Co-authored-by: あく <alleteam@gmail.com>
2023-04-06 11:36:12 +08:00
hedger
a91d319839 [FL-3162] Moved ufbt to fbt codebase (#2520)
* scripts: moved ufbt code
* ufbt: fixed tool path
* ufbt: fixed linter/formatter target descriptions
* scripts: ufbt: cleanup
* fbt: moved fap launch target to tools; ufbt fixes
* fbt: fixed missing headers from SDK
* ufbt: removed debug output
* ufbt: moved project template to main codebase
* ufbt: fixed vscode_dist
* ufbt: path naming changes
* fbt: error message for older ufbt versions
* ufbt: docs fixes
* ufbt: fixed build dir location
* fbt: fixes for extapps objcopy
* fbt: extapps: removed extra debug output; fixed formatting
* ufbt: handle launch target for multiple known apps
* ufbt: dropping wrapper; linter fixes
* ufbt: fixed boostrap path
* ufbt: renamed entrypoint
* ufbt: updated vscode config
* ufbt: moved sconsign db location
* ufbt: fixed sconsign path
* fbt: SDK builders rework
* fbt: reworked sdk packaging
* ufbt: additional checks and state processing
* ufbt: fixed sdk state file location
* dist: not packaging pycache
* dump commit json content
* Github: more workflow debug prints
* Github: fix incorrect commit meta extraction in get_env.py
* ufbt, fbt: changed SConsEnvironmentError->StopError
* fbtenv: no longer needs SCRIPT_PATH pre-set
* ufbt: fixed sdk state check
* scripts: exception fixes for storage.py
* scripts: fbtenv: added FBT_TOOLCHAIN_PATH for on Windows for compat
* ufbt: app template: creating .gitkeep for images folder
* ufbt: app template: fixed .gitkeep creation
* docs: formatting fixes for AppManifests; added link to ufbt
* fbt: added link to PyPI for old ufbt versions
* sdk: fixed dir component paths

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2023-04-06 10:44:37 +08:00