v2.8.1

v2.8.1은 OpenMV IDE에 완전한 Arduino 보드 지원을 제공하여 Arduino Nano RP2040 Connect 및 Nano 33 BLE 보드에 대한 펌웨어 로딩과 함께 탭 편집기 및 코드 미니맵을 추가합니다. 이 릴리스는 Qt Creator 4.0.2 기반을 유지하며 새로운 4.1.0 OpenMV 펌웨어를 번들로 제공합니다. 호환성을 깨뜨리는 변경 사항이 있습니다. 자동 들여쓰기가 이제 기본적으로 꺼져 있으며, OPENMV2/3/4/4P, OPENMVPT, PORTENTA 보드용 결합형 openmv.bin / openmv.dfu 펌웨어 이미지가 제거되었습니다. 이는 해당 기본값이나 파일 이름에 의존하는 모든 사용자에게 워크플로 및 동작 변경입니다.

주요 사항

  • 새로 번들된 bossac (SAM-BA) 및 picotool/elf2uf2/rp2040load 툴체인을 통해 프로그래밍되는 Nano RP2040 Connect 및 Nano 33 BLE용 Arduino 보드 펌웨어 로딩.

  • 열린 파일이 편집기 상단에 전환 가능한 탭으로 표시되는 탭 편집기, 탭 전환 및 재정렬 단축키 포함.

  • 문서의 축소 개요를 렌더링하는 코드 미니맵 스크롤바, 이를 토글하고 너비를 설정하는 텍스트 편집기 설정 페이지 포함.

  • Nano RP2040 Connect 예제 전체 세트와 Portenta-H7 WiFi 스크립트 10개를 포함한 새로운 Arduino 및 Portenta 예제.

  • 모든 OpenMV 카메라와 Arduino Nano 33 / Nano RP2040 이미지 전반에 걸쳐 번들 펌웨어가 4.1.0으로 업데이트되었습니다.

  • Arduino Nano RP2040 Connect 및 Portenta H7용 Windows USB 드라이버가 이제 설치 프로그램에 의해 설치됩니다.

새로운 기능

  • Arduino 보드 지원: Arduino Nano RP2040 Connect 및 Nano 33 BLE 보드에 대한 완전한 펌웨어 로딩 지원을 추가하여, 새로운 bossac.txt/boards.txt 디스크립터(기존 picotool.txt 포함)로 구동되는 번들 bossac (SAM-BA) 및 picotool/elf2uf2/rp2040load 툴체인을 통해 프로그래밍합니다 (deccee676, 34e0c0ee1, ef5334782, eb9c00a33).

  • 탭 편집기: 편집기 탭 바 플러그인을 추가하여 열린 파일이 편집기 상단에 전환 가능한 탭으로 표시되며, 이전/다음 탭 단축키(Ctrl+Page Down / Ctrl+Page Up)가 포함됩니다 (325cd8d87, 5501a4082).

  • 코드 미니맵: 스크롤바에 문서의 축소 개요를 렌더링하는 텍스트 편집기 설정 페이지(활성화 토글, 너비, 줄 수 임계값, 스크롤바 슬라이더 알파)가 있는 코드 미니맵 스크롤바 플러그인을 추가했습니다 (325cd8d87).

  • Portenta-H7 WiFi 예제: WiFi 예제 스크립트 10개(연결, 스캔, 정적 IP, DNS, NTP, HTTP 클라이언트, HTTP-SSL 클라이언트, MJPEG 스트리머, MQTT 게시/구독)를 추가했습니다 (b2133f9f5).

기타 변경 및 개선 사항

  • 탭 재정렬: 현재 탭을 왼쪽 또는 오른쪽으로 이동하는 단축키(Ctrl+Shift+Page Down / Ctrl+Shift+Page Up)를 추가하고, 탭 바 단축키가 작동하도록 편집기의 충돌하는 기본 Ctrl+PgUp/Ctrl+PgDown/Ctrl+Up/ Ctrl+Down 바인딩을 비활성화했습니다 (5501a4082).

  • Nano RP2040 Connect 예제: 기본 사항, IMU 센서, BLE, WiFi, 오디오 FFT, 열화상 카메라를 다루는 Python 예제 스케치 전체 세트를 번들로 제공했습니다 (91847b183).

  • Arduino 연결 프롬프트: 두 가지 새로운 연결 흐름 대화 상자를 추가했습니다. 구형 Arduino RP2040 USB PID가 감지되면 사용자에게 RECGND에 단락시키고 보드를 리셋하도록 안내하는 복구 힌트와, 플래시 FS 지우기가 요청되면 Nano 33 BLE에는 온보드 데이터 플래시 디스크가 없다는 정보 알림입니다 (91847b183).

  • 추가 Arduino 및 Portenta 예제: Arduino Nano 33 BLE Sense(블링키), Portenta H7 BLE 온도용 새 Python 예제, 개선된 Portenta H7 PWM 제어, 업데이트된 Portenta H7 이더넷 피어 투 피어 스크립트, 업데이트된 ulab 필터 예제 (45a4564f4)와 Portenta H7 이더넷 케이블 테스트 예제 (af1b2fcff)를 추가했습니다.

  • OpenMV WiFi-Shield 예제: 14-WiFi-Shield 아래에 새로운 http_post.py HTTP POST 예제를 추가했습니다 (c73d9fdcf).

  • WiFi 읽기 타임아웃: 읽기 타임아웃을 분리하여 WiFi 연결이 더 긴 정지 타임아웃(3000ms 대 시리얼 1000ms)을 받도록 하고, WiFi 정지 후 실패하는 대신 대기 중인 명령을 재전송합니다 (81f00ac58).

  • 간소화된 편집기 크롬: 편집기 도구 모음의 분할 및 분할 닫기 버튼을 숨기고 편집기 레이아웃을 일관되게 유지하기 위해 Linux에서 고해상도 자동 스케일링을 강제했습니다 (bc14a2290).

  • 오프라인 문서: 번들 오프라인 문서를 새로 고쳐 센서별 카메라 핀아웃 이미지(H7 OV7725, H7 Plus OV5640, M4/M7 변형)를 추가하고 IDE 개요 및 튜토리얼 페이지를 업데이트했습니다 (97ff73ebd).

버그 수정

  • 올바른 플래시 영역이 지워지도록 펌웨어 프로그래밍 중에 사용되는 RP2040(PICO) 플래시 지우기 오프셋을 수정했습니다 (91847b183).

  • 번들 Linux/macOS bossacpicotool 바이너리를 실행 가능하게 만들어 해당 플랫폼에서 펌웨어 로딩이 작동하도록 했으며, 미니맵 렌더러가 Qt >= 5.6에서만 실행되도록 보호했습니다 (76613152f).

  • 펌웨어 업그레이드 프롬프트가 대화 상자 버튼을 따르도록(QDialog::Accepted 확인) 수정하고, 새 데이터가 도착하면 시리얼/TCP 전송 정지 처리가 타이머를 재시작하도록 하여 긴 전송이 더 이상 가짜로 타임아웃되지 않도록 했습니다 (dd4ce12a5).

플랫폼 및 도구 지원

  • Qt Creator 기반: 4.0.2.

  • 번들 펌웨어: 번들 OpenMV 펌웨어를 4.1.0 릴리스로 업데이트했습니다(firmware.txt: 4.0.2 -> 4.1.0) (b78603045). 주기 초반에 동일한 파일이 중간 4.0.1 및 4.0.2 빌드를 거쳤습니다 (beec4d25b, eb9c00a33).

  • 새로운 플래시 툴체인: 모든 플랫폼(windows/osx/linux32/linux64/arm/aarch64)에 대해 bossacpicotool/elf2uf2/rp2040load 툴체인을 번들로 제공했습니다.

  • Windows USB 드라이버: Arduino Nano RP2040 Connect 및 Portenta H7 보드에 대한 서명된 드라이버 설치를 추가하여 설치 프로그램을 통해 실행됩니다 (bc14a2290, a8ae96e1b).

  • 새로 인식되는 센서: 번들 share/qtcreator/firmware/sensors.txt 센서 테이블에 PAJ6100 이미지 센서 (914546e78)와 GC2145 (0x21) 및 MT9M114 카메라 센서를 추가했습니다 (9a8b1c762). MT9M114의 ID는 처음에 0x81이었다가 나중에 0x2481로 수정되었습니다 (eb9c00a33).

호환성을 깨뜨리는 변경

이번 릴리스에서 사용자에게 보이는 워크플로 및 동작 변경 사항입니다.

  • 자동 들여쓰기가 이제 기본적으로 꺼져 있습니다. 편집기의 자동 들여쓰기 기본값이 꺼짐으로 변경되었고(로드 시 강제로 꺼짐), 탭 키가 더 이상 들여쓰기하지 않습니다. Text Editor > Behavior 설정 페이지에서 Auto indentTab key performs auto-indent 컨트롤이 제거되어, 펌웨어/소스에서 변경하지 않는 한 입력 시 더 이상 새 줄이 자동으로 들여쓰기되지 않습니다 (bc14a2290).

  • 결합형 openmv.bin / openmv.dfu 펌웨어 이미지(openmv.dfu를 제공한 적 없는 OPENMVPT의 경우 openmv.bin만)가 OPENMV2/3/4/4P, OPENMVPT, PORTENTA 보드에서 제거되었습니다. 별도의 bootloader/firmware/uvc 이미지만 남아 있습니다 (84cd4cd2d).

  • vsync_gpio_output 예제(OpenMVArduino/Portenta-H7 02-Board-Control 예제 세트 모두)는 이제 set_vsync_output 대신 펌웨어의 새로운 set_vsync_callback API를 필요로 하며, 콜백은 이제 IR LED 대신 LED_BLUE를 토글합니다 (f13453bdc).