v3.5.1
3.5.1은 안정화 및 품질 개선 릴리스입니다. 주요 내용은 다음과 같습니다: Inverse3 및 Griff를 사용한 1대1 설정 시 자동 페어링, 최신 동작 데이터 제공 GET /devices/{id} WebSocket 세션을 열지 않아도 되며, 힘 모드와 위치 모드 간 전환 시 발생하는 삐걱거리는 소리가 사라지고, 지속 부하 상태에서 서비스 틱을 위한 자동 조정 스케줄러가 제공됩니다.
주요 내용
- Inverse3 와 손잡이를 사용한 1↔1 설치용 자동 페어링. Inverse3 와 그립이 준비되면 SDK가 자동으로 페어링을 감지합니다.
pen_attached또한, 다중 장치 설정에서 Minverse 보정 기능의 활성화가 더 이상 오작동하지 않습니다. - 최신 스냅샷 보기
GET /devices/{id}공개 회의 없이. Inverse3, Inverse3x 및 Minverse 모델에서 펌웨어 v7.5 이상을 사용할 경우, WebSocket 활동 여부와 관계없이 이제 20 Hz 주기로 동작 상태가 조회됩니다. v7.5 이전 펌웨어의 경우 이 조회를 건너뛰고 한 번만 경고 메시지를 표시합니다. - 토크와 위치 조절 시 더 이상 삐걱거리는 소리가 나지 않습니다. ~ 간의 전환
set_cursor_force↔set_cursor_position슬롯 전용입니다: 두 틱 사이에는 장치당 가장 최근의 명령어만 유지됩니다. HARP 에 제시된 200 ms 유휴 시간에 대한 해결 방법은 더 이상 유효하지 않습니다. - 자동 조정형 틱 스케줄러. 메인 루프는 부하에 따라 전송 속도를 조절하여, 틱이 느려져도 명령 대기열이 무한정 늘어나지 않도록 합니다.
- 부하 상태에서의 스트리밍 응답을 ‘1-in-1-out’ 원리에 따라 처리합니다. WS 메시지당 스트리밍 응답은 세션당 1/ms로 제한됩니다. 이 제한이 적용되면 이전 버퍼가 다시 재생되므로 시뮬레이션 루프가 절대
recv()차단하다.
내부 개선 사항
기기
- Inverse3 ↔ VerseGrip 기기별 페어링 등록 정보.
GET|POST|DELETE /devices/{sel}/paired_with이는 장치별 1:1 대응 관계입니다.POST양측의 갈등을 해소하고;DELETE선택한 항목을 삭제합니다. 선택기는 정확히 하나의 ID로 지정되어야 합니다. - 펌웨어 v7.5 이상에서 20 Hz 주기로 동작 상태 조회.
GET /devices/{id}50 ms마다 최신 값을 제공합니다.cursor_position,cursor_velocity,angular_position그리고angular_velocity; 진행 중인 세션에는 영향을 미치지 않습니다. set_extension_data무선으로 제어되는 속도 조절 기능을 갖춘 VerseGrip용. 파이프라인은 오래된 값을 버리고, 유휴 상태에서는 마지막 값을 반복하며, 서비스 틱이 발생하면 비워집니다. 전송 빈도가 너무 높으면 무선 연결이 더 이상 포화 상태가 되지 않으며, 전송 빈도가 너무 낮으면 더 이상 오래된 값이 남지 않습니다.
회의
- 순수 제어 배치(힘/위치)를 위한 새로운 WS 수신 빠른 경로는 구성에 민감한 파이프라인을 건너뜁니다.
configure/set_profile그리고 사용자 정의 명령은 계속해서 Race-Fix를 통해 실행됩니다.
가시성
- 인식 로깅 주기는 포트별로 제어되며, 메시지의 지속 시간을 고려합니다. 차단 목록에 포함된 각 포트는 개별적으로 대역폭이 제한되며, 반복되는 행은
"...blacklisted: skipping"이제 ~을 착용한다(×N)두 번의 트리거 사이에서 억제된 틱에 대해. - WVG 기기가 아닌 기기를 조회할 때 VerseGrip의 무선 감지 기능이 더 이상 로그를 과도하게 채우지 않습니다.
오류 수정
POST /device.config.presetMITdefaults또는arm_front이제 기기의 마운트를 공장 초기 설정으로 재설정합니다(이전에는 아무 작업도 수행하지 않음).basis앱에서 설정한 기본값이 유지되도록 하여, 마운트 기본 설정의 변경 사항이 적용되지 않도록 합니다.force_render_full_state더 이상 누락된 스냅샷을 제공하지 않습니다.config-차단, 해당 구성 정보가 동일한 WS 메시지로 수신된 경우 – 구성 경로는 스냅샷 처리 전에 동기식으로 처리됩니다.- 여러 회의에 걸친
force_render_full_state대상에 대한 완전한 스냅샷을 제공합니다. 이제 A와 B 모두 완전한 페이로드를 수신하게 됩니다(이전에는 A가 스트리밍 데이터만 수신했습니다). - 알 수 없는 매개변수를 사용하는 세션 간 명령어
target_session_id더 이상 요청-응답 루프를 차단하지 않습니다. 질문자는 자신만의 스냅샷과 이벤트 하나를 받게 됩니다.session-command-dropped(cross-session-unknown-target). - Minverse 의 활성화 및 여러 기기를 통한 보정 기능이 더 이상 오작동하지 않습니다. Minverse A의 보정 시 Minverse B가 더 이상 활성화되지 않으며, inkwell-success의 헤딩 브로드캐스트에도 동일한 수정 사항이 적용됩니다.
- HTTP의 장치 선택기 수락됨
#1234그리고1234장치 ID; 선택기 클래스 (inverse3,verse_grip)는 인덱스와 함께 작동하며, 404 오류 메시지는 원래의 선택자 표현식을 그대로 유지합니다. - Das
ready-VerseGrip을 통한 무선 신호 이제 초기 장치 정보 핸드셰이크가 끝난 후에야 설정됩니다. 이전에는 장치가 완전히 로그인되기 전에 특정 재연결 경로에서 이 값이 변동될 수 있었습니다. - 키드 레이트 게이트(keyed-rate-gate) 기반 설정에 대한 실행 시간 변경 사항은 이제 다음 액세스 시 적용됩니다 (이전에는 첫 번째 emplace 시점에 고정되어 있었으며, 새로운 세션에서만 변경 사항이 반영되었습니다).
발생할 수 있는 호환성 변경 사항
- HTTP의 404 오류 메시지 표준화 über
basis,preset,mount,transform,force_gatehinweg:"{type} device #{id} not found"→"no device matches selector '{expr}'". 세션에 대한 404 오류 메시지도 이에 맞춰 수정되었습니다. - 설정-전역
devices/inverse*/...→devices/*inverse/...힘 스케일링 강화, 힘 게이트 강화, 제어 타임아웃 및safeties/expose_in_snapshot. 3.5.0 버전의 설정 파일에서 사용된 구식 리터럴은 바인딩 시 오류가 발생합니다. - 설정: 직렬화 전역 변수가 다음 위치로 이동되었습니다.
session/serialization/*(explicit_fields,force_complete_transforms,preview/*). 알테serialization/*- 경로는 구식 별칭을 통해 계속 해결됩니다. 4.0 버전에서 제거될 예정입니다. - 동작: 메시지당 WS 응답을 틱 동기화 핸드셰이크로 사용하는 클라이언트는 지속적인 부하 조건에서 세션당 초당 최대 1개의 응답만 수신합니다. 구성 변경 시 생성되는 전체 스냅샷에는 영향을 미치지 않습니다.
더 이상 지원되지 않는 기능
3.5.1 버전에는 없습니다. ‘Preview’ 메인 스위치는 3.6 버전에서 도입될 파이프라인을 위한 인프라로, 이 파이프라인은 ‘silent’ 알림을 경고로 변환합니다. 첫 번째 사용 중단(deprecation) 일정은 3.5.2 버전으로 예정되어 있습니다.