Commit Graph

98 Commits

Author SHA1 Message Date
RocketGod c6f3b947ad Fix memory management and state handling 2026-02-08 22:53:31 -08:00
MMX 767bddf94b Merge branch 'main' into zero-mega 2026-02-06 16:36:53 -05:00
zero-mega 506ec6ac40 fix VAG encoder 2026-02-05 18:25:41 +01:00
0mega 8a7759108b Vag Encoder WIP 2026-02-04 07:41:12 +01:00
MX 74b8f629a4 Merge branch 'somefixes' into rw_ui_and_improvement 2026-02-03 17:58:22 +03:00
MX bd47a1d290 fix protocol naming 2026-02-03 17:58:15 +03:00
MX 54bb63bc73 Merge branch 'somefixes' into rw_ui_and_improvement 2026-02-03 17:44:38 +03:00
MX f1f59165d6 naming fixes 2026-02-03 17:44:34 +03:00
MX c084750cf3 add changes by @RalphWiggum 2026-02-03 17:09:09 +03:00
MX bb11afce9b WIP vag combo by @zero-mega
with PSA fixes
2026-02-03 00:15:36 +03:00
MX af51c142c8 Merge branch 'zmg_vw' into pp_main 2026-01-31 11:14:04 +03:00
RocketGod 11253a9f81 Fix memory issues and crashes 2026-01-30 17:12:54 -08:00
MX b422766a05 add vw crypto
by zero-mega and slackware
2026-01-29 06:02:24 +03:00
MX 833910e833 fix array init 2026-01-27 03:35:16 +03:00
MX a50067aed8 Merge branch 'rg_main' into zm 2026-01-27 03:26:05 +03:00
MX 9426369965 Fixes and final touches 2026-01-27 03:17:49 +03:00
RocketGod b69c23ac19 Refactor storage and radio initialization logic
Removes the file list cache and related logic from protopirate_storage, deferring file browsing to the dialogs file browser. Refactors radio initialization and deinitialization to be performed on-demand in relevant scenes, reducing memory usage and improving modularity. Updates scene logic to use the new file browser and radio management, and adds detailed logging and memory usage tracking for debugging. Also includes minor formatting and heap logging improvements. Will leave logging until we don't need it anymore.
2026-01-26 10:14:25 -08:00
zero-mega b76d1e7dbc Add PSA Encoder 2026-01-26 18:54:57 +01:00
RocketGod 55e8068ed3 Remove mutex usage and simplify file storage logic
Eliminated all mutex-based locking and re-entrancy logic from protopirate_storage.c, simplifying file list management and related functions. Reduced MAX_FILES_TO_DISPLAY to 30 and shortened file entry name buffer. Updated file list builder to allocate and free memory as needed, and added yielding in file enumeration to prevent watchdog lockups. In protopirate_scene_saved.c, limited displayed items to 20 and added GUI yield to prevent lockup. Reduced encoder upload buffer size from 1024 to 512 in fiat_v0.c and ford_v0.c.
2026-01-25 22:22:45 -08:00
RocketGod 8ed8e44b38 Reduce encoder upload buffer size to 1024
Decreased the encoder.size_upload value from 2048 to 1024 in both fiat_v0 and ford_v0 protocol implementations to optimize memory usage.
2026-01-23 18:02:42 -08:00
MMX 45b635e291 Merge pull request #76 from zero-mega/main
Add PSA Decoder decryption (Direct and Bruteforce)
2026-01-23 16:21:15 +03:00
MMX 9454fa821a Merge pull request #75 from LeeroysHub/pr_update_bs_crc
FORD: Update PSF with new BS and CRC after TX
2026-01-23 16:20:59 +03:00
MMX fbf2f62224 Merge pull request #71 from LeeroysHub/PR_Ford_Display
Add BS Magic to Saved Info View, make visible in Received.
2026-01-23 16:20:31 +03:00
MMX dc8ea60d06 Merge pull request #70 from LeeroysHub/PR_Ford_BS_Overflow
Incorrect BS when result overflows.
2026-01-23 16:20:18 +03:00
zero-mega 55d61568e0 Add PSA Decoder decryption (Direct and Bruteforce) 2026-01-22 15:39:48 +01:00
Leeroy 8d2163c628 FORD: Update PSF with new BS and CRC after TX 2026-01-22 23:21:49 +11:00
RocketGod 67c896dc81 Add optional debug logging for bit-level operations
Introduced the FORD_V0_DEBUG_BITS macro to enable detailed debug logging of each bit processed in the Ford V0 protocol decoder. Logging is wrapped in a preprocessor check to avoid performance impact unless explicitly enabled.
2026-01-21 18:38:54 -08:00
Leeroy 1823d6438e Moved Receiver Info around so BS Magic isnt off-screen.
* Added spaces for easier viewing
* Swap BS Magic and Btn so BS Magic always fits
2026-01-21 17:07:14 +11:00
Leeroy 8f1d3b5bec Handle BS overflow in Ford Decoder 2026-01-21 16:56:15 +11:00
Leeroy 699ab89d7c Refactor BS magic number calculation into 1 liner 2026-01-20 14:43:10 +11:00
Leeroy 2dabdb3c68 Remove overflow handling for PR 2026-01-20 14:17:41 +11:00
Leeroy 88e3e515a0 BAckward compatibilty with old PSF files 2026-01-20 13:45:40 +11:00
Leeroy eabbff45d3 Add BS Magic Number calculation to Ford V0
* The Code uses 6f, all my remotes use different numbers.
* So, I am getting the required Magic Number on decode,
* and saving that to the psf.
* Then on Encode, I grab that number and use that instead of 6f
* This works with the 2 remotes I have, and I dont have to patch
* the Magic Number from Calulator anymore!

*** I noticed my Chinese Fob with Magic of 0 said CRC BAD, but Car Unlocked as it captured!
*** It also works when Emulated, car unlocks.
*** The CRC check will have to be looked at!
2026-01-20 13:21:51 +11:00
zero-mega e191349f8e Merge branch 'RocketGod-git:main' into main 2026-01-19 18:18:41 +01:00
zero-mega 8f42155e37 Add PSA decoder (no decryption yet) 2026-01-19 11:36:52 +01:00
RocketGod aa010536b2 Refactor and enhance Ford V0 protocol encoder/decoder
Reorganizes code with clearer sectioning and comments, adds explicit BS calculation, and implements robust encode/decode functions for Ford V0 protocol. Improves logging, error handling, and field extraction in encoder deserialization, and ensures protocol fields are recalculated rather than loaded from files. Cleans up and clarifies bit manipulation logic, and enhances maintainability and readability throughout the protocol implementation.
2026-01-18 11:44:09 -08:00
RocketGod 0d043831ba Add CRC to encoder
Removed verbose debug logging and refactored CRC calculation for Ford V0 protocol, including a new function for CRC calculation during encoding and proper bit inversion for transmission and verification. Updated key2 construction to always use calculated CRC.
2026-01-17 18:46:46 -08:00
RocketGod 4ee8932eaf Add Ford V0 CRC verification and logging
Implements CRC calculation and verification for Ford V0 protocol using a firmware-extracted matrix. Adds detailed logging for CRC operations, decoding, and deserialization, and updates output string to show CRC status. Also improves button naming and field extraction during deserialization.
2026-01-17 18:06:26 -08:00
RocketGod b4124fc633 Refactor Suzuki protocol header for clarity and structure 2026-01-16 15:52:11 -08:00
RocketGod e5a6ba574b Merge branch 'main' into Suzuki-fixes 2026-01-16 15:49:04 -08:00
RocketGod d43c6c06b5 Add encoder implementation for Suzuki protocol
Implemented encoder functions for the Suzuki SubGhz protocol, including allocation, freeing, deserialization, stop, and yield. Updated protocol flags to support load, save, and send operations. Refactored code structure for clarity and added protocol constants and helper functions.
2026-01-16 15:45:26 -08:00
RocketGod deaae84938 Merge pull request #51 from RocketGod-git/Subaru-Encoder
Add encoder support for Subaru protocol
2026-01-16 15:24:46 -08:00
RocketGod f28e311684 Merge pull request #39 from grugnoymeme/suzuki-encoder
Suzuki encoder
2026-01-16 15:24:08 -08:00
RocketGod 36a8518983 Add encoder support for Subaru protocol
Implements encoder functions for the Subaru protocol, enabling signal generation and transmission. Updates protocol flags to support loading, saving, and sending. Refactors decoder/encoder data structures for consistency, adds dynamic memory management for file entry buffers, and improves serialization/deserialization logic for protocol data.
2026-01-16 14:13:56 -08:00
RocketGod 8e872da27f Add encoder implementation for Fiat V0 protocol
Implemented the encoder for the Fiat V0 SubGhz protocol, including allocation, serialization, and signal generation logic. Updated the decoder and related data structures for consistency, improved serialization/deserialization, and added protocol flags for encoding support. Updated README to list Fiat V0 as an encoder.
2026-01-15 22:33:34 -08:00
47LeCoste fc7f51bb85 remove unused header (furi.h) 2026-01-15 07:51:41 +00:00
47LeCoste 2ca4cb6411 remove unused header (level_duration) 2026-01-15 07:51:11 +00:00
47LeCoste f08547485a suzuki encoder header 2026-01-14 11:42:05 +00:00
47LeCoste a0526f8a33 suzuki encoder 2026-01-14 11:41:33 +00:00
MX 62481ee1c6 sub decoder will require more work 2026-01-13 03:51:18 +03:00