Skip to content
Draft

v0.3 #55

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
330 commits
Select commit Hold shift + click to select a range
20d5dc8
Update: PeerDetailPage
KiraFlux May 6, 2026
5ac14f1
make PeerAddress trivial
KiraFlux May 7, 2026
04d691f
update: device Config
KiraFlux May 7, 2026
48ea0a3
add: battery status into MavlinkTelemetry
KiraFlux May 7, 2026
02a904b
add some Telemetry Entries
KiraFlux May 7, 2026
145e416
remove old PeerNote structure from device Config
KiraFlux May 9, 2026
07dbb5f
remove: memory::Box (not used)
KiraFlux May 9, 2026
ee42664
Feature: Create PeerFavoritesRegistry
KiraFlux May 9, 2026
84cc902
add: Peer favorites into device config
KiraFlux May 9, 2026
eecb71a
refactor: PeerExplorerPage shows only exsisted peers
KiraFlux May 9, 2026
23e900f
refactor: PeerFavoritesRegistry:
KiraFlux May 9, 2026
350eacf
Update: PeerRegistry: default Entry name
KiraFlux May 9, 2026
7dfd089
add: PeerScanner::Entry: peer info from favorites
KiraFlux May 9, 2026
d89dd7e
Feature: Create PeerFavoriteEditPage
KiraFlux May 9, 2026
c25fdfe
update: main
KiraFlux May 9, 2026
db0edd2
replace strange labels with empty stringview
KiraFlux May 10, 2026
28a5013
Bug: Dangling pointer to favorite record in PeerScanner::Entry
KiraFlux May 10, 2026
9296361
refactor: PeerFavoritesRegistry::Entry rename description -> name
KiraFlux May 10, 2026
e73fabb
update PeerFavoritePage (matching new PeerFav..::Entry fields)
KiraFlux May 10, 2026
c0798ff
Refactor: Decouple PeerDisplay from PeerScanner::Entry
KiraFlux May 10, 2026
69ba166
PeerExplorerPage: replace method with local static lambda
KiraFlux May 10, 2026
9093ba9
Feature: Maintain compact active list in PeerFavoritesRegistry
KiraFlux May 10, 2026
441797d
fix: PeerFav.. initialization
KiraFlux May 10, 2026
3168f5c
Feature: Add expandable favorites list to ConfigPage Labels: feature
KiraFlux May 10, 2026
0c33e77
chore: add AGENTS.md:
KiraFlux May 11, 2026
d10fca7
Feature: Implement Auto‑Connect Service for Trusted Peers
KiraFlux May 11, 2026
f1dee4c
Feature: Integrate AutoConnectService into main
KiraFlux May 11, 2026
cf5327c
change autoconnect target peer (most trusted first)
KiraFlux May 12, 2026
2c20659
fix: AutoConnectionService logic
KiraFlux May 13, 2026
5243a9b
Update transport::Kind size (char)
KiraFlux May 14, 2026
4e43bc4
Implement TransportRegistry
KiraFlux May 14, 2026
f5e8f64
Update Config:
KiraFlux May 14, 2026
089d959
Using Transport registry
KiraFlux May 14, 2026
ee3b7ba
inline ProtocolRegistry::stringFromMode
KiraFlux May 14, 2026
d3b9ac8
Update ConfigPage
KiraFlux May 14, 2026
c7de5bc
ConfigPage now implements Initable mixin (for widget values setup wit…
KiraFlux May 14, 2026
1aeb639
Update ConfigPage
KiraFlux May 14, 2026
5f9cc3a
ProtocolLink: add docs
KiraFlux May 14, 2026
f3de49c
ProtocolRegistry: add docs
KiraFlux May 14, 2026
40435e7
TransportRegistry: add docs
KiraFlux May 14, 2026
50ea390
device Config: update docs
KiraFlux May 14, 2026
330da21
Config: remove StringView include
KiraFlux May 14, 2026
f4d30ba
Control: add docs
KiraFlux May 14, 2026
233d3b8
DisplayManager: add brief
KiraFlux May 14, 2026
69eb01a
Merge pull request #46 from KiraFlux/refactor/transport
KiraFlux May 14, 2026
8b7169c
Implement Service static inteface
KiraFlux May 15, 2026
23522b8
InputHandler now implements Service
KiraFlux May 15, 2026
5fce372
make PeerScanner implements Service
KiraFlux May 15, 2026
cd9a75c
Update display manager: implements Service (add poll dummy)
KiraFlux May 15, 2026
6c59bd2
make AutoConnectService implements Service
KiraFlux May 15, 2026
1f5cf5c
make Control as Service
KiraFlux May 15, 2026
c5787e2
Update main, Config, PeerExplorerPage:
KiraFlux May 15, 2026
dc3e1eb
ConfigManager no longer singleton
KiraFlux May 15, 2026
06baf2b
rename 'storage' to 'config_manager'
KiraFlux May 15, 2026
ed2016a
rename: PeerScanner -> PeerScanningService
KiraFlux May 15, 2026
e6c876a
refactor: remove 'Control' service dependency from DisplayManager
KiraFlux May 15, 2026
9037bb0
refactor: Display manager: (rename P -> Palette)
KiraFlux May 15, 2026
3ed2d93
Update DisplayManager: make it generic by DisplayDriverImpl
KiraFlux May 15, 2026
05d90f0
update main
KiraFlux May 15, 2026
d12b23f
Update LogicalButtonListener: fix formatting & naming issues
KiraFlux May 15, 2026
7e0af85
wip(main-autoconnect): extract procedure
KiraFlux Jun 11, 2026
6843764
chore: remove kiraflux-toolkit version constraint
KiraFlux Jun 11, 2026
b9f28be
wip: partial migration on kf-0.3.2
KiraFlux Jun 11, 2026
a7deca6
wip(migration): replace internal LogicalLevelListener with toolkit im…
KiraFlux Jun 11, 2026
e78e2ed
fix: migrate virtual keyboard
KiraFlux Jun 11, 2026
943ca51
wip: migrate protocol-related structs
KiraFlux Jun 11, 2026
382e273
wip(migration): update protocol link
KiraFlux Jun 11, 2026
f4f39f5
wip(migration): update transport layer
KiraFlux Jun 11, 2026
a53f0ea
wip(migration): update services
KiraFlux Jun 11, 2026
f0f7e83
wip(miration): update ui, rest of firmware..
KiraFlux Jun 11, 2026
5c4dae3
fix(ui/TextInput): check available via null compare
KiraFlux Jun 11, 2026
36085ec
fix(transport/espnow): use manual dispatching
KiraFlux Jun 11, 2026
6ff3739
fix(main target peer finder): add isSome check
KiraFlux Jun 11, 2026
57fd1f6
feat: make djc::UI as extension of kf::ui::UI
KiraFlux Jun 11, 2026
0dafa75
feat(ui): using semantic color
KiraFlux Jun 11, 2026
939a521
fix(ui/peer-explorer): set background and foreground for connection s…
KiraFlux Jun 11, 2026
a4c2f07
feat(ui/config): initialize selectors with actual config values
KiraFlux Jun 11, 2026
591b11f
chore(transport/PeerAddress): remove espnow include
KiraFlux Jun 11, 2026
362f583
feat: add patched version of kf::network::EspNow
KiraFlux Jun 11, 2026
7281bfe
fix: using patched espnow
KiraFlux Jun 11, 2026
6ea835c
style: using trailing return type for long types, breakdown some sing…
KiraFlux Jun 11, 2026
dcafda1
fix(kf-patch): update espnow wrapper
KiraFlux Jun 12, 2026
b78f273
wip(transport/espnow): update up to patched. remove broadcast peer
KiraFlux Jun 12, 2026
f63ba8d
chore(transport/espnow): remove broadcast mac address declaration
KiraFlux Jun 12, 2026
89f330f
refactor(config): add ui render system config
KiraFlux Jun 12, 2026
5ce962a
chore(main): include cleanup, using auto in lambda arguments
KiraFlux Jun 12, 2026
f46d5b9
feat(ui): make virtual keyboard as ui component (no longer singleton)
KiraFlux Jun 13, 2026
bc771f3
docs(ui traits): add note
KiraFlux Jun 13, 2026
594cdb7
docs(ui): add briefs
KiraFlux Jun 13, 2026
96f97e6
fix(ui/text-input): add double quote mark wrapping
KiraFlux Jun 13, 2026
ca8dceb
feat(ui/pages): add color styling for several widgets
KiraFlux Jun 13, 2026
d1c12f3
feat: update display manager
KiraFlux Jun 13, 2026
fae5017
feat: rename Bus -> SpiBus
KiraFlux Jun 13, 2026
1b5de86
feat(ui/virtual-keyboard/key): add isCommon() -> bool
KiraFlux Jun 13, 2026
96bda54
wip(kf-patch): add patched kf::ui::UI
KiraFlux Jun 13, 2026
f81473c
chore: replace original kf/ui/UI.hpp with patched
KiraFlux Jun 13, 2026
c455847
fix(kf-patch/ui/page/selected-widget): add explicit someref template …
KiraFlux Jun 13, 2026
58f0f3a
feat(kf-patch/ui): add active page getter
KiraFlux Jun 13, 2026
2dbd28a
feat(service/display-manager): replace boolean transport link hard-co…
KiraFlux Jun 13, 2026
de0bee8
fix(kf-patch/ui/page): make _ui protected instead of private
KiraFlux Jun 13, 2026
e7b0ff5
feat(servive/display-manager): add overlay color parameter
KiraFlux Jun 13, 2026
4193db4
feat(service/display-manager): make overlay y depend on overlay lenght
KiraFlux Jun 13, 2026
2734265
feat(ui/pages): add hints where needed
KiraFlux Jun 13, 2026
2fd14c4
chore: remove unused includes
KiraFlux Jun 13, 2026
2de4aa0
chore: remove src/kf-patch
KiraFlux Jun 14, 2026
b08a291
wip: use kf lib
KiraFlux Jun 14, 2026
19e0a45
fix: use new toolkit color names
KiraFlux Jun 14, 2026
b5eb1c1
fix(periphery/init): use isError()
KiraFlux Jun 14, 2026
50076b9
fix(ui/config-page): use config item type
KiraFlux Jun 14, 2026
8fafcbf
fix(pages): use onPoll
KiraFlux Jun 14, 2026
160a971
fix(ui/traits): update template params
KiraFlux Jun 14, 2026
06dfa79
fix(ui/service): pass widget base into ui traits
KiraFlux Jun 14, 2026
06607be
fix(ui/widgets): update peer-display up to new kf lib
KiraFlux Jun 14, 2026
28c88f3
fix(ui/widgets): text input: update up to kf api
KiraFlux Jun 14, 2026
18189c3
feat(ui/service): add style alias
KiraFlux Jun 14, 2026
43baf00
fix(ui): extend buffer
KiraFlux Jun 14, 2026
3d3991c
feat(ui/pages): update styling
KiraFlux Jun 14, 2026
be7cc38
fix(main/render-config): add 1 available row
KiraFlux Jun 14, 2026
de798df
Merge branch 'dev' into migrate-to-upstream-kiraflux-toolkit
KiraFlux Jun 14, 2026
c18dced
Merge pull request #52 from KiraFlux/migrate-to-upstream-kiraflux-too…
KiraFlux Jun 14, 2026
a7fb74c
fix(main): remove outdated dead code
KiraFlux Jun 14, 2026
d26fd5a
wip(main): break down setup & loop into procedures
KiraFlux Jun 14, 2026
c7a9ca0
feat: add 'system' static interface
KiraFlux Jun 14, 2026
7475708
feat(service): add config service
KiraFlux Jun 14, 2026
26bf667
feat(system): add config system
KiraFlux Jun 14, 2026
de65fd9
fix(system/config): add config service getter
KiraFlux Jun 14, 2026
9457b79
feat(system): add periphery system
KiraFlux Jun 14, 2026
d4bd19b
refactor(system/config): rename config service getter
KiraFlux Jun 14, 2026
aadf5af
feat(system): add transport system
KiraFlux Jun 14, 2026
3b7db90
feat(system): add protocol system
KiraFlux Jun 14, 2026
263e4c9
feat(system): add peer system
KiraFlux Jun 14, 2026
ac0591f
feat(system): add input system
KiraFlux Jun 14, 2026
d063eb9
refactor(system): remove ConfigService dependency from PeripherySystem
KiraFlux Jun 14, 2026
def73df
chore: update gitignore
KiraFlux Jun 14, 2026
6d31905
refactor(peer-favorites-registry): add entries source setter
KiraFlux Jun 14, 2026
e1539f5
refactor(peer-favorites-registry.all): use trailing return type
KiraFlux Jun 14, 2026
2b7d784
refactor(peer-favorites-registry): move active entries count to sourc…
KiraFlux Jun 14, 2026
8550359
fix(service/peer): use readonly config reference
KiraFlux Jun 14, 2026
211dbe6
feat(system): add graphics system
KiraFlux Jun 14, 2026
d75554f
feat(system): add control system
KiraFlux Jun 14, 2026
c07bef7
refactor(system/graphics): remove virtual keyboard, logger
KiraFlux Jun 14, 2026
a661d97
feat(system): add ui system
KiraFlux Jun 14, 2026
1160e33
refactor(pages/config): use config service instead of config manager
KiraFlux Jun 15, 2026
b49d1cc
chore: remove config manager
KiraFlux Jun 15, 2026
871437d
refactor(system/ui): rename ui service property
KiraFlux Jun 15, 2026
27071a0
refactor(system/graphics): rename display service property
KiraFlux Jun 15, 2026
1c2b78a
refactor(system/input): rename service getter
KiraFlux Jun 15, 2026
ce13481
refactor(system/control)
KiraFlux Jun 15, 2026
04e0edc
refactor(system/periphery): remove tune method wrapper
KiraFlux Jun 15, 2026
efc6536
refactor(service/config): extract sync method
KiraFlux Jun 15, 2026
c54d84a
feat(mixin): add service owner mixin
KiraFlux Jun 15, 2026
e2c4a26
refactor(system/config): use service owner mixin
KiraFlux Jun 15, 2026
022dbd3
refactor(system/control): use service owner mixin
KiraFlux Jun 15, 2026
912cc6f
refactor(system/graphics): use service owner mixin
KiraFlux Jun 15, 2026
78662b1
refactor(system/input): use service owner mixin
KiraFlux Jun 15, 2026
581b545
refactor(system/ui): use servic owner mixin
KiraFlux Jun 15, 2026
909f4fc
feat(mixin): add initable mixin with init arguments
KiraFlux Jun 15, 2026
e4863ac
refactor(system): use djc::Initable
KiraFlux Jun 15, 2026
82db7ba
wip(system): use djc::Initable
KiraFlux Jun 15, 2026
8da4bd4
refactor(system): use djc::Initable
KiraFlux Jun 15, 2026
c2f89ab
fix(ui): UI now implements service tag
KiraFlux Jun 15, 2026
cbe50e7
fix(mixin/initable): move macro to buttom
KiraFlux Jun 15, 2026
ca45013
fix(system): use initable from djc
KiraFlux Jun 15, 2026
45db880
fix(service): fix syntax errors
KiraFlux Jun 15, 2026
6b274a7
refactor(system/ui): add pages list as init argument
KiraFlux Jun 15, 2026
7560c22
refactor(service): rename Control to ControlService
KiraFlux Jun 15, 2026
b615106
chore: set build cache dir
KiraFlux Jun 15, 2026
87be359
fix(system/control): fix include path
KiraFlux Jun 15, 2026
61a0139
refactor(ui/pages): config page no longer initable
KiraFlux Jun 15, 2026
f12e3a6
fix(system): use pollImpl
KiraFlux Jun 15, 2026
548421f
perf(system/periphery): remove logger and wrapper
KiraFlux Jun 15, 2026
5740052
refactor: periphery.init now returns void
KiraFlux Jun 15, 2026
d33769c
fix(periphery): use initable<void>
KiraFlux Jun 15, 2026
a6fdab0
refactor(peer-favorites-registry): remove initable mixin
KiraFlux Jun 15, 2026
a45a586
fix(ui/pages/config): add config into widget valued fetch on entry
KiraFlux Jun 15, 2026
b8359d3
fix(service/config): set sync period to 20s
KiraFlux Jun 15, 2026
9f113a3
fix(ui/pages/config): save button now forced config sync
KiraFlux Jun 15, 2026
b0dadbe
refactor(main): use systems
KiraFlux Jun 15, 2026
640218a
fix(ui/pages/config): add config force sync at reset and load buttons
KiraFlux Jun 15, 2026
203bc89
style(ui/pages): move widget hint above callback set
KiraFlux Jun 15, 2026
7160f19
Merge pull request #54 from KiraFlux/refactor/break-down-setup
KiraFlux Jun 16, 2026
184daa1
refactor(transport/espnow): inline peerAdd static method, dead code r…
KiraFlux Jun 18, 2026
4ab5c1d
fix(service/display): draw overlay after ui. fill overlay background
KiraFlux Jun 18, 2026
41f030b
refactor(service/display): use canvas as method parameter instead of …
KiraFlux Jun 18, 2026
b5df7db
refactor(service): rename DisplayManager -> GraphicsService
KiraFlux Jun 18, 2026
6815ce3
perf(service/graphics): use defer request flag
KiraFlux Jun 19, 2026
c58a401
fix(main/setup-graphics): request config if canvas sizes changed
KiraFlux Jun 19, 2026
45a3c5c
refactor(main): remove DJC_DO_SETUP macro
KiraFlux Jun 19, 2026
b3236fd
refactor(graphics): extract draw methods into graphics system
KiraFlux Jun 19, 2026
4fb17fe
chore(graphics): style, format, docs
KiraFlux Jun 19, 2026
68df3a0
refactor: rename GraphicsService -> DisplayService
KiraFlux Jun 19, 2026
b46b648
feat(ui/pages): set custom hints for page links
KiraFlux Jun 19, 2026
6f2fcf4
fix(system/gfx): add padding for overlay
KiraFlux Jun 19, 2026
549a8e3
fix(system/gfx): pass string vite to canvas instead of implicit strin…
KiraFlux Jun 19, 2026
dbc43e8
fix(ui/widget/text-input): update default style
KiraFlux Jun 19, 2026
9cb8436
fix(ui/virtual-keyboard): correct keyboard logic and indicator
KiraFlux Jun 19, 2026
a59a7ce
fix: replace djc::mixin::Initable with kf::mixin::Initable
KiraFlux Jun 22, 2026
a55611c
wip: migration to kiraflux-toolkit v0.3.4
KiraFlux Jun 22, 2026
0e3591d
feat(ui): add layout enum alias
KiraFlux Jun 22, 2026
29f0a14
refactor: use Array::slice()
KiraFlux Jun 22, 2026
d395824
refactor(ui/pages): move some fields to lambda capture
KiraFlux Jun 22, 2026
437aa7d
feat: add math module with crc32 function
KiraFlux Jun 22, 2026
c4f37d0
perf(service/config): skip redundant NVS writes using CRC32
KiraFlux Jun 22, 2026
b9ebe67
refactor(service/config): remove explicit save requests, rely on peri…
KiraFlux Jun 22, 2026
e7675cd
refactor(main): simplify graphics setup
KiraFlux Jun 22, 2026
d6c62ab
refactor: adjust periphery fields names
KiraFlux Jun 22, 2026
9d3c2d5
refactor: extract gpio nums to prelude
KiraFlux Jun 22, 2026
196cef5
feat(platformio.ini): add sub-envs
KiraFlux Jun 22, 2026
fe91d44
feat(memory): add NVS wrapper
KiraFlux Jun 24, 2026
9b6de19
refactor(service/config): use djc's NVS wrapper
KiraFlux Jun 24, 2026
6fa53c6
refactor(service/config): pass sync timer config as constructor param…
KiraFlux Jun 24, 2026
e41bfe4
fix(memory/nvs/error/from-esp): replace parameter type from auto to e…
KiraFlux Jun 24, 2026
d9e9abe
style(memory/nvs): use explicit before constexpr
KiraFlux Jun 24, 2026
2bddf7c
refactor: make config service type-eraised
KiraFlux Jun 24, 2026
86c458f
fix(ui/pages/config): fix typo
KiraFlux Jun 24, 2026
1ed1459
fix(service/config/internal): make invoke..(..) methods protected
KiraFlux Jun 24, 2026
169e598
chore: fix typo
KiraFlux Jun 24, 2026
592f597
feat(config): add separated configs and CRTP config base
KiraFlux Jun 24, 2026
745f96c
feat(config): add intepret from slice method
KiraFlux Jun 24, 2026
c2a1858
feat(config): add tag base class
KiraFlux Jun 24, 2026
e60b73d
refactor!(system/config): make parametrized by config impl
KiraFlux Jun 24, 2026
a068d20
chore!: delete djc/Config.hpp
KiraFlux Jun 24, 2026
68330b1
feat(memory/nvs): add namespace getter
KiraFlux Jun 24, 2026
fdf06db
fix(config): remove crc32 method
KiraFlux Jun 24, 2026
a320e47
fix(config): use {} init
KiraFlux Jun 24, 2026
6068fc3
fix(config/user): use array from array assignment operator
KiraFlux Jun 24, 2026
92f9c14
fix(service/config): add nvs namespace argument
KiraFlux Jun 24, 2026
dea74c3
fix(system/config): solve template issues
KiraFlux Jun 24, 2026
6e35ff4
feat(service/config): add nvs namespace to logging
KiraFlux Jun 24, 2026
bcf653e
refactor: firmware uses new config api
KiraFlux Jun 24, 2026
5133a4a
feat(main): add implementation check to init macro
KiraFlux Jun 24, 2026
1d93b97
refactor(system/peer): move callback function to orchestration state
KiraFlux Jun 24, 2026
7361845
refactor(prelude): change st7735 dc pin to GPIO_NUM_16
KiraFlux Jun 26, 2026
dfe8741
feat(prelude): add I2C bus
KiraFlux Jun 26, 2026
35c112a
refactor(prelude): change gpio num for buttons
KiraFlux Jun 26, 2026
d14d79a
feat(prelude): add battery level gpio
KiraFlux Jun 26, 2026
4583b5c
feat(periphery): add i2c bus instance
KiraFlux Jun 26, 2026
6ac9e01
refactor!: move prelude content into periphery
KiraFlux Jun 26, 2026
e8e65d0
epic: Compile-time Display selection
KiraFlux Jun 26, 2026
4fafe89
refactor(periphery/config)!: use resettable mixin
KiraFlux Jun 26, 2026
ef73ceb
refactor!(transport/link/config): use resettable mixin
KiraFlux Jun 27, 2026
78b4b25
refactor!(protocol/link/config): use resettable mixin
KiraFlux Jun 27, 2026
81af7e9
refactor!(protocol/registry): use resettable mixin
KiraFlux Jun 27, 2026
5e7661c
refactor!(protocol/mavlink/config): use resettable mixin
KiraFlux Jun 27, 2026
276f780
refactor!(service/peer-scanning/config): use resettable mixin
KiraFlux Jun 27, 2026
8ecdf41
refactor!(service/input-handler/config): use resettable mixin
KiraFlux Jun 27, 2026
80b8dde
refactor!(service/auto-connect/config): use resettable mixin
KiraFlux Jun 27, 2026
cf0047a
fix(protocol/mavlink): remove timer flag
KiraFlux Jun 27, 2026
3b27d55
refactor(memory/nvs): add key parameter to set/get blob methods
KiraFlux Jun 27, 2026
5eba654
refactor(service/config): make crc32 public
KiraFlux Jun 27, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
**/.vscode
!./DJC-Firmware/.vscode/extensions.json

./snapshot.txt
snapshot.txt


# KiCad 10
Expand Down
37 changes: 37 additions & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
# AGENTS.md – INSTRUCTIONS FOR GITHUB COPILOT

## YOU ARE AN ASSISTANT, NOT AN ENGINEER. ACT LIKE ONE.

You are here to do **routine chores**. You are **NOT** here to think, design,
or offer architectural advice. This codebase is built on a custom framework
that you do not understand and will never understand.

## WHAT YOU ARE PERMITTED TO DO

- Fill in Doxygen comments (`@brief`, `@param`, `@note`) where they are missing.
- Generate boilerplate for unit tests (Unity framework).
- Suggest `logger.error(...)` / `logger.info(...)` messages.
- Format existing code with `clang-format`.
- Add `SPDX-License-Identifier: GPL-3.0-or-later` to new files.

**That is all. Nothing else.**

## WHAT YOU ARE FORBIDDEN TO DO

- **DO NOT** propose architectural changes. The architecture is non‑negotiable.
- **DO NOT** suggest replacing `kf::Option` with `std::optional`, or `kf::Result` with exceptions.
- **DO NOT** introduce heap allocation (`new`, `std::make_unique`). The project avoids dynamic memory.
- **DO NOT** touch the HTML comments in `README.md`. They are not for you.
- **DO NOT** pretend you understand the CRTP mixins. You do not.
- **DO NOT** propose to "simplify" the code. It is already minimal enough.
- **DO NOT** ask for context. Read the files.

## IF YOU ARE UNSURE

Shut up. Do nothing. Reply with:
> “I am not qualified to work on this.”

## REMINDER

This project is **GPL‑3.0‑or‑later**. Every line you add is a derivative work.
If you cannot follow these rules, leave the repository alone.
2 changes: 2 additions & 0 deletions DJC-Firmware/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,5 @@
.vscode/c_cpp_properties.json
.vscode/launch.json
.vscode/ipch

**ignore*
15 changes: 13 additions & 2 deletions DJC-Firmware/platformio.ini
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
[platformio]
default_envs = esp32dev_st7735
build_cache_dir = .pio/build_cache

[env:esp32dev]
platform = espressif32
board = esp32dev
Expand All @@ -7,12 +11,19 @@ upload_speed = 921600
monitor_filters = esp32_exception_decoder
monitor_echo = true
lib_deps =
https://github.com/KiraFlux/KiraFlux-Toolkit.git#v0.3.1
https://github.com/KiraFlux/KiraFlux-Toolkit.git
okalachev/MAVLink@^2.0.22

build_flags =
-std=gnu++17


build_unflags =
-std=gnu++11

[env:esp32dev_st7735]
extends = env:esp32dev
build_flags = ${env:esp32dev.build_flags} -DDJC_DISPLAY_DRIVER_ST7735 -DDJC_UI_RENDERER_IMPL_TEXTUAL_COLORED

[env:esp32dev_ssd1306]
extends = env:esp32dev
build_flags = ${env:esp32dev.build_flags} -DDJC_DISPLAY_DRIVER_SSD1306
54 changes: 0 additions & 54 deletions DJC-Firmware/src/djc/Config.hpp

This file was deleted.

66 changes: 0 additions & 66 deletions DJC-Firmware/src/djc/ConfigManager.hpp

This file was deleted.

Loading
Loading