Galzai / MK32

Keyboard firmware for ESP32 microcontrollers
678 stars 118 forks source link

Cannot pair with computer #30

Closed dungphan90 closed 3 years ago

dungphan90 commented 3 years ago

I've been able to compile and flash the firmware onto my DevKitV1. Both my Windows laptop and Linux desktop can scan and find the device (named MK32 - V3.0). However I cannot pair the device. The pairing just timed-out.

dungphan90 commented 3 years ago
[bluetooth]# info 84:CC:A8:2C:79:DA
Device 84:CC:A8:2C:79:DA (public)
    Name: MK32 - DP - V3.0
    Alias: MK32 - DP - V3.0
    Appearance: 0x03c0
    Paired: no
    Trusted: yes
    Blocked: no
    Connected: no
    LegacyPairing: no 
[bluetooth]# pair 84:CC:A8:2C:79:DA
Attempting to pair with 84:CC:A8:2C:79:DA
Failed to pair: org.bluez.Error.AuthenticationCanceled
dungphan90 commented 3 years ago

This is the log of make monitor

rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0030,len:6740
load:0x40078000,len:13152
ho 0 tail 12 room 4
load:0x40080400,len:3636
entry 0x40080674
I (28) boot: ESP-IDF v4.4-dev-1404-gc13afea63-dirty 2nd stage bootloader
I (28) boot: compile time 17:51:22
I (30) boot: chip revision: 1
I (33) boot_comm: chip revision: 1, min. bootloader chip revision: 0
I (40) boot.esp32: SPI Speed      : 40MHz
I (45) boot.esp32: SPI Mode       : DIO
I (50) boot.esp32: SPI Flash Size : 4MB
I (54) boot: Enabling RNG early entropy source...
I (60) boot: Partition Table:
I (63) boot: ## Label            Usage          Type ST Offset   Length
I (70) boot:  0 nvs              WiFi data        01 02 00009000 00004000
I (78) boot:  1 otadata          OTA data         01 00 0000d000 00002000
I (85) boot:  2 phy_init         RF data          01 01 0000f000 00001000
I (93) boot:  3 factory          factory app      00 00 00010000 00300000
I (100) boot: End of partition table
I (105) boot: Defaulting to factory image
I (109) boot_comm: chip revision: 1, min. application chip revision: 0
I (116) esp_image: segment 0: paddr=00010020 vaddr=3f400020 size=3b94ch (244044) map
I (213) esp_image: segment 1: paddr=0004b974 vaddr=3ffbdb60 size=04304h ( 17156) load
I (220) esp_image: segment 2: paddr=0004fc80 vaddr=40080000 size=00398h (   920) load
I (221) esp_image: segment 3: paddr=00050020 vaddr=400d0020 size=ccc2ch (838700) map
I (531) esp_image: segment 4: paddr=0011cc54 vaddr=40080398 size=1c644h (116292) load
I (579) esp_image: segment 5: paddr=001392a0 vaddr=400c0000 size=00064h (   100) load
I (579) esp_image: segment 6: paddr=0013930c vaddr=50000200 size=00010h (    16) load
I (598) boot: Loaded app from partition at offset 0x10000
I (598) boot: Disabling RNG early entropy source...
I (610) cpu_start: Pro cpu up.
D (610) efuse: In EFUSE_BLK0__DATA3_REG is used 1 bits starting with 15 bit
D (610) efuse: In EFUSE_BLK0__DATA5_REG is used 1 bits starting with 20 bit
D (619) efuse: In EFUSE_BLK0__DATA3_REG is used 3 bits starting with 9 bit
D (626) efuse: In EFUSE_BLK0__DATA3_REG is used 1 bits starting with 2 bit
I (633) cpu_start: Starting app cpu, entry point is 0x40081364
0x40081364: call_start_cpu1 at /home/dphan/esp/esp-idf/components/esp_system/port/cpu_start.c:150

I (0) cpu_start: App cpu up.
D (647) clk: RTC_SLOW_CLK calibration value: 3278131
I (660) cpu_start: Pro cpu start user code
I (660) cpu_start: cpu freq: 240000000
I (660) cpu_start: Application information:
I (664) cpu_start: Project name:     MK32
I (669) cpu_start: App version:      74b59ec-dirty
I (674) cpu_start: Compile time:     May 25 2021 18:03:08
I (680) cpu_start: ELF file SHA256:  9ef24dc7ab69c124...
I (686) cpu_start: ESP-IDF:          v4.4-dev-1404-gc13afea63-dirty
D (693) memory_layout: Checking 11 reserved memory ranges:
D (699) memory_layout: Reserved memory range 0x3ffae000 - 0x3ffae6e0
D (705) memory_layout: Reserved memory range 0x3ffae6e0 - 0x3ffaff10
D (712) memory_layout: Reserved memory range 0x3ffb0000 - 0x3ffb6388
D (718) memory_layout: Reserved memory range 0x3ffb8000 - 0x3ffb9a20
D (725) memory_layout: Reserved memory range 0x3ffbdb28 - 0x3ffbdb5c
D (731) memory_layout: Reserved memory range 0x3ffbdb60 - 0x3ffca488
D (737) memory_layout: Reserved memory range 0x3ffe0000 - 0x3ffe0440
D (744) memory_layout: Reserved memory range 0x3ffe3f20 - 0x3ffe4350
D (750) memory_layout: Reserved memory range 0x40070000 - 0x40078000
D (757) memory_layout: Reserved memory range 0x40078000 - 0x40080000
0x40080000: _WindowOverflow4 at /home/dphan/esp/esp-idf/components/freertos/port/xtensa/xtensa_vectors.S:1730

D (763) memory_layout: Reserved memory range 0x40080000 - 0x4009c9dc
0x40080000: _WindowOverflow4 at /home/dphan/esp/esp-idf/components/freertos/port/xtensa/xtensa_vectors.S:1730

D (769) memory_layout: Building list of available memory regions:
D (776) memory_layout: Available memory region 0x3ffaff10 - 0x3ffb0000
D (782) memory_layout: Available memory region 0x3ffb6388 - 0x3ffb8000
D (789) memory_layout: Available memory region 0x3ffb9a20 - 0x3ffbdb28
D (795) memory_layout: Available memory region 0x3ffca488 - 0x3ffcc000
D (802) memory_layout: Available memory region 0x3ffcc000 - 0x3ffce000
D (809) memory_layout: Available memory region 0x3ffce000 - 0x3ffd0000
D (815) memory_layout: Available memory region 0x3ffd0000 - 0x3ffd2000
D (822) memory_layout: Available memory region 0x3ffd2000 - 0x3ffd4000
D (828) memory_layout: Available memory region 0x3ffd4000 - 0x3ffd6000
D (835) memory_layout: Available memory region 0x3ffd6000 - 0x3ffd8000
D (842) memory_layout: Available memory region 0x3ffd8000 - 0x3ffda000
D (848) memory_layout: Available memory region 0x3ffda000 - 0x3ffdc000
D (855) memory_layout: Available memory region 0x3ffdc000 - 0x3ffde000
D (861) memory_layout: Available memory region 0x3ffde000 - 0x3ffe0000
D (868) memory_layout: Available memory region 0x3ffe0440 - 0x3ffe3f20
D (875) memory_layout: Available memory region 0x3ffe4350 - 0x3ffe8000
D (881) memory_layout: Available memory region 0x3ffe8000 - 0x3fff0000
D (888) memory_layout: Available memory region 0x3fff0000 - 0x3fff8000
D (894) memory_layout: Available memory region 0x3fff8000 - 0x3fffc000
D (901) memory_layout: Available memory region 0x3fffc000 - 0x40000000
D (908) memory_layout: Available memory region 0x4009c9dc - 0x4009e000
D (914) memory_layout: Available memory region 0x4009e000 - 0x400a0000
I (921) heap_init: Initializing. RAM available for dynamic allocation:
I (928) heap_init: At 3FFAFF10 len 000000F0 (0 KiB): DRAM
D (934) heap_init: New heap initialised at 0x3ffb6388
I (939) heap_init: At 3FFB6388 len 00001C78 (7 KiB): DRAM
D (945) heap_init: New heap initialised at 0x3ffb9a20
I (950) heap_init: At 3FFB9A20 len 00004108 (16 KiB): DRAM
D (957) heap_init: New heap initialised at 0x3ffca488
I (962) heap_init: At 3FFCA488 len 00015B78 (86 KiB): DRAM
I (968) heap_init: At 3FFE0440 len 00003AE0 (14 KiB): D/IRAM
I (974) heap_init: At 3FFE4350 len 0001BCB0 (111 KiB): D/IRAM
D (981) heap_init: New heap initialised at 0x4009c9dc
I (986) heap_init: At 4009C9DC len 00003624 (13 KiB): IRAM
D (992) intr_alloc: Connected src 46 to int 2 (cpu 0)
D (997) FLASH_HAL: extra_dummy: 1
D (1000) spi_flash: trying chip: issi
D (1004) spi_flash: trying chip: gd
D (1008) spi_flash: trying chip: mxic
D (1011) spi_flash: trying chip: winbond
D (1015) spi_flash: trying chip: generic
I (1019) spi_flash: detected chip: generic
I (1024) spi_flash: flash io: dio
D (1028) cpu_start: calling init function: 0x4019383c
0x4019383c: esp_reset_reason_init at /home/dphan/esp/esp-idf/components/esp_system/port/soc/esp32/reset_reason.c:73

D (1033) cpu_start: calling init function: 0x40146bcc
0x40146bcc: s_set_default_wifi_log_level at /home/dphan/esp/esp-idf/components/esp_wifi/src/wifi_init.c:72

D (1038) cpu_start: calling init function: 0x401448bc
0x401448bc: esp_ipc_init at /home/dphan/esp/esp-idf/components/esp_ipc/ipc.c:88

D (1044) cpu_start: calling init function: 0x400efa44
0x400efa44: _GLOBAL__sub_I__ZN9__gnu_cxx9__freeresEv at /builds/idf/crosstool-NG/.build/xtensa-esp32-elf/src/gcc/libstdc++-v3/libsupc++/eh_alloc.cc:348

D (1049) cpu_start: calling init function: 0x400ef6a0
0x400ef6a0: _GLOBAL__sub_I___cxa_get_globals_fast at /builds/idf/crosstool-NG/.build/xtensa-esp32-elf/src/gcc/libstdc++-v3/libsupc++/eh_globals.cc:145

D (1054) cpu_start: calling init function: 0x400d2b8c
0x400d2b8c: esp_ota_init_app_elf_sha256 at /home/dphan/esp/esp-idf/components/app_update/esp_app_desc.c:68

D (1059) intr_alloc: Connected src 17 to int 3 (cpu 0)
I (1064) sleep: Configure to isolate all GPIO pins in sleep state
I (1071) sleep: Enable automatic switching of GPIO sleep configuration
D (1089) cpu_start: Setting C++ exception workarounds.
D (1090) intr_alloc: Connected src 24 to int 9 (cpu 0)
I (1090) cpu_start: Starting scheduler on PRO CPU.
D (0) intr_alloc: Connected src 25 to int 2 (cpu 1)
I (4) cpu_start: Starting scheduler on APP CPU.
D (1115) heap_init: New heap initialised at 0x3ffe0440
D (1121) heap_init: New heap initialised at 0x3ffe4350
I (1126) gpio: GPIO[15]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0
I (1135) gpio: GPIO[25]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0
I (1145) gpio: GPIO[26]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0
I (1154) gpio: GPIO[27]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0
I (1163) gpio: GPIO[32]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0
I (1173) gpio: GPIO[33]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0
I (1182) gpio: GPIO[0]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0
I (1191) gpio: GPIO[2]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0
I (1200) gpio: GPIO[4]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0
I (1210) gpio: GPIO[12]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0
I (1219) gpio: GPIO[13]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0
I (1228) gpio: GPIO[14]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0
I (1238) GPIO: 15 is level 0
I (1241) GPIO: 25 is level 0
I (1245) GPIO: 26 is level 0
I (1248) GPIO: 27 is level 0
I (1252) GPIO: 32 is level 0
I (1255) GPIO: 33 is level 0
I (1259) GPIO: 0 is level 0
I (1262) GPIO: 2 is level 0
I (1266) GPIO: 4 is level 0
I (1269) GPIO: 12 is level 0
I (1273) GPIO: 13 is level 0
I (1276) GPIO: 14 is level 0
D (1280) partition: Loading the partition table
I (1295) MAIN: loading configuration from NVS
D (1295) nvs: nvs_open_from_partition config_c 1
D (1296) nvs: nvs_get_str_or_blob btname
I (1300) MAIN: bt device name is: MK32 - DP - V3.0
I (1305) NVS Storage: Loading layouts
I (1310) NVS Storage: Opening NVS handle
I (1314) NVS Storage: NVS Handle opened successfully
E (1320) NVS Storage: Error getting layout num: ESP_ERR_NVS_NOT_FOUND
I (1327) NVS Storage: Error getting layout names size: ESP_ERR_NVS_NOT_FOUND
E (1335) NVS Storage: Error getting layout name: ESP_ERR_NVS_NOT_FOUND
I (1342) NVS Storage: Layouts not found on NVS, loading default layouts
I (1349) NVS Storage: Encoder layouts not found on NVS, loading default layouts
I (1357) NVS Storage: Slave encoder layouts not found on NVS, loading default layouts
I (1366) BTDM_INIT: BT controller compile version [d03a5d3]
I (1372) system_api: Base MAC address is not set
I (1377) system_api: read default base MAC address from EFUSE
I (1386) phy_init: phy_version 4670,719f9f6,Feb 18 2021,17:07:07
W (1701) BT_BTM: BTM_BleWriteAdvData, Partial data write into ADV
I (1707) HID_LE_PRF: esp_hidd_prf_cb_hdl(), start added the hid service to the stack database. incl_handle = 40
I (1712) HID_LE_PRF: hid svc handle = 2d
I (1714) HIDD: MAIN finished...
I (1718) Keyboard task: initializezd
I (1722)    OLED: Setting up oled
I (1726) u8g2_hal: sda_io_num 21
I (1730) u8g2_hal: scl_io_num 22
I (1732) u8g2_hal: clk_speed 400000
I (1736) u8g2_hal: i2c_param_config 1
I (1741) u8g2_hal: i2c_driver_install 0
E (2046) err: esp_err_t = -1
assertion "0 && "i2c_master_cmd_begin(I2C_MASTER_NUM, handle_i2c, I2C_TIMEOUT_MS / portTICK_RATE_MS)"" failed: file "/home/dphan/esp/MK32/components/u8g2_OLED/u8g2_esp32_hal.c", line 159, function: u8g2_esp32_i2c_byte_cb

abort() was called at PC 0x400d80ab on core 0
0x400d80ab: __assert_func at /builds/idf/crosstool-NG/.build/xtensa-esp32-elf/src/newlib/newlib/libc/stdlib/assert.c:62 (discriminator 8)

Backtrace:0x400d3042:0x3ffbc1f00x400905b1:0x3ffbc210 0x4009660e:0x3ffbc230 0x400d80ab:0x3ffbc2a0 0x400d5c3f:0x3ffbc2d0 0x40197cd1:0x3ffbc320 0x400d6579:0x3ffbc340 0x400d64fd:0x3ffbc360 0x400d6755:0x3ffbc390 0x40197c25:0x3ffbc3b0 0x400d5976:0x3ffbc3d0 0x400d47f0:0x3ffbc430 0x4019c9db:0x3ffbc470
0x400d3042: panic_abort at /home/dphan/esp/esp-idf/components/esp_system/panic.c:390

0x400905b1: esp_system_abort at /home/dphan/esp/esp-idf/components/esp_system/esp_system.c:126

0x4009660e: abort at /home/dphan/esp/esp-idf/components/newlib/abort.c:46

0x400d80ab: __assert_func at /builds/idf/crosstool-NG/.build/xtensa-esp32-elf/src/newlib/newlib/libc/stdlib/assert.c:62 (discriminator 8)

0x400d5c3f: u8g2_esp32_i2c_byte_cb at /home/dphan/esp/MK32/components/u8g2_OLED/u8g2_esp32_hal.c:131 (discriminator 5)

0x40197cd1: u8x8_byte_EndTransfer at /home/dphan/esp/MK32/components/u8g2_OLED/u8x8_byte.c:61

0x400d6579: u8x8_cad_ssd13xx_i2c at /home/dphan/esp/MK32/components/u8g2_OLED/u8x8_cad.c:423

0x400d64fd: u8x8_cad_SendSequence at /home/dphan/esp/MK32/components/u8g2_OLED/u8x8_cad.c:147

0x400d6755: u8x8_d_ssd1306_128x64_noname at /home/dphan/esp/MK32/components/u8g2_OLED/u8x8_d_ssd1306_128x64_noname.c:322

0x40197c25: u8x8_InitDisplay at /home/dphan/esp/MK32/components/u8g2_OLED/u8x8_display.c:100

0x400d5976: init_oled at /home/dphan/esp/MK32/components/u8g2_OLED/oled_tasks.c:303

0x400d47f0: app_main at /home/dphan/esp/MK32/main/mk32_main.cpp:379

0x4019c9db: main_task at /home/dphan/esp/esp-idf/components/freertos/port/port_common.c:134
dungphan90 commented 3 years ago

So sorry. False alarm. I just need to disable the OLED task to make it works. Please close this issue.