SUPERNEOX 開発者ヘルプセンター

ProffieBoard V2.2 ユーザーガイド

SUPERNEOX ProffieBoard V2.2 搭載ライトセーバーを、ProffieOS 5.9で使用・設定・カスタマイズする方法を説明します。本ガイドでは、基本的な設定から実用的なカスタマイズまで、ライトセーバーの所有者に必要な情報をまとめています。
高度なプログラミング、ファームウェア設定、開発者向けカスタマイズについては、 ProffieBoard V2.2 開発者ガイド をご覧ください。

ProffieBoard V2.2 ProffieOS 5.9 ファームウェア 設定 ブレードスタイル
バージョンに関する注意: 本ガイドは主にProffieOS 5.9およびProffieBoard V2.xを対象としています。設定構文や利用可能な機能は、ProffieOSのバージョンによって異なる場合があります。必ず、使用しているバージョンに対応する公式ProffieOSドキュメントおよびソースコードで、バージョン固有の動作を確認してください。

1. ボタン操作

ボタンの動作は、ProffieOSの設定およびライトセーバーに定義されているボタン数によって決まります。以下の操作は、少なくとも1つの起動ボタンが設定されている構成を前提としており、AUXボタンを使用する場合があります。

機能 ボタン操作
ブレード点灯/消灯 起動/電源ボタンを短く押すと、ライトセーバーの電源がオンまたはオフになります。
消音状態で起動 電源ボタンを2回押します。
次のプリセット ブレードが消灯している状態で、AUXボタンを短く押します。
前のプリセット AUXボタンを押したまま、起動ボタンを押します。
Clash ブレード点灯中にブレードへ衝撃を与えます。
Lockup ブレード点灯中に起動ボタンを押したまま、ブレードに衝撃を与えます。起動ボタンを離すとLockupが終了します。
Drag Lockupと同様の操作です。起動ボタンを押してエフェクトを発生させる前に、ライトセーバーをほぼ下向きにしてください。
Force AUXボタンを長押しします。
サウンドトラック再生 起動ボタンを長押しします。
Blaster Block ブレード点灯中にAUXボタンを短く押します。
カラーチェンジモード ブレード点灯中にAUXボタンを押したまま、起動ボタンを素早く押します。確認音が鳴ったら、ヒルトを回して色を変更します。カラーチェンジモードを終了するには、確認音が鳴るまで起動ボタンを押し続けます。
開発者向けメモ: ボタンの動作は、設定されているボタン定義およびProffieOSのprop/button設定によって異なります。カスタムボタンレイアウトを使用する場合は、トラブルシューティングを行う前に、現在有効になっている設定を確認してください。

2. シリアルモニターコマンド

ProffieOSには、テスト、診断、設定確認、オーディオテスト、プリセット切り替えなどに使用できるシリアルコマンドが用意されています。

コマンド 説明
battery_voltage 現在のバッテリー電圧を表示します。
get_volume 現在の音量値を表示します。
pow ライトセーバーの電源をオンまたはオフにします。
on ライトセーバーの電源をオンにします。
off ライトセーバーの電源をオフにします。
set_volume <0-3000> 音量値を設定します。
例:set_volume 500
play デフォルトのプリセットサウンドトラックを再生します。すでに再生中の場合は、再生を停止します。
play_track tracks/<track name>.wav tracksフォルダ内の指定したトラックを再生します。
例:play_track tracks/venus.wav
stop_track tracks/<track name>.wav 指定したトラックの再生を停止します。
force Forceサウンドエフェクトを再生します。
drag Dragサウンドエフェクトを再生します。
blast Blasterサウンドエフェクトを再生します。
lock Lockupサウンドエフェクトを再生します。
clash Clashサウンドエフェクトを再生します。
reset ProffieBoardを再起動します。
n 次のプリセットに切り替えます。
p 前のプリセットに切り替えます。
list_presets 利用可能なすべてのプリセットを一覧表示します。
sdtest SDカードの速度をテストします。
scanid 検出されたBlade IDの抵抗値を表示します。

3. ソフトウェアのインストールとセットアップ

ProffieBoardのファームウェアを開発・書き込みするには、Arduino IDE、ProffieBoard Arduinoプラグイン、および適切なUSBドライバーが必要です。

推奨環境: 安定版のArduino IDEを使用してください。SUPERNEOX ProffieBoard V2.2搭載ライトセーバーについては、本ガイドではProffieOS 5.9を基準とした手順を説明しています。

3.1 必要なソフトウェア

Arduino IDE

ProffieOSファームウェアの編集、コンパイル、書き込みに使用します。

ProffieBoardプラグイン

Arduino IDEにProffieBoardのサポートおよびボード固有の書き込み機能を追加します。

Zadig

ファームウェアの書き込みに必要なUSBドライバーの設定を行う際に使用します。

USBデータケーブル

データ通信に対応したMicro-USBケーブルが必要です。充電専用ケーブルはファームウェアの書き込みには使用できません。

3.2 Arduino IDEのインストール

Arduino IDEの最新安定版をインストールしてください。 Beta版は使用しないでください。

Arduino IDE

Windowsでは、Arduino IDEをWindows Storeアプリとしてインストールすることは推奨されません。アプリケーションが保護されたディレクトリにインストールされる場合があり、追加のプラグインやソフトウェアを正常にインストールできないことがあります。

COMポートに関するトラブルシューティング: ProffieBoardが利用可能なCOMポートとして表示されない場合は、別のUSBポートを試し、ケーブルがデータ通信に対応していることを確認してください。必要に応じて、以前の安定版Arduino IDEもお試しください。

3.3 ProffieBoardプラグインとZadigのインストール

ProffieBoard ArduinoプラグインおよびZadigを、それぞれのインストール手順に従ってインストールしてください。

ProffieBoard Arduinoプラグイン

3.4 Arduino IDEのボード設定

Arduino IDEで以下を選択します。

ツール → ボード → Proffieboard V2
設定項目 推奨値
Board Proffieboard V2
USB Type Serial + Mass Storage(または + WebUSB)
CPU Speed 80 MHz
Optimize Smallest Code
または Fast / Faster / Fastest
DOSFS SDCARD (SPI)
Port 接続されているProffieBoardに割り当てられたCOMポート

ProffieBoardをUSBデータケーブルでコンピューターに接続してください。接続すると、割り当てられたCOMポートがPortメニューに表示されます。

4. ファームウェアの書き込みと更新

手順1 — ProffieOSとSDカードファイルをダウンロードする

ProffieOSファームウェアパッケージおよび対応するSDカードファイルをダウンロードしてください。

SUPERNEOX ProffieBoard V2.2搭載ライトセーバーについては、本開発者ガイドではProffieOS 5.9を基準バージョンとして使用しています。

ProffieOS 5.9

以下のファイルを解凍します。

ProffieOS-v5.9.zip

パッケージは、ドキュメントフォルダやデスクトップなど、通常の作業用ディレクトリに解凍してください。

重要: ProffieOSをArduinoのインストールディレクトリやWindowsのProgram Filesディレクトリに解凍しないでください。

解凍後の構成は、以下のようになります。

ProffieOS-v5.9/

└── ProffieOS/

ProffieOSディレクトリ内のフォルダやファイルの名前を変更したり、移動したりしないでください。

手順2 — SDカードの内容をコピーする

ProffieOS SDカードの内容

以下のファイルを解凍します。

ProffieOS_SD_Card.zip

解凍したProffieOS_SD_Cardフォルダ内のすべてのファイルを、ProffieBoardのmicroSDカードのルートディレクトリにコピーしてください。

Windowsのファイル拡張子設定

Windowsのエクスプローラーでファイル名拡張子を有効にし、.hなどのファイル拡張子が表示されるようにしてください。

拡張子を重複させないでください。 Windowsで既存の拡張子が非表示になっている場合、設定ファイルの末尾に手動で別の.hを追加しないでください。

手順3 — 設定ファイルを作成する

以下を開きます。

ProffieOS/config/

このディレクトリ内に設定ファイルを作成します。

推奨される方法は、適切なデフォルト設定ファイルをコピーして別名で保存し、そのコピーの内容をライトセーバー用に生成した設定へ置き換える方法です。

ProffieBoard V2.xでは、公式の ProffieBoard V2.x Configurator を使用してください。

手順4 — 設定ファイルを指定する

以下を開きます。

ProffieOS/ProffieOS.ino

CONFIG_FILEの定義を探します。

#define CONFIG_FILE "config/my_saber_config.h"

configディレクトリに複数の設定ファイルがある場合、コンパイル対象として有効にする設定ファイルは1つだけにしてください。

重要: 有効なCONFIG_FILEの定義は同時に1つだけにしてください。

複数のライトセーバー設定ファイルを同じconfigディレクトリに保存しておくことは可能です。使用する設定ファイルは、有効なCONFIG_FILEを変更することで切り替えられます。

手順5 — ProffieBoardを接続する

データ通信対応のMicro-USBケーブルを使用して、ProffieBoardをコンピューターに接続してください。

USBケーブルに関する注意: 充電専用USBケーブルは、ファームウェアの書き込みには使用できません。

手順6 — コンパイルして書き込む

  1. Arduino IDEでProffieOS.inoを開きます。
  2. 正しいProffieBoard V2ボードとCOMポートが選択されていることを確認します。
  3. 正しいCONFIG_FILEが有効になっていることを確認します。
  4. Uploadをクリックします。
  5. コンパイルと書き込みが完了するまで待ちます。

書き込みが正常に完了すると、進行状況が100%に達します。

スピーカーが接続されている場合、書き込みが正常に完了するとProffieBoardから起動音が再生されます。

Serial + Mass Storageを選択していて、ProffieBoardがリムーバブルドライブとして表示された場合は、USBケーブルを取り外す前に安全にドライブを取り外してください。

ファームウェアの書き込み完了: 新しいProffieOSファームウェアがProffieBoardにインストールされました。

書き込み時のトラブルシューティング

書き込みに失敗した場合は、以下の一般的な原因を確認してください。

  1. 設定ヘッダーファイルに構文エラーまたは設定エラーがある可能性があります。
  2. CONFIG_FILEのファイル名が正しくない可能性があります。
  3. 設定ファイルがProffieOS/config/ディレクトリに配置されていない可能性があります。
  4. Windowsのユーザー名または作業ディレクトリに非ラテン文字が含まれていると、ツールチェーンで問題が発生する場合があります。
  5. 選択されているボード、USB Type、CPU Speed、またはCOMポートが正しくない可能性があります。

5. SDカードの内容

ProffieOSでは、ライトセーバーのmicroSDカードにサウンドフォント、設定関連ファイル、音楽トラックなどを保存します。

サウンドフォント

対応しているサウンドフォントフォルダをmicroSDカードのルートディレクトリにコピーしてください。

元の設定では、以下のような一般的なサウンドフォント構成に対応しています。

Plecter

Plecter互換のサウンドフォント構成。

NEC

NEC互換のサウンドフォント構成。

SmoothSwing

SmoothSwing互換のサウンドフォント構成。

対応しているサウンドフォント構成を使用する場合、通常はWAVファイルの名前を変更する必要はありません。

音楽トラック

音楽トラックは以下のディレクトリに保存してください。

tracks/

例:

tracks/venus.wav

tracks/mars.wav
tracks/mercury.wav

ファイル名とフォルダ名

互換性を高めるため、サウンドフォントフォルダや音楽トラックには、ラテン文字とシンプルなファイル名を使用してください。

以下のような不要な特殊文字は避けてください。

? , . | \ } { [ / -

各サウンドフォントフォルダには、以下のような必要な設定ファイルを含めてください。

config.ini

smoothsw.ini
ファイルが不足している場合: 必要なファイルが見つからない場合は、任意の代替ファイルを作成するのではなく、正常に動作しているProffieBoardのデフォルトサウンドフォントから対応するファイルをコピーしてください。

6. 設定とパラメータ

ProffieBoardの設定は、主に以下の場所にあるC++設定ヘッダーファイルで管理されます。

ProffieOS/config/

設定ファイルでは、ボード構成、ブレード数、ボタン、オーディオ設定、モーション機能、LED設定、Clash感度、プリセット、ブレードスタイルなどを定義します。

ProffieBoard V2 設定

ProffieBoard V2の基本設定

#ifdef CONFIG_TOP

#include "proffieboard_v2_config.h"

#define NUM_BLADES 1
#define NUM_BUTTONS 2
#define VOLUME 1000

const unsigned int maxLedsPerStrip = 144;

#define CLASH_THRESHOLD_G 1.0

#define ENABLE_AUDIO
#define ENABLE_MOTION
#define ENABLE_WS2811
#define ENABLE_SD
#define SAVE_STATE

#endif

パラメータリファレンス

パラメータ 用途
NUM_BLADES 使用するブレード構成の数を指定します。
NUM_BUTTONS 設定するボタン数を指定します。参照されている設定では1~3個のボタンに対応しています。
VOLUME 初期音量値を設定します。ドキュメント上の設定範囲は0~3000です。
maxLedsPerStrip アドレサブルLEDストリップに設定する最大LED数を指定します。
CLASH_THRESHOLD_G Clash検出の感度を設定します。一般的に、値を小さくすると感度が高くなり、値を大きくすると感度が低くなります。
ENABLE_AUDIO オーディオ機能を有効にします。
ENABLE_MOTION モーションセンサー機能を有効にします。
ENABLE_WS2811 WS2811/アドレサブルLED機能を有効にします。
ENABLE_SD SDカード機能を有効にします。
SAVE_STATE 選択した音量、プリセット、ブレードカラーなどの状態情報をボードに保存できるようにします。

Clash感度

推奨される初期値は以下のとおりです。

#define CLASH_THRESHOLD_G 1.0

一般的に、値を小さくするとClash検出の感度が高くなり、値を大きくすると感度が低くなります。

調整のヒント: Clash感度は少しずつ調整してください。感度を高くしすぎると通常の動作でも誤検出が発生する場合があり、感度を低くしすぎると実際の衝撃を検出できない場合があります。

設定ファイルの編集

C++設定ファイルを編集する際は、プレーンテキストエディタまたはコードエディタを使用してください。

Microsoft Wordは使用しないでください。 ワープロソフトは、書式設定用の文字を挿入したり、ソースファイルの構造を変更したりする場合があります。

設定を変更した後は、以下の手順を行ってください。

  1. 設定ファイルを保存します。
  2. ProffieOS.inoを開きます。
  3. 正しいCONFIG_FILEが有効になっていることを確認します。
  4. ファームウェアをコンパイルします。
  5. ProffieBoardにファームウェアを書き込みます。

7. プリセット設定

プリセットでは、ライトセーバーで使用するサウンドフォント、サウンドトラック、ブレードスタイル、および表示用のプリセット名を定義します。

基本的なプリセット構成

一般的なプリセットは、CONFIG_PRESETSセクション内で定義します。

#ifdef CONFIG_PRESETS

Preset presets[] = {

{
"TeensySF",
"tracks/venus.wav",
StyleNormalPtr(),
"cyan"
}

};

#endif

プリセットの構成要素

構成要素 説明
サウンドフォントフォルダ SDカードに保存されているサウンドフォントフォルダの名前です。
トラック名 音楽トラックのパスです。通常はtracksディレクトリ内に配置します。
ブレードスタイル ブレードの表示方法およびエフェクトの動作を定義します。
プリセット名 プリセットシステムで使用する表示用の名前です。

ブレード設定

物理ブレードの設定は、BladeConfig blades[]配列で定義します。

この設定によって、実際のLED/ブレードハードウェアとプリセット設定が関連付けられます。

BladeConfig blades[] = {

{
0,
WS281XBladePtr<
144,
bladePin,
Color8::GRB,
PowerPINS
>(),
CONFIGARRAY(presets)
},

};

8. ブレードスタイル

ProffieOSでは、ブレードスタイルを使用してメインブレードやその他の設定済みLEDの表示動作を定義します。

カラー

基本カラーやカスタムブレードカラーを設定します。

モーションエフェクト

動き、スイング、その他のモーション入力に応じたエフェクトを設定します。

インパクトエフェクト

Clash、Blaster、Lockup、Dragなどのエフェクトを設定します。

トランジション

点灯、消灯、タイミング、トランジション動作を設定します。

ブレードスタイルで設定できる主な機能

  • 基本カラー
  • カラー変更
  • フリッカー
  • Clashフラッシュ
  • Blasterエフェクト
  • Lockupエフェクト
  • Dragエフェクト
  • 点灯エフェクト
  • 消灯エフェクト
  • タイミング
  • トランジション動作

ブレードスタイルエディター

元の開発者向けドキュメントでは、ブレードスタイルの作成および編集にBlade Style Editorを使用することが推奨されています。

参考資料:

ブレードスタイルの構造

ブレードスタイルは通常、StylePtr<...>式の中に記述します。

複数のエフェクトを入れ子にして組み合わせることができ、それぞれのレイヤーで下位のエフェクトを変更または変換できます。

InOutHelper

InOutHelper<base color, 200, 300, Black>
パラメータ 意味
base color メインブレードカラー。
200 伸長/点灯にかかる時間(ミリ秒)。
300 収納/消灯にかかる時間(ミリ秒)。
Black ブレード収納時のカラー。

カラー定義

一般的なブレードカラーには、あらかじめ定義されたカラー定数を使用できます。

WHITE
 

RED
GREEN
BLUE
PURPLE
CYAN
YELLOW
MAGENTA

カスタムRGBカラーは以下の形式で指定できます。

Rgb<R, G, B>

例:

Rgb<255, 50, 0>

各RGBチャンネルには0255の値を指定します。

  • 0 = そのチャンネルを出力しない
  • 255 = そのチャンネルを最大出力

AudioFlicker

AudioFlicker<"A" color, "B" color>

AudioFlickerは、ライトセーバーのサウンドやハム音に反応してフリッカーするブレードエフェクトを作成します。

2つのカラーの差が大きいほど、一般的に視覚的な変化も大きくなります。

OnSpark

OnSpark<base color, spark color, duration>

OnSparkは、ブレード点灯時にスパークエフェクトを追加します。durationの値はミリ秒単位で指定します。

SimpleClash

SimpleClash<base color, clash color, 40>

Clash時のフラッシュエフェクトを追加します。最後のパラメータは、エフェクトの持続時間をミリ秒単位で指定します。

Lockup

Lockup<base color, lockup color>

Lockupエフェクトを追加し、エフェクト中に使用するカラーの動作を指定します。

Blast

Blast<base color, blast color>

Blasterエフェクトを追加し、エフェクトに使用するカラーを指定します。

複合ブレードスタイルの例

より高度なブレードスタイルでは、複数のエフェクトを1つの入れ子構造の式に組み合わせることができます。

一般的な複合スタイルには、以下のような要素を含めることができます。

  • グリーンの基本カラー
  • Audio flicker
  • 点灯時のスパーク
  • Clashエフェクト
  • Blasterエフェクト
  • Lockupエフェクト
  • Dragエフェクト
  • 点灯タイミング
  • 消灯タイミング
開発者向けメモ: ブレードスタイルの式は非常に長くなったり、深い入れ子構造になったりする場合があります。複雑なスタイルをデバッグする場合は、まず各エフェクトを個別にテストし、その後少しずつ組み合わせてください。

完成したブレードスタイルは、プリセット内の適切なStylePtr<...>コンテナに挿入します。

9. 開発者向けリファレンス

最新のProffieOS開発情報、設定方法、およびボード固有の情報については、本SUPERNEOX開発者ガイドとあわせて以下の公式リソースを参照してください。

SUPERNEOX SD設定ファイル

SUPERNEOX Proffie V2.2のデフォルト設定ファイルです。

Google Driveを開く →

ProffieOSドキュメント

ProffieOSの機能、設定、開発に関する公式ドキュメントです。

ドキュメントを開く →

ProffieOS GitHub

ソースコード、リリース、設定例、開発関連情報を確認できます。

GitHubを開く →

ProffieBoard V2.x Configurator

ProffieBoard V2.x向けのブラウザベース設定ツールです。

Configuratorを開く →

ProffieOSサポートフォーラム

ProffieOSおよびProffieBoardに関するコミュニティディスカッションやトラブルシューティング情報を確認できます。

サポートフォーラムを開く →

10. ドキュメントの範囲

ドキュメントの範囲: 本開発者ガイドは、提供されたProffieBoard V2技術マニュアルを基に作成されており、基本的な設定概念、コマンドリファレンス、ファームウェアの書き込み手順、プリセット構造、およびブレードスタイルに関する用語を維持しています。

ProffieOSは継続的にメンテナンスされています。設定構文、利用可能な機能、対応ハードウェア、および動作は、バージョンによって異なる場合があります。

必ずバージョン固有の動作を確認してください。 本番環境のライトセーバーに設定やコード例を適用する前に、ボードにインストールされているProffieOSの正確なバージョンに対応するドキュメントおよびソースコードと照合してください。

SUPERNEOX 開発者ヘルプセンター

ProffieBoard V2.2 · ProffieOS 5.9 · ファームウェア/設定リファレンス