본문 바로가기

728x90
반응형

MCU

(18)
ESP32: Mac 에서 flash가 안되는 경우 # Failed to write to target RAM (result was 01070000: Operation timed out) idf.py monitor도 되는데아래와 같은 에러를 만나면서 idf.py flash가 안된다. Failed to write to target RAM (result was 01070000: Operation timed out) esptool.py를 설치하고 esptool.cfg 의 설정 파일을 하라는 설명도 있었는데,나의 경우는 CH340, CH341 등과 같은 장치들과 USB serial 통신이 가능하도록 해주는드라이버 설치가 필요한 경우였다. https://github.com/espressif/esptool/issues/908위 링크에서 kiler129 님의 코멘트를 참고If you're on macOS this is most likely issue with WCH CH3xx UART chipset...
ESP32 키보드: usb 키 전송이 매우 느린 문제 # polling rate # 6-key Rollover # N-Key Rollover (무한 입력) 6-key 롤 오버를 하더라도, 폴링 주기 동안 눌린 키를 보낸다고 하면, 지금처럼 usb를 통한 키 전송 방식에서 엄청 느리진 않을거다.지금 내가 구현한 방식은 키 입력이 발생하면 바로 report를 보내는 방식이다. 이렇게 하는 것이 아니라, 폴링 주기 동안 눌려진 키를 어레이에 담아서, 그 어레이를 폴링 주기가 도래했을 때 모아서 report를 해야 한다. 그래야 씹히는 키가 발생하지 않게 된다. 이렇게 하려면, 폴링주기를 잡고, 그 폴링주기 동안 어레이에 키 입력을 순차적으로 저장하고 폴링 주기가 왔을 때 report를 해야한다. 우선 위 방식대로 코드를 수정하도록 하자.  ----무한 입력은 정말 짧은 시간내에 많은 키가 입력돼도 모두 report가 되도록 해야하는데, 이는 descriptor를..
ESP32: IRAM_ATTR 충돌 오류 # warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.0")' [-Wattributes] ESP IDF를 통해 ESP32를 개발하다 보면, 함수에 IRAM_ATTR, DRAM_ATTR 등이 붙는 함수 들이 있다. void IRAM_ATTR gpio_isr_handler(void* arg) { uint32_t gpio_num = (uint32_t)arg; BaseType_t xHigherPriorityTaskWoken = pdFALSE; xQueueSendFromISR(gpio_evt_queue, &gpio_num, &xHigherPriorityTaskWoken); if (xHigherPriorityTaskWoken == pdTRUE) { portYIELD_FROM_ISR(xHigherPriorityTaskWoken); }}위와 같은 방식으로 사용이 되고..
Bluetooth: ESP32 - examples - gatts_table_create_demo GATT Server app_main  - nvs_flash_init(),    esp_bt_controller_init(), esp_bt_controller_enable(),    esp_bluedroid_init(), esp_bluedroid_enable()    esp_ble_gap_register_callback(gap_event_handler);    까지는 일반적인 bluetooth초기화 과정과 동일   gatts example이므로 esp_ble_gatts_register_callback(gatts_event_handler); 있음    esp_ble_gatts_app_register(ESP_APP_ID);  esp_ble_gatt_set_local_mtu(500);  잘 못보던 두가지 함수..
ESP32: # Watch dog reset # save in NVS and load saved data from NVS # 예제 커밋https://github.com/Junanjunan/esp/commit/86e06f908735cde9eaf66660129132929b7da17c 내부에 Flow 정리
ESP32: The applications static IRAM usage is larger than the available IRAM size. Error message/home/taltal/.espressif/tools/xtensa-esp-elf/esp-13.2.0_20230928/xtensa-esp-elf/bin/../lib/gcc/xtensa-esp-elf/13.2.0/../../../../xtensa-esp-elf/bin/ld: mode_change.elf section `.iram0.text' will not fit in region `iram0_0_seg' /home/taltal/.espressif/tools/xtensa-esp-elf/esp-13.2.0_20230928/xtensa-esp-elf/bin/../lib/gcc/xtensa-esp-elf/13.2.0/../../../../xtensa-esp-elf/bin/ld: IRAM0 ..
ESP-IDF: idf.py --ccache build ccache가 설치되어 있는 경우 build 속도가 상당히 빨라진다고 해서 테스트를 해보았다.블루투스 example들을 build 하는 경우 정말 빌드할 것이 많아서 자잘한 수정을 하고 빌드를 하는 경우 꽤 성가시다. 공식 홈페이지에는 윈도우나 리눅스나 알집 형태로 받도록 되어 있다.https://c..
Bluetooth - HID: Little Endian, Big Endian 참고 블로그:https://zion830.tistory.com/38https://softtone-someday.tistory.com/20<a href="https://techz..

728x90
반응형