Skip to content

Commit d1b80cf

Browse files
committed
Update BLEKeyboard deps to NimBLE 2.x and ESP32-NimBLE-Keyboard; fix Arduino workflow lib install
1 parent 21b2cb2 commit d1b80cf

6 files changed

Lines changed: 67 additions & 74 deletions

File tree

.github/workflows/arduino-esp-v2-build-check.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,9 @@ jobs:
8787
platform-version: 2.0.17
8888
platform: esp32
8989
archi: esp32
90-
extra-libraries: ',NimBLE-Arduino,ESP32 BLE Keyboard'
90+
platform-url: https://espressif.github.io/arduino-esp32/package_esp32_index.json
91+
extra-libraries: ',NimBLE-Arduino'
92+
extra-arduino-lib-install-args: '--git-url https://github.com/wakwak-koba/ESP32-NimBLE-Keyboard.git'
9193

9294
steps:
9395
- name: Checkout
@@ -102,6 +104,7 @@ jobs:
102104
platform-url: ${{ matrix.platform-url }}
103105
required-libraries: ${{ env.REQUIRED_LIBRARIES }}${{ matrix.extra-libraries }}
104106
extra-arduino-cli-args: ${{ matrix.cli-args }}
107+
extra-arduino-lib-install-args: ${{ matrix.extra-arduino-lib-install-args }}
105108
#build-properties: ${{ toJson(matrix.build-properties) }}
106109
sketch-names: ${{ matrix.sketch }}.ino
107110
sketch-names-find-start: ${{ env.SKETCH_NAMES_FIND_START }}/${{ matrix.unit }}

.github/workflows/arduino-esp-v3-build-check.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,9 @@ jobs:
108108
platform-version: 3.3.6
109109
platform: esp32
110110
archi: esp32
111-
extra-libraries: ',NimBLE-Arduino,ESP32 BLE Keyboard'
111+
platform-url: https://espressif.github.io/arduino-esp32/package_esp32_index.json
112+
extra-libraries: ',NimBLE-Arduino'
113+
extra-arduino-lib-install-args: '--git-url https://github.com/wakwak-koba/ESP32-NimBLE-Keyboard.git'
112114

113115
steps:
114116
- name: Checkout
@@ -123,6 +125,7 @@ jobs:
123125
platform-url: ${{ matrix.platform-url }}
124126
required-libraries: ${{ env.REQUIRED_LIBRARIES }}${{ matrix.extra-libraries }}
125127
extra-arduino-cli-args: ${{ matrix.cli-args }}
128+
extra-arduino-lib-install-args: ${{ matrix.extra-arduino-lib-install-args }}
126129
#build-properties: ${{ toJson(matrix.build-properties) }}
127130
sketch-names: ${{ matrix.sketch }}.ino
128131
sketch-names-find-start: ${{ env.SKETCH_NAMES_FIND_START }}/${{ matrix.unit }}

.github/workflows/arduino-m5-build-check.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,9 @@ jobs:
110110
platform-version: 3.2.5
111111
platform: m5stack
112112
archi: esp32
113-
extra-libraries: ',NimBLE-Arduino,ESP32 BLE Keyboard'
113+
platform-url: https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json
114+
extra-libraries: ',NimBLE-Arduino'
115+
extra-arduino-lib-install-args: '--git-url https://github.com/wakwak-koba/ESP32-NimBLE-Keyboard.git'
114116

115117
steps:
116118
- name: Checkout
@@ -125,6 +127,7 @@ jobs:
125127
platform-url: ${{ matrix.platform-url }}
126128
required-libraries: ${{ env.REQUIRED_LIBRARIES }}${{ matrix.extra-libraries }}
127129
extra-arduino-cli-args: ${{ matrix.cli-args }}
130+
extra-arduino-lib-install-args: ${{ matrix.extra-arduino-lib-install-args }}
128131
#build-properties: ${{ toJson(matrix.build-properties) }}
129132
sketch-names: ${{ matrix.sketch }}.ino
130133
sketch-names-find-start: ${{ env.SKETCH_NAMES_FIND_START }}/${{ matrix.unit }}

examples/UnitUnified/BLEKeyboard/main/BLEKeyboard.cpp

Lines changed: 7 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -107,34 +107,18 @@ void setup()
107107
m5::utility::delay(10000);
108108
}
109109
}
110-
} else if (board == m5::board_t::board_M5StickS3) {
110+
} else {
111+
#if defined(CONFIG_IDF_TARGET_ESP32S3) && defined(SOC_I2C_NUM) && (SOC_I2C_NUM >= 2)
111112
// StickS3: Wire (I2C_NUM_0) is used internally for M5PM1/BMI270.
112-
// Define STICKS3_USE_SOFT_I2C to use SoftwareI2C instead of Wire1.
113-
M5_LOGI("getPin(StickS3): SDA:%u SCL:%u", pin_num_sda, pin_num_scl);
114-
#if defined(STICKS3_USE_SOFT_I2C)
115-
m5::hal::bus::I2CBusConfig i2c_cfg;
116-
i2c_cfg.pin_sda = m5::hal::gpio::getPin(pin_num_sda);
117-
i2c_cfg.pin_scl = m5::hal::gpio::getPin(pin_num_scl);
118-
auto i2c_bus = m5::hal::bus::i2c::getBus(i2c_cfg);
119-
M5_LOGI("Bus:%d", i2c_bus.has_value());
120-
if (!Units.add(unit, i2c_bus ? i2c_bus.value() : nullptr) || !Units.begin()) {
113+
auto& wire = (board == m5::board_t::board_M5StickS3) ? Wire1 : Wire;
121114
#else
122-
Wire1.end();
123-
Wire1.begin(pin_num_sda, pin_num_scl, 400 * 1000U);
124-
if (!Units.add(unit, Wire1) || !Units.begin()) {
115+
auto& wire = Wire;
125116
#endif
126-
M5_LOGE("Failed to begin");
127-
lcd.fillScreen(TFT_RED);
128-
while (true) {
129-
m5::utility::delay(10000);
130-
}
131-
}
132-
} else {
133117
// Using TwoWire
134118
M5_LOGI("getPin: SDA:%u SCL:%u", pin_num_sda, pin_num_scl);
135-
Wire.end();
136-
Wire.begin(pin_num_sda, pin_num_scl, 400 * 1000U);
137-
if (!Units.add(unit, Wire) || !Units.begin()) {
119+
wire.end();
120+
wire.begin(pin_num_sda, pin_num_scl, 400 * 1000U);
121+
if (!Units.add(unit, wire) || !Units.begin()) {
138122
M5_LOGE("Failed to begin");
139123
lcd.fillScreen(TFT_RED);
140124
while (true) {

examples/UnitUnified/PlotToSerial/main/PlotToSerial.cpp

Lines changed: 9 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -120,25 +120,18 @@ void setup()
120120
m5::utility::delay(10000);
121121
}
122122
}
123-
} else if (board == m5::board_t::board_M5StickS3) {
124-
// StickS3: Wire (I2C_NUM_0) is used internally for M5PM1/BMI270.
125-
// Define STICKS3_USE_SOFT_I2C to use SoftwareI2C instead of Wire1.
126-
M5_LOGI("getPin(StickS3): SDA:%u SCL:%u", pin_num_sda, pin_num_scl);
127-
Wire1.end();
128-
Wire1.begin(pin_num_sda, pin_num_scl, 400 * 1000U);
129-
if (!Units.add(unit, Wire1) || !Units.begin()) {
130-
M5_LOGE("Failed to begin");
131-
lcd.fillScreen(TFT_RED);
132-
while (true) {
133-
m5::utility::delay(10000);
134-
}
135-
}
136123
} else {
124+
#if defined(CONFIG_IDF_TARGET_ESP32S3) && defined(SOC_I2C_NUM) && (SOC_I2C_NUM >= 2)
125+
// StickS3: Wire (I2C_NUM_0) is used internally for M5PM1/BMI270.
126+
auto& wire = (board == m5::board_t::board_M5StickS3) ? Wire1 : Wire;
127+
#else
128+
auto& wire = Wire;
129+
#endif
137130
// Using TwoWire
138131
M5_LOGI("getPin: SDA:%u SCL:%u", pin_num_sda, pin_num_scl);
139-
Wire.end();
140-
Wire.begin(pin_num_sda, pin_num_scl, 400 * 1000U);
141-
if (!Units.add(unit, Wire) || !Units.begin()) {
132+
wire.end();
133+
wire.begin(pin_num_sda, pin_num_scl, 400 * 1000U);
134+
if (!Units.add(unit, wire) || !Units.begin()) {
142135
M5_LOGE("Failed to begin");
143136
lcd.fillScreen(TFT_RED);
144137
while (true) {

platformio.ini

Lines changed: 39 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -410,117 +410,124 @@ build_src_filter = +<*> -<.git/> -<.svn/> +<../examples/UnitUnified/PlotToSerial
410410
extends=Core, option_release, arduino_latest
411411
build_src_filter = +<*> -<.git/> -<.svn/> +<../examples/UnitUnified/BLEKeyboard>
412412
lib_deps = ${Core.lib_deps}
413-
NimBLE-Arduino@^1.4.0
414-
https://github.com/T-vK/ESP32-BLE-Keyboard.git#0.3.0
413+
NimBLE-Arduino@^2.3.6
414+
https://github.com/wakwak-koba/ESP32-NimBLE-Keyboard.git
415415
board_build.partitions = min_spiffs.csv
416416

417417
[env:BLEKeyboard_Core2_Arduino_latest]
418418
extends=Core2, option_release, arduino_latest
419419
build_src_filter = +<*> -<.git/> -<.svn/> +<../examples/UnitUnified/BLEKeyboard>
420420
lib_deps = ${Core2.lib_deps}
421-
NimBLE-Arduino@^1.4.0
422-
https://github.com/T-vK/ESP32-BLE-Keyboard.git#0.3.0
421+
NimBLE-Arduino@^2.3.6
422+
https://github.com/wakwak-koba/ESP32-NimBLE-Keyboard.git
423423

424424
[env:BLEKeyboard_CoreS3_Arduino_latest]
425425
extends=CoreS3, option_release, arduino_latest
426426
build_src_filter = +<*> -<.git/> -<.svn/> +<../examples/UnitUnified/BLEKeyboard>
427427
lib_deps = ${CoreS3.lib_deps}
428-
NimBLE-Arduino@^1.4.0
429-
https://github.com/T-vK/ESP32-BLE-Keyboard.git#0.3.0
428+
NimBLE-Arduino@^2.3.6
429+
https://github.com/wakwak-koba/ESP32-NimBLE-Keyboard.git
430430

431431
[env:BLEKeyboard_Fire_Arduino_latest]
432432
extends=Fire, option_release, arduino_latest
433433
build_src_filter = +<*> -<.git/> -<.svn/> +<../examples/UnitUnified/BLEKeyboard>
434434
lib_deps = ${Fire.lib_deps}
435-
NimBLE-Arduino@^1.4.0
436-
https://github.com/T-vK/ESP32-BLE-Keyboard.git#0.3.0
435+
NimBLE-Arduino@^2.3.6
436+
https://github.com/wakwak-koba/ESP32-NimBLE-Keyboard.git
437437

438438
[env:BLEKeyboard_StampS3_Arduino_latest]
439439
extends=StampS3, option_release, arduino_latest
440440
build_src_filter = +<*> -<.git/> -<.svn/> +<../examples/UnitUnified/BLEKeyboard>
441441
lib_deps = ${StampS3.lib_deps}
442-
NimBLE-Arduino@^1.4.0
443-
https://github.com/T-vK/ESP32-BLE-Keyboard.git#0.3.0
442+
NimBLE-Arduino@^2.3.6
443+
https://github.com/wakwak-koba/ESP32-NimBLE-Keyboard.git
444444

445445
[env:BLEKeyboard_Atom_Arduino_latest]
446446
extends=Atom, option_release, arduino_latest
447447
build_src_filter = +<*> -<.git/> -<.svn/> +<../examples/UnitUnified/BLEKeyboard>
448448
board_build.partitions = no_ota.csv
449449
lib_deps = ${Atom.lib_deps}
450-
NimBLE-Arduino@^1.4.0
451-
https://github.com/T-vK/ESP32-BLE-Keyboard.git#0.3.0
450+
NimBLE-Arduino@^2.3.6
451+
https://github.com/wakwak-koba/ESP32-NimBLE-Keyboard.git
452452

453453
[env:BLEKeyboard_AtomS3_Arduino_latest]
454454
extends=AtomS3, option_release, arduino_latest
455455
build_src_filter = +<*> -<.git/> -<.svn/> +<../examples/UnitUnified/BLEKeyboard>
456456
lib_deps = ${AtomS3.lib_deps}
457-
NimBLE-Arduino@^1.4.0
458-
https://github.com/T-vK/ESP32-BLE-Keyboard.git#0.3.0
457+
NimBLE-Arduino@^2.3.6
458+
https://github.com/wakwak-koba/ESP32-NimBLE-Keyboard.git
459459

460460
[env:BLEKeyboard_AtomS3R_Arduino_latest]
461461
extends=AtomS3R, option_release, arduino_latest
462462
build_src_filter = +<*> -<.git/> -<.svn/> +<../examples/UnitUnified/BLEKeyboard>
463463
lib_deps = ${AtomS3R.lib_deps}
464-
NimBLE-Arduino@^1.4.0
465-
https://github.com/T-vK/ESP32-BLE-Keyboard.git#0.3.0
464+
NimBLE-Arduino@^2.3.6
465+
https://github.com/wakwak-koba/ESP32-NimBLE-Keyboard.git
466466

467467
[env:BLEKeyboard_Dial_Arduino_latest]
468468
extends=Dial, option_release, arduino_latest
469469
build_src_filter = +<*> -<.git/> -<.svn/> +<../examples/UnitUnified/BLEKeyboard>
470470
lib_deps = ${Dial.lib_deps}
471-
NimBLE-Arduino@^1.4.0
472-
https://github.com/T-vK/ESP32-BLE-Keyboard.git#0.3.0
471+
NimBLE-Arduino@^2.3.6
472+
https://github.com/wakwak-koba/ESP32-NimBLE-Keyboard.git
473+
474+
[env:BLEKeyboard_NanoC6_Arduino_latest]
475+
extends=NanoC6, option_release, nanoc6_latest
476+
build_src_filter = +<*> -<.git/> -<.svn/> +<../examples/UnitUnified/BLEKeyboard>
477+
lib_deps = ${NanoC6.lib_deps}
478+
NimBLE-Arduino@^2.3.6
479+
https://github.com/wakwak-koba/ESP32-NimBLE-Keyboard.git
473480

474481
[env:BLEKeyboard_StickCPlus_Arduino_latest]
475482
extends=StickCPlus, option_release, arduino_latest
476483
build_src_filter = +<*> -<.git/> -<.svn/> +<../examples/UnitUnified/BLEKeyboard>
477484
lib_deps = ${StickCPlus.lib_deps}
478-
NimBLE-Arduino@^1.4.0
479-
https://github.com/T-vK/ESP32-BLE-Keyboard.git#0.3.0
485+
NimBLE-Arduino@^2.3.6
486+
https://github.com/wakwak-koba/ESP32-NimBLE-Keyboard.git
480487
board_build.partitions = min_spiffs.csv
481488

482489
[env:BLEKeyboard_StickCPlus2_Arduino_latest]
483490
extends=StickCPlus2, option_release, arduino_latest
484491
build_src_filter = +<*> -<.git/> -<.svn/> +<../examples/UnitUnified/BLEKeyboard>
485492
lib_deps = ${StickCPlus2.lib_deps}
486-
NimBLE-Arduino@^1.4.0
487-
https://github.com/T-vK/ESP32-BLE-Keyboard.git#0.3.0
493+
NimBLE-Arduino@^2.3.6
494+
https://github.com/wakwak-koba/ESP32-NimBLE-Keyboard.git
488495
board_build.partitions = min_spiffs.csv
489496

490497
[env:BLEKeyboard_Paper_Arduino_latest]
491498
extends=Paper, option_release, arduino_latest
492499
build_src_filter = +<*> -<.git/> -<.svn/> +<../examples/UnitUnified/BLEKeyboard>
493500
lib_deps = ${Paper.lib_deps}
494-
NimBLE-Arduino@^1.4.0
495-
https://github.com/T-vK/ESP32-BLE-Keyboard.git#0.3.0
501+
NimBLE-Arduino@^2.3.6
502+
https://github.com/wakwak-koba/ESP32-NimBLE-Keyboard.git
496503

497504
[env:BLEKeyboard_CoreInk_Arduino_latest]
498505
extends=CoreInk, option_release, arduino_latest
499506
build_src_filter = +<*> -<.git/> -<.svn/> +<../examples/UnitUnified/BLEKeyboard>
500507
board_build.partitions = no_ota.csv
501508
lib_deps = ${CoreInk.lib_deps}
502-
NimBLE-Arduino@^1.4.0
503-
https://github.com/T-vK/ESP32-BLE-Keyboard.git#0.3.0
509+
NimBLE-Arduino@^2.3.6
510+
https://github.com/wakwak-koba/ESP32-NimBLE-Keyboard.git
504511

505512
[env:BLEKeyboard_StickS3_Arduino_latest]
506513
extends=StickS3, option_release, arduino_latest
507514
build_src_filter = +<*> -<.git/> -<.svn/> +<../examples/UnitUnified/BLEKeyboard>
508515
build_flags = ${StickS3.build_flags}
509516
${option_release.build_flags}
510517
lib_deps = ${StickS3.lib_deps}
511-
NimBLE-Arduino@^1.4.0
512-
https://github.com/T-vK/ESP32-BLE-Keyboard.git#0.3.0
518+
NimBLE-Arduino@^2.3.6
519+
https://github.com/wakwak-koba/ESP32-NimBLE-Keyboard.git
513520

514521
[env:BLEKeyboard_Cardputer_Arduino_latest]
515522
extends=Cardputer, option_release, arduino_latest
516523
build_src_filter = +<*> -<.git/> -<.svn/> +<../examples/UnitUnified/BLEKeyboard>
517524
lib_deps = ${Cardputer.lib_deps}
518-
NimBLE-Arduino@^1.4.0
519-
https://github.com/T-vK/ESP32-BLE-Keyboard.git#0.3.0
525+
NimBLE-Arduino@^2.3.6
526+
https://github.com/wakwak-koba/ESP32-NimBLE-Keyboard.git
520527

521528
[env:BLEKeyboard_NessoN1_Arduino_latest]
522529
extends=NessoN1, option_release, pioarduino_latest
523530
build_src_filter = +<*> -<.git/> -<.svn/> +<../examples/UnitUnified/BLEKeyboard>
524531
lib_deps = ${NessoN1.lib_deps}
525-
NimBLE-Arduino@^1.4.0
526-
https://github.com/T-vK/ESP32-BLE-Keyboard.git#0.3.0
532+
NimBLE-Arduino@^2.3.6
533+
https://github.com/wakwak-koba/ESP32-NimBLE-Keyboard.git

0 commit comments

Comments
 (0)