Commit Graph
84 Commits
Author SHA1 Message Date
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
RocketGod 48cf355789 Merge pull request #29 from grugnoymeme/kia2fix
Fix Kia V2 buffer overflow
2026-01-12 14:02:14 -08:00
MX 822f3ac1c0 Fixes and improvements 2026-01-12 23:29:01 +03:00
MX 31c09401b6 apply formatting and add clang format config 2026-01-12 23:20:34 +03:00
RocketGod 541abde5bf Revert "@xMasterX (MMX) --> Add StarLine and Scher-Khan protocol support plus encryptions and fixes"
This reverts commit a4937375ea.
2026-01-11 20:37:38 -08:00
RocketGod 735d7a6f24 Revert "Reapply "@xMasterX --> Refactor key handling and add key loading function""
This reverts commit 87eda28742.
2026-01-11 20:35:02 -08:00
RocketGod 87eda28742 Reapply "@xMasterX --> Refactor key handling and add key loading function"
This reverts commit c319df210a.
2026-01-11 20:34:25 -08:00
RocketGod c319df210a Revert "@xMasterX --> Refactor key handling and add key loading function"
This reverts commit febddb088d.
2026-01-11 20:33:57 -08:00
RocketGod a75f80059a Revert "Refactor and enhance protocol storage and KIA protocol handling"
This reverts commit 52baeb9e86.
2026-01-11 20:33:25 -08:00
RocketGod 52baeb9e86 Refactor and enhance protocol storage and KIA protocol handling
Refactored helpers/protopirate_storage.c for improved readability and maintainability, including code style updates and logic simplification. Updated KIA protocol v1 and v2 implementations for better consistency, logging, and CRC handling. Increased stack size and version in application.fam, and added keystore to file assets. These changes improve protocol support, file management, and code clarity.
2026-01-11 20:28:31 -08:00
RocketGod febddb088d @xMasterX --> Refactor key handling and add key loading function
Replaces obfuscated key macros and inline functions with external key variables and function declarations. Adds protopirate_keys_load to initialize keys using a SubGhzEnvironment. Updates includes to use subghz environment and keystore headers.
2026-01-11 20:16:39 -08:00
RocketGod a4937375ea @xMasterX (MMX) --> Add StarLine and Scher-Khan protocol support plus encryptions and fixes
This commit is from @xMasterX (MMX) and introduces implementation files for StarLine and Scher-Khan SubGhz protocols, including protocol decoders, encoders, and keeloq key management. Adds common protocol utilities, keystore handling, and protocol-specific logic for key generation, serialization, and deserialization.
2026-01-11 20:13:21 -08:00
RocketGod 8a8b4ef9d1 Add encoder implementation for Ford V0 protocol
Implemented the encoder for the Ford V0 SubGhz protocol, including allocation, freeing, deserialization, stop, and yield functions. Updated the protocol flags to support encoding, loading, saving, and sending. Added encoder-specific fields to the encoder struct and provided the encoding logic for generating transmission bursts. Updated the header file to declare encoder functions.
2026-01-11 19:57:33 -08:00
47LeCoste 29c6a6ddb1 Increase encoder upload size from 1200 to 1300
fixed buffer overflow.
it needs 1218 and it was 1200 causing crash
2026-01-11 00:02:25 +00:00
0mega 44993917a8 Add Kia V2 Encoder 2026-01-10 12:52:02 +01:00