RoomfitV2 Dashboard

전류 제어 기반 디지털 웨이트 머신 — Flutter + Pure Dart · main 브랜치 · 2026-04-13 기준

Total Commits

32
3/27 ~ 4/11 · 16일간

Tests

210
3 packages · All passed

Source LOC

11.6k
lib + 4 packages

Test LOC

5.4k
46% test coverage ratio

Package Architecture

lib/ (App)
Flutter UI · Riverpod · 3,184 LOC
roomfit_ble
BLE Scanner + Transport · 322 LOC
roomfit_device
Gateway + State · 3,106 LOC
roomfit_exercise
Rep + VBT + Realtime · 2,808 LOC
roomfit_protocol
Packet Codec + Commands · 2,213 LOC
순수 Dart — Flutter 의존 없음 ↑

코드 vs 테스트 (LOC)

2,213
1,350
protocol
3,106
506
device
2,808
2,799
exercise
322
ble
3,184
739
app
■ 상단 = source ■ 하단 = test

roomfit_protocol

105 ALL PASSED
11 files · 7 test files · codec, commands, responses

roomfit_exercise

81 ALL PASSED
25 files · 13 test files · FSM, VBT, pipeline, recording

roomfit_device

24 ALL PASSED
6 files · 5 test files · gateway, state, response mapping

Commit Activity

4 commits
3/27
11 commits
3/29
1 commit
4/02
2 commits
4/06
2 commits
4/07
4 commits
4/08
3 commits
4/10
5 commits
4/11

Development Phases

1
프로토콜 정비
3/29
완료
  • MCU 펌웨어 소스 대조 + 불일치 전면 수정
  • dev 36B 단일 포맷 확정, v3 12B 제거
  • 물리 단위 확정 + 응답 테스트 전면 보강
2
패키지 분리 아키텍처
4/06 — 4/07
완료
  • roomfit_ble · roomfit_device · roomfit_exercise 추출
  • 4-레이어 의존성 규칙 확립
3
운동 분석 엔진
4/07 — 4/08
완료
  • SixStateFsm hostile 시나리오 5건 수정
  • WeightMode 6종 · Region 8단계 · DriveStatus 모델 정렬
  • MCU 요청 문서 5건 시딩
4
리얼타임 스트리밍
4/10 — 4/11
완료
  • SampleRingBuffer + MotionController 파이프라인
  • LiveLineChart vsync-driven 위젯 (513줄 테스트)
  • 20Hz hot-path allocation 제거
  • Dashboard per-card rebuild 격리

Recent Commit Timeline

2026-04-11 (5 commits)
00a58bdchoreiOS Scene lifecycle + Info.plist cleanup
58d7963docsAGENTS.md protocol rules + README rewrite
1ee011bperfDashboard per-card select() rebuild isolation
09c565ctest13 stress tests for LiveLineChart
447f18cfeatLiveLineChart — vsync-driven real-time chart
2026-04-10 (3 commits)
e191fb9featSampleRingBuffer + MotionController pipeline
96631b1perfP1 quick wins — 20Hz allocation waste 제거
933d808docsRealtime streaming architecture research
2026-04-08 (4 commits)
c468fd2fixHostile motion scenarios + SixStateFsm 5건 수정
f4b28c9fixRegionStatus.fromCode uint8-wrapped block
1acef81docsMCU firmware team request log 5건
0b8ee02fixDev 36B canonical report format 확정
2026-04-06 — 07 (4 commits)
01e0dadfixMCU WESPION 소스 기반 모델 정렬
eef2e9frefactorroomfit_device 패키지 추출
12ee533featroomfit_exercise 패키지 + workout/dev-lab UI
aff2ff8refactorroomfit_ble 패키지 추출 + core/ 경량화
2026-03-29 (11 commits) — 프로토콜 대정비
c2e2671fixReportResponse v3 → dev 36B 통일
d2e13dffixMCU 소스 기반 물리 단위 확정
e9ba3f4fix프로토콜 불일치 전면 수정
… +8 commits (docs, tests, 2026spoex 반영)

Weight Modes (MCU WP_WeightMode)

CodeModePhysicsVBT MCV
0Normal일정 저항Valid
1Eccentriceccentric force 가산Valid
2Elasticposition 비례 점증Valid
3Isokineticspeed PI 클램프N/A
4Hydraulicspeed^n power lawN/A
5Vibrationsin wave 진동 추가N/A

Region States (MCU WP_RegionStatus)

CodeRegionMeaning
-1block안전 차단 / 범위 무효
0ground케이블 완전 수축
1base베이스 휴식 위치
2idlebase↔ROM 자유 영역
3loSoftROM 저단 ramp-in
4rom실제 운동 구간
5hiSoftROM 상단 ramp-out
6overROM 초과 안전 이벤트