変更履歴 — Hapbeat Studio
Hapbeat Studio の変更履歴。形式は Keep a Changelog、
バージョンは Semantic Versioning(conventional-commits: feat→minor / fix→patch)に従う。
- 最新版
https://studio.hapbeat.com/は master の package.json バージョンを表示。 - 凍結版
https://studio.hapbeat.com/vX.Y/はvX.Y.Zタグ push 時に作成(マイナー単位)。
[Unreleased]
Section titled “[Unreleased]”Added(追加)
Section titled “Added(追加)”- 【ベータ】波形エディターに「イベント」パネルを追加。ゲームの cue 表の各イベントについて、音・触覚の素材候補(プール、先頭が代表)・仮/OK の確認・素材の「調整」(エフェクトと強さスライダー、変更は即イベントの WAV に反映し元音声とチェーンは adjust/ に保存)・エージェントへの依頼(音の依頼・再作成・触覚へ進む)を行える
- 【ベータ】AI 試行を刷新。候補を場面の映像(記録の通し映像から代表区間を切り出し、発生時刻どおりに再生)と合わせて試聴し、★とコメントで評価して「保存して次へ」で確定する。★4 以上はイベントの素材プールへ自動追加、★3 は控えに入る。下書きは自動保存
- 【ベータ】「シーン確認」タブを追加。ゲームの記録に合わせて cue ごとの全発生を確認し、variant・揺らぎ(選び方・強さ/高さ/速さ)・音と触覚の組・場面の倍率を編集できる。振り分けの変更はエージェントへの依頼として送る
- 【ベータ】素材の強さを 3 層に整理。WAV は形だけをフルスケールで持ち、素材ごとの強さは intensity、場面ごとの倍率は route gain / sfx.volume。最終出力は WAV × intensity × 場面の倍率 × デバイス音量
- 試聴の触覚は、cue の装着位置(route の at)に合うデバイスだけへ送る(hand / both は両手首)。送信先を出力オプションの横に表示する
- cue 表の変更は自動保存し、外部(エージェント)による変更とは項目単位で統合する。操作の記録は .hapbeat-editor/activity-log.jsonl に残し、通知は失敗時だけにした
- タブを URL(#editor・#scene など)で区別し、再読み込みで同じタブに戻る。非表示のタブ・パネルは描画とポーリングを止める
- ファームウェアライブラリに PWM 改造基板専用の実験版「Band v4 PWM」を BETA 表示で追加。PWM 駆動を報告しないデバイスには既定選択・更新通知で提示せず、PWM 改造基板には通常の Band v4 を更新として出さない。PWM 版を通常基板へ、通常版を PWM 改造基板へ書き込む時は確認を出す
[0.8.1] - 2026-10-01
Section titled “[0.8.1] - 2026-10-01”Fixed(修正)
Section titled “Fixed(修正)”- 1 台目を書き込んだ後、別の個体が同じ COM ポートで認識されると、2 台目の Serial 書き込みが「The port is already open」で失敗する問題を修正。デバイスを抜いた・再起動した時に開いたまま残っていたポートを確実に閉じ、書き込み前に自動識別中のポートの処理完了を待つようにした
Added(追加)
Section titled “Added(追加)”- 波形エディターに質感系エフェクト(AM、帯域ノイズ、周波数シフト、コンプレッサー、実験的サチュレーション)と、レシピから振動を生成する「レシピから作成」を追加
- 波形エディターに「AI 試作」タブを追加。ローカルの AI エージェントが提案した候補を試聴・評価・採用でき、評価は作業フォルダの haptic-knowledge に蓄積する。hapbeat-helper 経由の MCP 要求にも応答する
- 取り込んだ音声の出所を素材台帳(Helper 接続時)から引いてクリップに表示し、Kit 保存時に CREDITS.md を書き出す
[0.8.0] - 2026-09-23
Section titled “[0.8.0] - 2026-09-23”Added(追加)
Section titled “Added(追加)”- 波形エディターをベータ機能として公開。範囲切り出し、元音声ごとの素材整理、可逆エフェクト、選択範囲の反復再生、PC音声とHelper経由の触覚プレビュー、ローカル作業フォルダへの保存とWAV書き出しに対応
- Manage に BandWL v4 PWM実験ファーム向けのバイアス、出力経路、再生時補正および診断の設定画面を追加。対応機の
get_info.haptic_pwmがある場合だけ表示
Changed(変更)
Section titled “Changed(変更)”- デバイス管理、Kit、Display の編集中の改善を反映。エディターのタブと画面に BETA を表示
Added(追加)
Section titled “Added(追加)”- 接続中の Helper より新しい版が公開されている場合、ヘッダに小さなお知らせを表示するようにした。× で閉じると、さらに新しい版が出るまで再表示しない(版を固定して使っている間、毎回閉じさせないため)。更新手順は従来どおり Helper 管理モーダルに常時表示する
- デバイス詳細のファーム表示の隣に、そのデバイスより新しいファームウェアがある場合のみ「vX.Y.Z あり」を表示(クリックでファームウェアタブへ)。board / transport から最新版が一意に決まらない場合は誤報を避けて何も表示しない
- 凍結版 URL(
/vX.Y/)を開いている場合のみ、最新版が公開されていることをヘッダに表示(最新版を見ている人にはリロードで最新が来るため表示しない)
[0.7.0] - 2026-07-27
Section titled “[0.7.0] - 2026-07-27”Fixed(修正)
Section titled “Fixed(修正)”- Kit 内で別々の Event が同じ Event ID を持つ場合、画面上に警告を表示し、後の定義が manifest で黙って上書きされる代わりに Save Folder / Deploy を中止するよう修正(1つの Event を BOTH にする場合は従来どおり有効)
- Kit の volume / intensity 等の連続編集は画面状態と revision を即時更新し、
kits-meta.jsonの書込みを操作停止後にまとめるよう変更。Save Folder / Deploy は待機中の最新値を先に確定してから同一 snapshot を保存 - Kit 配信(Deploy)中にデバイスからの応答が 5 秒以上途絶えた場合、進捗行に「デバイスを再起動して再試行」の警告を表示するように変更(従来は無反応のまま進捗が止まって見えるだけだった)
- Kit の Save Folder 失敗時に、原因(例外名 + メッセージ + 失敗したファイルのパス)を最初の失敗時点から表示するように変更。権限失効は再要求 1 回、ファイルロック(Unity Editor などが開いている)とワークフォルダ参照の失効(
InvalidStateError)は 2 回で打ち切り、それぞれ対処方法を表示(従来は原因非表示のまま約 27 秒リトライし続けた) - 同一のエンコード済み音源を複数 Event が使う場合、WAV を複製せず manifest の各 Event から同じファイルを参照するように修正(intensity / loop 等の parameters は Event ごとに独立)
- 作業フォルダを切り替えた際、切替前のフォルダにだけ存在する Kit が一覧へ残る問題を修正。Kit 一覧を選択中フォルダの実ファイルから再構築するように変更
- Save Folder が複数ファイルを書き込む途中で外部フォルダ監視により Kit ディレクトリハンドルが無効化され、最後の manifest 書込みが
InvalidStateErrorになる問題を修正。各出力ファイルの直前に Kit ディレクトリを再取得するように変更 - Studio がユーザー選択フォルダのファイルを完全削除しないよう修正。Save Folder の stale WAV / 旧 manifest 削除を撤去し、Kit / clip の閉じる操作は
_archiveへの移動成功後だけ一覧から外す。source WAV 欠落時は部分 manifest の保存・Deploy を中止 - 空または一部欠損した
sample-kitは、既存ファイルを上書きせず、配布資産から不足している manifest / WAV だけをフォルダ再読込時に補充するよう変更 - Kit 音声の正本を IndexedDB から選択フォルダへ移し、original を
<kit>/source/、16 kHz 生成物をinstall-clips//stream-clips/に保存するよう修正。旧 Kit は manifest が参照する生成 WAV から安全にsource/を補完
[0.6.0] - 2026-07-22
Section titled “[0.6.0] - 2026-07-22”Added(追加)
Section titled “Added(追加)”- DuoWL v4 の音声DSP 設定 UI — in-codec EQ デザイナー / ヘッドホン音量 / A-V(音声-触覚間)delay(対象デバイス接続時のみ表示)
- v3 系受信機のソフトウェア触覚 EQ 設定 UI(対応ファームのみ表示)+ EQ プリセットのブラウザ保存
- SOLID48 送信機のランタイムチューニング(Opus complexity / HP バッファ)
- ボタンアクションに「触覚EQ LPF ⇄ OFF」(全受信機)と「HP Volume +/−」(DuoWL v4、16 段階)を追加
- スクリーンショット / デモ用モード等の細部改善
Changed(変更)
Section titled “Changed(変更)”- ファーム書込対象を ✔ チェック済み USB カードのみに変更(設定接続時に自動チェック)
- USB の設定接続と自動識別が競合するレースを解消(接続動作の安定化)
Fixed(修正)
Section titled “Fixed(修正)”- serial コマンドの応答が volume_changed 等のイベント行と混線し、get_info 結果が壊れることがある問題を修正
[0.5.0] - 2026-07-12
Section titled “[0.5.0] - 2026-07-12”Added(追加)
Section titled “Added(追加)”- DuoWL v4 のオーディオ設定 UI(触覚ゲイン / DAC ブースト / ヘッドホン音量 / ストリームバッファ、DEC-041)
- DuoWL v4 の入出力(ライン入力 / 出力)切替トグル
- USB serial カードに接続状態(選択 / 設定接続 / 書込対象)を色と文言で明示、設定接続中カードは緑枠で選択と区別
- USB デバイスの自動識別(Studio を開く / リロードした時に既接続の USB を自動で識別)
- USB カードの ⓘ ヘルプモーダル(選択・設定接続・識別・書込の違いを説明)と ✕ で閉じる操作
- オフラインが続いたデバイスのカードを自動的に隠す機能(手動 ✕ と同じ。再オンラインで自動再表示。OTA 中・再起動待ちのデバイスは対象外)
- スクリーンショット / デモ用モード(
?demo=1)— 実データやデバイスに一切触れず UI をサンプルデータで表示
Changed(変更)
Section titled “Changed(変更)”- USB と Wi-Fi のデバイス選択を排他化(一方を選ぶともう一方の選択は外れる)
- Wi-Fi の一括設定を逐次実行に変更(各機が設定後に再起動するため、同時書き込みでの失敗を回避)
- Kit の mode 情報モーダル / ショートカットヘルプの表記を LIVE(廃止)→ BOTH に更新
Fixed(修正)
Section titled “Fixed(修正)”- 識別ツールチップを ESP32-S3 再起動の正しい説明に修正
[0.4.0] - 2026-07-01
Section titled “[0.4.0] - 2026-07-01”Added(追加)
Section titled “Added(追加)”- USB serial カードの選択を Wi-Fi カードと統一(単クリック=このデバイスだけ選択 / Ctrl+クリック=追加選択 / Shift+クリック=範囲選択)
- USB serial セクションに「全選択 / 全解除」ボタン(5〜10 台の一斉並列書き込み向け)
- USB serial カードに「接続」ボタン(設定接続を選択とは別操作に分離)
Fixed(修正)
Section titled “Fixed(修正)”- カード選択時のレイアウトシフトを解消(Wi-Fi・USB 両方 — 選択表示は border 色のみで箱サイズ不変)
- ファームウェアライブラリのラベルを製品名に統一(Necklace → DuoWL / Band → BandWL)
- dev(ローカル)ファームウェアライブラリが repos-* 再編後の実ビルドを読めるようパス修正(凍結スナップショットの古い版を配信していた問題を解消。表示は各ビルドの実 fwVersion)
[0.3.1] - 2026-06-29
Section titled “[0.3.1] - 2026-06-29”Fixed(修正)
Section titled “Fixed(修正)”- ファームウェアのバージョン一覧で旧版が
vv0.1.1と「v」が二重表示される不具合(manifest のfwVersionを先頭vなしの正準形に統一 + 表示側でも正規化) - バージョンの日付表示を、ファイルの更新日時(≒デプロイ時刻)からリリースタグの公開日に変更(CI が GitHub Release の
publishedAtを manifest に取り込み) - アーカイブ版を選択した時にリリース日以下の行が1行ずれる不具合(選択状態の説明行を常時1行表示にして高さを固定。最新選択時は「最新版を選択中。」を表示)
[0.3.0] - 2026-06-26
Section titled “[0.3.0] - 2026-06-26”Added(追加)
Section titled “Added(追加)”- デバイスを見失った時用の「検出層 再初期化」ボタン(helper)
- インストール済み Kit のイベント再生を選択デバイス(IP)に限定(devices)
Fixed(修正)
Section titled “Fixed(修正)”- クリップ/イベント再生を選択デバイスに限定
- 設定名の変更後に入力欄が旧名へ戻る不具合
- 再生/停止コマンドのトーストを「コマンドを送信しました」に統一
preview_eventの targets から serial 疑似デバイスを除外- バージョンタブの「(現在)」表記を削除
[0.2.1] - 2026-06-21
Section titled “[0.2.1] - 2026-06-21”Added(追加)
Section titled “Added(追加)”- 凍結リリースをマイナー単位ディレクトリ化 + バージョンバッジ
- clip import 中の進捗バナー(Loading… X/Y + バー)
- sine-tones テンプレート + showcase-kit 更新
- バージョン切替をヘッダのプルダウンに昇格
Fixed(修正)
Section titled “Fixed(修正)”- clips を disk-as-truth 化(フォルダ接続時はディスクから再生 / phantom kit 抑制)
- 未検証の MQTT アラート variant を非表示(band_v3/v4/necklace)
[0.2.0] - 2026-06-16
Section titled “[0.2.0] - 2026-06-16”Added(追加)
Section titled “Added(追加)”- バージョン管理 + アプリ内ロールバック切替
- マルチトピック送信・ack-hold・Hapbeat グルーピング・flow チャート・OTA
- センサーマッピングの JSON import/export・OLED 改行・readout 整備
- デバイスカードに Wi-Fi OTA 進捗バー・各種 OLED 表示要素(mqtt_status / ALERT_LIMIT_MODE 等)
- config フォームの anchored toast フィードバック
[0.1.0] - 2026-06-16
Section titled “[0.1.0] - 2026-06-16”- 初版リリース