Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
120 commits
Select commit Hold shift + click to select a range
071815e
feat(ble): try trouble example
HaoboGu Aug 26, 2024
c24d5b1
feat(trouble): make trouble example compile
HaoboGu Aug 27, 2024
d164d3e
Merge branch 'main' into feat/trouble
HaoboGu Sep 12, 2024
69890c3
feat(ble): update trouble connection
HaoboGu Sep 12, 2024
5fd7ec6
feat(ble): update trouble usage
HaoboGu Sep 12, 2024
fd1bc6a
feat(ble): update trouble
HaoboGu Sep 13, 2024
a140608
refactor(ble): remove unwraps
HaoboGu Sep 13, 2024
2bebeee
Merge branch 'main' into feat/trouble
HaoboGu Sep 18, 2024
36871f5
chore: use latest trouble-host
HaoboGu Sep 18, 2024
9d95c4f
Merge branch 'main' into feat/trouble
HaoboGu Sep 23, 2024
5922af3
Merge branch 'main' into feat/trouble
HaoboGu Oct 17, 2024
8aacbff
chore: update dep version
HaoboGu Oct 17, 2024
a7d7159
Merge branch 'main' into feat/trouble
HaoboGu Oct 29, 2024
b1eed0f
Merge branch 'main' into feat/trouble
HaoboGu Nov 12, 2024
c37b12d
Merge remote-tracking branch 'origin/main' into feat/trouble
HaoboGu Nov 12, 2024
47b97b1
Merge branch 'main' into feat/trouble
HaoboGu Nov 21, 2024
a8bb565
feat(ble): update trouble version
HaoboGu Nov 22, 2024
fb9b95d
Merge branch 'main' into feat/trouble
HaoboGu Nov 29, 2024
ef666ca
Merge branch 'main' into feat/trouble
HaoboGu Dec 5, 2024
d7150b6
Merge branch 'main' into feat/trouble
HaoboGu Jan 6, 2025
da91a96
Merge branch 'main' into feat/trouble
HaoboGu Mar 19, 2025
9e26cac
feat(ble): try trouble battery service
HaoboGu Mar 20, 2025
e4f6cb5
Merge branch 'feat/test' into feat/trouble
HaoboGu Mar 20, 2025
7c7ac38
feat(ble): initial work of TrouBLE migration
HaoboGu Mar 20, 2025
5a95548
feat(ble): add initial trouble support
HaoboGu Mar 24, 2025
39029d8
feat(trouble): make nrf52 work with trouble
HaoboGu Mar 26, 2025
60c01bb
feat(trouble): add usb dual mode support
HaoboGu Mar 26, 2025
aa57c4f
Merge remote-tracking branch 'origin/feat/encoder' into feat/trouble
HaoboGu Mar 26, 2025
ba092e4
feat(trouble): dual mode main loop rework
HaoboGu Mar 27, 2025
01eeca6
fix: fix trouble dual mode switching
HaoboGu Mar 27, 2025
5c16ddd
feat(trouble): add profile manager
HaoboGu Mar 27, 2025
98295bf
fix(trouble): fix active profile saving error
HaoboGu Mar 27, 2025
3cd7a90
fix(trouble): skip saving same bonding info
HaoboGu Mar 28, 2025
a0ad9c2
refactor: remove unnecessary log
HaoboGu Mar 28, 2025
913f7ee
feat(trouble): add battery service, retry when setting conn params fails
HaoboGu Mar 28, 2025
5c45676
chore: add rustfmt.toml
HaoboGu Mar 28, 2025
9832c08
feat: update trouble examples, use ref in api
HaoboGu Mar 28, 2025
5cab665
refactor: reformat the project
HaoboGu Mar 28, 2025
625b931
feat(example): migrate esp32 examples to trouble
HaoboGu Mar 28, 2025
ea4b922
fix(example): fix gpio pins of esp examples
HaoboGu Mar 28, 2025
ba68d16
fix: fix usb/ble mode switching
HaoboGu Mar 29, 2025
5c3ad90
fix(example): fix esp32 and nrf52840 example
HaoboGu Mar 29, 2025
2b2a4f8
feat(example): update nRF examples, fix minor issues
HaoboGu Mar 29, 2025
3225d58
refactor(example): remove unused comments from all examples
HaoboGu Mar 29, 2025
eddf741
refactor: use `AtomicBool` for connection state
HaoboGu Mar 29, 2025
ea2ebe7
feat(example): make all unibody examples work
HaoboGu Mar 29, 2025
6614c95
Merge remote-tracking branch 'origin/main' into feat/trouble
HaoboGu Mar 29, 2025
8994548
feat(split): basic connection between splits using trouble
HaoboGu Mar 30, 2025
7b62dbf
feat(split): make split central work
HaoboGu Mar 30, 2025
01b58dc
fix(split): fix central to peri message writing
HaoboGu Mar 30, 2025
8345c1f
fix(split): fix peripheral reconnection issue
HaoboGu Mar 31, 2025
174787f
Merge remote-tracking branch 'origin/main' into feat/trouble
HaoboGu Mar 31, 2025
7d1c379
fix: fix macro and example imports
HaoboGu Mar 31, 2025
668c827
feat(example): update esp examples to latest api
HaoboGu Mar 31, 2025
796ffc6
feat(macro): migrate rmk-macro to TrouBLE
HaoboGu Mar 31, 2025
549b1ea
fix(dep): use git version of TrouBLE
HaoboGu Mar 31, 2025
754ba6d
ci: merge esp32 ci task, fix ci error
HaoboGu Mar 31, 2025
43b76a5
feat(macro): migrate macro to TrouBLE, fix errors
HaoboGu Mar 31, 2025
80ba64e
feat(example): update examples to latest API, use TrouBLE
HaoboGu Mar 31, 2025
2aa05fc
refactor: fix ci error, fmt code
HaoboGu Mar 31, 2025
4d6e456
ci: fix esp32s3 ci env
HaoboGu Mar 31, 2025
8d3d95d
ci: try to fix esp32s3 env in ci
HaoboGu Apr 1, 2025
e7739ec
feat: update linker scripts for compatibility of adafruit nrf52 bootl…
HaoboGu Apr 1, 2025
162e10b
Merge branch 'feat/trouble' of github.com:HaoboGu/rmk into feat/trouble
HaoboGu Apr 1, 2025
c2f9a3a
refactor: fmt code, update checking scripts and vscode config
HaoboGu Apr 1, 2025
98af318
fix(ble): fix wrong report map size, remove unsafe
HaoboGu Apr 2, 2025
1dbee3e
Merge remote-tracking branch 'origin/main' into feat/trouble
HaoboGu Apr 3, 2025
16f18b9
doc: split keyboard configuration to several docs
HaoboGu Apr 3, 2025
b0559ff
refactor: fmt code
HaoboGu Apr 3, 2025
6c5b5c7
Merge branch 'main' into feat/trouble
HaoboGu Apr 7, 2025
f08e44f
doc: merge latest doc
HaoboGu Apr 7, 2025
e8273fb
chore: merge latest main
HaoboGu Apr 7, 2025
48d0e0d
feat(ble): use FICR data as BLE address for nRF52
HaoboGu Apr 7, 2025
c51f7de
feat: use the global battery atomic value instead of the channel
HaoboGu Apr 7, 2025
188ccd4
fix: fix wrong battery level displayed
HaoboGu Apr 7, 2025
c8e92af
chore: update core deps to latest
HaoboGu Apr 8, 2025
550621a
fix: fix esp32 examples
HaoboGu Apr 8, 2025
f31ea02
Merge remote-tracking branch 'origin/main' into feat/trouble
HaoboGu Apr 10, 2025
367648c
fix: update battery service
HaoboGu Apr 10, 2025
1d4ef27
doc(example): update readmes for examples
HaoboGu Apr 10, 2025
eb064ee
doc: update documentations, fix typo
HaoboGu Apr 10, 2025
1998a14
fix(test): fix unittest failure
HaoboGu Apr 10, 2025
44de53a
feat(ble): store cccd value table
HaoboGu Apr 11, 2025
6d93271
refactor: fmt code
HaoboGu Apr 11, 2025
c514981
refactor: final clean
HaoboGu Apr 11, 2025
be15848
Merge remote-tracking branch 'origin/main' into feat/trouble
HaoboGu Apr 11, 2025
fdeaa1a
Merge remote-tracking branch 'origin/main' into feat/trouble
HaoboGu Apr 11, 2025
4139665
doc: fix typo
HaoboGu Apr 11, 2025
0afd659
Merge remote-tracking branch 'origin/main' into feat/trouble
HaoboGu Apr 14, 2025
73206b8
fix: fix imports
HaoboGu Apr 14, 2025
fe068a9
chore: update `Cargo.lock`s for examples
HaoboGu Apr 14, 2025
344d854
doc: update documentation
HaoboGu Apr 14, 2025
9d2d298
Merge pull request #301 from HaoboGu/feat/trouble
HaoboGu Apr 14, 2025
f3bd52c
chore: adjust split connection parameter
HaoboGu Apr 14, 2025
1240d43
test(keymap): fix unit test
HaoboGu Apr 14, 2025
7b3c0f0
test: add fork unit tests back
HaoboGu Apr 14, 2025
182d341
doc: fix documentation link
HaoboGu Apr 14, 2025
7f1af21
doc(split): update doc for split keyboard to latest API
HaoboGu Apr 14, 2025
2190b27
fixed layer number check (PR #327 related)
tib888 Apr 14, 2025
bc7a5d3
fix: fix wrong connection state for split keyboards
HaoboGu Apr 14, 2025
dd9c7d3
Merge pull request #334 from tib888/main
HaoboGu Apr 14, 2025
6bf0aad
Merge pull request #335 from HaoboGu/fix/conn_state
HaoboGu Apr 14, 2025
f7d0f57
fix: fix import
HaoboGu Apr 14, 2025
c6e8fcd
fix: fix battery display error and some warnings in example
HaoboGu Apr 14, 2025
152354a
fix/joystick: optimize the first polling and parameters about duration
drindr Apr 14, 2025
d1781e5
fix/adc: adc configurations about time in examples
drindr Apr 14, 2025
713eeb6
Merge pull request #336 from drindr/fix/joystick
HaoboGu Apr 14, 2025
8db4cc1
feat: add charging state reader
HaoboGu Apr 15, 2025
0bdb2d7
Merge pull request #339 from HaoboGu/feat/charging_state_input
HaoboGu Apr 15, 2025
ed095f8
feat(ble): add advertising timeout
HaoboGu Apr 16, 2025
4d24b38
fix: fix nRF52833 build error, remove several logs
HaoboGu Apr 16, 2025
b60acb6
refactor(ble): change advertise timeout time to 300s
HaoboGu Apr 16, 2025
9791209
refactor: remove resend keyboard report if the advertising timeouts
HaoboGu Apr 17, 2025
1dece13
Merge pull request #341 from HaoboGu/feat/sleep
HaoboGu Apr 17, 2025
f5c305d
fix: fix battery status and vial encoder setting
HaoboGu Apr 18, 2025
daf211e
Merge pull request #342 from HaoboGu/fix/battery
HaoboGu Apr 18, 2025
87b0fe9
doc: fix wrong doc link
HaoboGu Apr 20, 2025
70bda6a
Fix generated clippy::redundant-static-lifetimes warning
IniterWorker Apr 21, 2025
18cdf31
Merge pull request #345 from IniterWorker/clippy/fix-warning-const-gen
HaoboGu Apr 21, 2025
bee72a9
feat: new tap hold implementation
hitsmaxft Apr 24, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
44 changes: 0 additions & 44 deletions .github/workflows/build esp.yml

This file was deleted.

26 changes: 24 additions & 2 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ env:
CARGO_TERM_COLOR: always

jobs:
build_examples:
build-examples:
runs-on: ubuntu-latest
strategy:
matrix:
Expand All @@ -35,6 +35,8 @@ jobs:
- stm32f1
- stm32f4
- stm32h7
- esp32c3_ble
- esp32c6_ble
example_type:
- use_rust
- use_config
Expand All @@ -47,13 +49,33 @@ jobs:
- name: Install cargo-make and flip-link
run: cargo binstall cargo-make flip-link
- name: Install target
run: rustup target add thumbv6m-none-eabi thumbv7em-none-eabihf thumbv7m-none-eabi
run: rustup target add thumbv6m-none-eabi thumbv7em-none-eabihf thumbv7m-none-eabi riscv32imac-unknown-none-elf riscv32imc-unknown-none-elf
- name: Build example
working-directory: ./examples/${{ matrix.example_type }}/${{ matrix.example }}
run: cargo build --release
- name: Build example uf2
if: ${{ matrix.example != 'esp32c3_ble' && matrix.example != 'esp32c6_ble' }}
working-directory: ./examples/${{ matrix.example_type }}/${{ matrix.example }}
run: cargo make uf2 --release
build-esp32s3:
runs-on: ubuntu-latest
strategy:
matrix:
chip:
- esp32s3
example_type:
- use_rust
- use_config
steps:
- uses: cargo-bins/cargo-binstall@main
- uses: actions/checkout@v3
- name: Install ldproxy and espup
run: cargo binstall ldproxy espup -y
- name: Install esp toolchain
run: espup install
- name: Build
working-directory: ./examples/${{ matrix.example_type }}/${{ matrix.chip }}_ble
run: . /home/runner/export-esp.sh && cargo +esp build --release
binary-size:
# Copied from sequential-storage: https://github.com/tweedegolf/sequential-storage/blob/master/.github/workflows/ci.yaml
runs-on: ubuntu-latest
Expand Down
52 changes: 0 additions & 52 deletions .github/workflows/build_docs.sh

This file was deleted.

2 changes: 1 addition & 1 deletion .github/workflows/unit_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,4 +35,4 @@ jobs:
- run: rustup update ${{ matrix.toolchain }} && rustup default ${{ matrix.toolchain }}
- name: Run tests
working-directory: ./rmk
run: cargo test --tests --no-default-features --verbose
run: cargo test --tests --no-default-features features="log, std" --verbose
53 changes: 24 additions & 29 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@
{
"[rust]": {
"editor.formatOnSave": true,
"editor.formatOnSaveMode": "file",
},
"cortex-debug.variableUseNaturalFormat": false,
"rust-analyzer.check.allTargets": false,
"rust-analyzer.check.noDefaultFeatures": true,
Expand All @@ -7,57 +11,48 @@
// Uncomment the target of your chip.
//"rust-analyzer.cargo.target": "thumbv6m-none-eabi",
//"rust-analyzer.cargo.target": "thumbv7m-none-eabi",
"rust-analyzer.cargo.target": "thumbv7em-none-eabi",
//"rust-analyzer.cargo.target": "thumbv7em-none-eabihf",
// "rust-analyzer.cargo.target": "thumbv7em-none-eabi",
// "rust-analyzer.cargo.target": "thumbv7em-none-eabihf",
//"rust-analyzer.cargo.target": "thumbv8m.main-none-eabihf",
//"rust-analyzer.cargo.target": "riscv32imafc-unknown-none-elf",
//"rust-analyzer.cargo.target": "riscv32imc-esp-espidf",
//"rust-analyzer.cargo.target": "riscv32imac-esp-espidf",
//"rust-analyzer.cargo.target": "xtensa-esp32s3-espidf",
//"rust-analyzer.cargo.target": "riscv32imafc-unknown-none-elf",
"rust-analyzer.cargo.features": [
// Comment out these features when working on the examples. Most example crates do not have any cargo features.
// "stm32f446re",
// "time-driver-any",
// "unstable-pac",
// "exti",
// "rt",
],
// "rust-analyzer.cargo.target": "riscv32imc-unknown-none-elf", // for esp32c3
// "rust-analyzer.cargo.target": "riscv32imac-unknown-none-elf", // for esp32c6
"rust-analyzer.linkedProjects": [
"rmk-macro/Cargo.toml",
"rmk/Cargo.toml",
// To work on the examples, comment the line above and all of the cargo.features lines,
// then uncomment ONE line below to select the chip you want to work on.
// This makes rust-analyzer work on the example crate and all its dependencies.
// "examples/use_config/esp32c3_ble/Cargo.toml",
// "examples/use_config/esp32c6_ble/Cargo.toml",
// "examples/use_config/esp32s3_ble/Cargo.toml",
// "examples/use_config/nef52832_ble/Cargo.toml",
// "examples/use_config/nrf52840_ble/Cargo.toml",
// "examples/use_config/nrf52840_ble_split/Cargo.toml",
// "examples/use_config/nrf52840_ble_split_direct_pin/Cargo.toml",
// "examples/use_config/rp2040/Cargo.toml"
// "examples/use_config/rp2040_direct_pin/Cargo.toml"
// "examples/use_config/rp2040_split/Cargo.toml"
// "examples/use_config/rp2040_split_pio/Cargo.toml"
// "examples/use_config/stm32f1/Cargo.toml",
// "examples/use_config/stm32f4/Cargo.toml",
// "examples/use_config/stm32h7/Cargo.toml",
// "examples/use_rust/ch32v307/Cargo.toml",
// "examples/use_rust/esp32c3_ble/Cargo.toml",
// "examples/use_rust/esp32c6_ble/Cargo.toml",
// "examples/use_rust/esp32s3_ble/Cargo.toml",
// "examples/use_rust/hpm5300/Cargo.toml",
// "examples/use_rust/nef52832_ble/Cargo.toml",
// "examples/use_rust/nrf52840/Cargo.toml",
// "examples/use_rust/nrf52840_ble/Cargo.toml",
// "examples/use_rust/nrf52840_ble_split/Cargo.toml",
// "examples/use_rust/py32f07x/Cargo.toml",
// "examples/use_rust/rp2040/Cargo.toml"
// "examples/use_rust/rp2040_direct_pin/Cargo.toml"
// "examples/use_rust/rp2040_split/Cargo.toml"
// "examples/use_rust/rp2040_split_pio/Cargo.toml"
// "examples/use_rust/rp2350/Cargo.toml"
// "examples/use_rust/stm32f1/Cargo.toml",
// "examples/use_rust/stm32f4/Cargo.toml",
// "examples/use_rust/stm32h7/Cargo.toml",
// "examples/use_config/esp32c3_ble/Cargo.toml",
// "examples/use_config/esp32c6_ble/Cargo.toml",
// "examples/use_config/esp32s3_ble/Cargo.toml",
// "examples/use_config/nef52832_ble/Cargo.toml",
// "examples/use_config/nrf52840_ble/Cargo.toml",
// "examples/use_config/nrf52840_ble_split/Cargo.toml",
// "examples/use_config/nrf52840_ble_split_direct_pin/Cargo.toml",
// "examples/use_config/nrf52840_usb/Cargo.toml",
// "examples/use_config/rp2040/Cargo.toml"
// "examples/use_config/rp2040_direct_pin/Cargo.toml"
// "examples/use_config/rp2040_split/Cargo.toml"
// "examples/use_config/stm32f1/Cargo.toml",
// "examples/use_config/stm32f4/Cargo.toml",
// "examples/use_config/stm32h7/Cargo.toml",
],
}
12 changes: 11 additions & 1 deletion docs/src/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,17 @@

# Features
- [Keyboard Configuration](keyboard_configuration.md)
- [Keymap](keymap.md)
- [Keyboard and matrix](configuration/keyboard_matrix.md)
- [Layout](configuration/layout.md)
- [Split keyboard](configuration/split.md)
- [Storage](configuration/storage.md)
- [Behavior](configuration/behavior.md)
- [Input device](configuration/input_device.md)
- [Wireless/Bluetooth](configuration/wireless.md)
- [Light](configuration/light.md)
- [Appendix](configuration/appendix.md)
- [Keymap](keymap/keymap.md)
- [Special keys](keymap/special_keys.md)
- [Vial support](vial_support.md)
- [Wireless](wireless.md)
- [Low-power](low_power.md)
Expand Down
6 changes: 3 additions & 3 deletions docs/src/binary_size_optimization.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,8 @@ By default, RMK uses `panic-probe` to print error messages if panic occurs. But
```diff
# In your binary's Cargo.toml

- panic-probe = { version = "0.3", features = ["print-defmt"] }
+ panic-halt = "0.2"
- panic-probe = { version = "1.0", features = ["print-defmt"] }
+ panic-halt = "1.0"
```

The in `main.rs`, use `panic-halt` instead:
Expand All @@ -51,7 +51,7 @@ You can also remove the entire defmt-rtt logger to save flash.

```diff
# In your binary's Cargo.toml
- defmt-rtt = "0.4"
- defmt-rtt = "1.0"
```

In this case, you have to implement an empty defmt logger.
Expand Down
Loading
Loading