Compare commits

...

2 commits

Author SHA1 Message Date
45df6f952a Annum Novum Faustum Felicem MMXXVI (#11)
Co-authored-by: Joe Kearney <joe@clubk.club>
Reviewed-on: #11
2026-01-10 23:18:53 +00:00
c4350ebd27 Added support for configurable logging on the ESP32 platform. (#10)
Because the ESP-IDF supports [runtime log level control](https://docs.espressif.com/projects/esp-idf/en/v5.5.2/esp32s3/api-reference/system/log.html#log-level-control), SystemK required some tweak to take full advantage of this.

This PR makes the following changes to SystemK:
- On the ESP32 platform, the highest logging level *compiled in* to the app is now controlable by Kconfig, as "SystemK maximum log level".
- [Protocols.c](272618d49d/Protocols/Protocols.c) was refactored, and the `DEBUG_PACKET_[EN/DE]CODE` #defines were renamed to make it clear that they now only apply to the PSoC platform.
- Some decoding warnings in the Test Protocol were downgraded to debug, since they were a nuisance most of the time.

Co-authored-by: Joe Kearney <joe@clubk.club>
Reviewed-on: #10
2026-01-10 22:25:50 +00:00
133 changed files with 335 additions and 289 deletions

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2025 Joseph P. Kearney and the KTag developers. * Copyright © 2025-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2025 Joseph P. Kearney and the KTag developers. * Copyright © 2025-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -72,3 +72,10 @@ idf_component_register(
"Settings" "Settings"
"States" "States"
) )
# This ensures LOG_LOCAL_LEVEL is defined before any header files are included.
idf_build_set_property(COMPILE_DEFINITIONS
"-DLOG_LOCAL_LEVEL=${CONFIG_SYSTEMK_LOG_LEVEL}"
APPEND
)

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

30
Kconfig
View file

@ -35,4 +35,34 @@ menu "KTag SystemK"
help help
Value of audio volume representing the minimum volume possible for this device. Value of audio volume representing the minimum volume possible for this device.
config SYSTEMK_LOG_LEVEL
int
default 0 if SYSTEMK_LOG_LEVEL_NONE
default 1 if SYSTEMK_LOG_LEVEL_ERROR
default 2 if SYSTEMK_LOG_LEVEL_WARN
default 3 if SYSTEMK_LOG_LEVEL_INFO
default 4 if SYSTEMK_LOG_LEVEL_DEBUG
default 5 if SYSTEMK_LOG_LEVEL_VERBOSE
choice SYSTEMK_LOG_LEVEL_CHOICE
bool "SystemK maximum log level"
default SYSTEMK_LOG_LEVEL_VERBOSE
help
Set the maximum compiled log level for SystemK.
Messages at higher levels will be removed at compile time.
config SYSTEMK_LOG_LEVEL_NONE
bool "No output"
config SYSTEMK_LOG_LEVEL_ERROR
bool "Error"
config SYSTEMK_LOG_LEVEL_WARN
bool "Warning"
config SYSTEMK_LOG_LEVEL_INFO
bool "Info"
config SYSTEMK_LOG_LEVEL_DEBUG
bool "Debug"
config SYSTEMK_LOG_LEVEL_VERBOSE
bool "Verbose"
endchoice
endmenu endmenu

View file

@ -221,9 +221,9 @@ To do so, attach the following notices to the program. It is safest to attach t
This program source code file is part of SystemK, a library in the KTag project. This program source code file is part of SystemK, a library in the KTag project.
🛡 <https://ktag.clubk.club> 🃞 🛡 <https://ktag.clubk.club> 🃞
Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2025 Joseph P. Kearney and the KTag developers. * Copyright © 2025-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2025 Joseph P. Kearney and the KTag developers. * Copyright © 2025-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2024-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2024-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2024-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2024-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2025 Joseph P. Kearney and the KTag developers. * Copyright © 2025-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2025 Joseph P. Kearney and the KTag developers. * Copyright © 2025-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free
@ -24,8 +24,10 @@
#include "SystemK.h" #include "SystemK.h"
// #define DEBUG_PACKET_ENCODE // Use these defines to enable detailed debug logging of packet encoding and decoding on the PSoC platform.
#define DEBUG_PACKET_DECODE // Debug logging is always available on the ESP32 platform, and can be configured with the console.
//#define PSoC_DEBUG_PACKET_ENCODE
//#define PSoC_DEBUG_PACKET_DECODE
static const char *KLOG_TAG = "Protocols"; static const char *KLOG_TAG = "Protocols";
@ -220,10 +222,15 @@ TimedPulseTrain_T *PROTOCOLS_EncodePacket(TagPacket_T *packet)
break; break;
} }
#ifdef DEBUG_PACKET_ENCODE #if ((defined PSoC_DEBUG_PACKET_ENCODE) || (defined ESP_PLATFORM))
KLOG_DEBUG(KLOG_TAG, "\nEncoded %s packet (%u):", ProtocolNameAsString(packet->protocol), result->count); #ifdef ESP_PLATFORM
PrintPulseTrainToConsole(result); if (esp_log_level_get(KLOG_TAG) >= ESP_LOG_DEBUG)
#endif // DEBUG_PACKET_ENCODE #endif // ESP_PLATFORM
{
KLOG_DEBUG(KLOG_TAG, "\nEncoded %s packet (%u):", ProtocolNameAsString(packet->protocol), result->count);
PrintPulseTrainToConsole(result);
}
#endif // ((defined PSoC_DEBUG_PACKET_ENCODE) || (defined ESP_PLATFORM))
return result; return result;
} }
@ -250,7 +257,7 @@ DecodedPacket_T *PROTOCOLS_MaybeDecodePacket(TimedPulseTrain_T *packet)
if (result != NULL) if (result != NULL)
{ {
// Many NEC remotes repeat packets when the button is held down. // Many NEC remotes repeat packets when the button is held down.
// Too avoid double-counting, endure 500ms of silence between packets. // Too avoid double-counting, ensure 500ms of silence between packets.
static TickType_t lastPacketTime = 0; static TickType_t lastPacketTime = 0;
const TickType_t minimumInterval = pdMS_TO_TICKS(500); const TickType_t minimumInterval = pdMS_TO_TICKS(500);
@ -328,31 +335,33 @@ DecodedPacket_T *PROTOCOLS_MaybeDecodePacket(TimedPulseTrain_T *packet)
result = TEST_MaybeDecodePacket(packet); result = TEST_MaybeDecodePacket(packet);
} }
#ifdef DEBUG_PACKET_DECODE #if ((defined PSoC_DEBUG_PACKET_DECODE) || (defined ESP_PLATFORM))
#ifdef ESP_PLATFORM #ifdef ESP_PLATFORM
esp_log_level_set(KLOG_TAG, ESP_LOG_DEBUG); if (esp_log_level_get(KLOG_TAG) >= ESP_LOG_DEBUG)
#endif // ESP_PLATFORM #endif // ESP_PLATFORM
if (result != NULL)
{ {
KLOG_DEBUG(KLOG_TAG, "Successfully decoded packet as %s: %s", DecodedPacketTypeAsString(result->Generic.type), ProtocolNameAsString(result->Generic.protocol));
vTaskDelay(pdMS_TO_TICKS(10)); vTaskDelay(pdMS_TO_TICKS(10));
if (result->Generic.type == DECODED_PACKET_TYPE_COMMAND_RECEIVED) if (result != NULL)
{ {
KLOG_DEBUG(KLOG_TAG, "Command data: %lu", result->Command.data); KLOG_DEBUG(KLOG_TAG, "Successfully decoded packet as %s: %s", DecodedPacketTypeAsString(result->Generic.type), ProtocolNameAsString(result->Generic.protocol));
vTaskDelay(pdMS_TO_TICKS(10)); vTaskDelay(pdMS_TO_TICKS(10));
if (result->Generic.type == DECODED_PACKET_TYPE_COMMAND_RECEIVED)
{
KLOG_DEBUG(KLOG_TAG, "Command data: %lu", result->Command.data);
vTaskDelay(pdMS_TO_TICKS(10));
}
}
else
{
KLOG_DEBUG(KLOG_TAG, "Couldn't decode packet. Size was %d symbols:", packet->count);
vTaskDelay(pdMS_TO_TICKS(10));
PrintPulseTrainToConsole(packet);
} }
} }
else #endif // ((defined PSoC_DEBUG_PACKET_DECODE) || (defined ESP_PLATFORM))
{
KLOG_DEBUG(KLOG_TAG, "Couldn't decode packet. Size was %d symbols:", packet->count);
vTaskDelay(pdMS_TO_TICKS(10));
PrintPulseTrainToConsole(packet);
}
#endif // DEBUG_PACKET_DECODE
// Remember which receiver saw the packet. // Remember which receiver saw the packet.
if (result != NULL) if (result != NULL)

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

View file

@ -1,9 +1,9 @@
/* /*
* This program source code file is part of SystemK, a library in the KTag project. * This program source code file is part of SystemK, a library in the KTag project.
* *
* 🛡 <https://ktag.clubk.club> 🃞 * 🛡 <https://ktag.clubk.club> 🃞
* *
* Copyright © 2016-2025 Joseph P. Kearney and the KTag developers. * Copyright © 2016-2026 Joseph P. Kearney and the KTag developers.
* *
* This program is free software: you can redistribute it and/or modify it under * This program is free software: you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License as published by the Free * the terms of the GNU Affero General Public License as published by the Free

Some files were not shown because too many files have changed in this diff Show more