[ 関連記事 ]
– ドローンにRGB LEDを搭載するもう一つの方法 <- 親記事です
– ATtiny85によるLED制御 – ハードウェア実装編
– ATtiny85によるLED制御 – BUZZパッドを利用した制御方法
– ATtiny85によるLED制御 – プログラムの書き込み方法
「RGB LED制御プログラム書き込み済みATtiny85 – UART/LEDパッド接続用」の入力ポート(5番ピン)をFCのUARTまたはLED_Strip用パッドに接続して送信機から制御する方法です。
[ Betaflightファームウェアの前提 ]
Betaflightの更新の際に”その他のオプション”で”Pin IO”の指定が必要です。詳細については「ATtiny85によるLED制御 – BUZZパッドを利用した制御方法」の「Betaflightファームウェアの前提」の項をご覧ください。
[ FCへの接続 ]
電源への接続およびLEDへの接続は「ATtiny85によるLED制御 – ハードウェア実装編」をご覧ください。ATtiny85の5番ピンをFCのLEDパッドに接続します。TX, RXなどを使用いることも出来ます。
以下、LEDパッドで説明しますが必要に応じてTX, RXなどと読み替えください。
[ FCへの接続 ]
電源への接続およびLEDへの接続は「ATtiny85によるLED制御 – ハードウェア実装編」をご覧ください。ATtiny85の5番ピンはそのままFCのLEDバッドに接続します。
[ Betaflight Configuratorの設定 ]
CLIタブを開いていくつかのコマンドを投入する必要があります。
クリティカルな操作ですので最初にdiff allで構成のバックアップを取得しておいてください。
– LED_STRIPのリソースを見つける –
CLI画面で
resourc
コマンドを投入します。resourceの一覧が表示されますので、その中からLED_STRIPを見つけます。
resource LED_STRIP 1 B01
右端の文字列、この例の場合は”B01″を記憶します。これがFCボード上のLED_STRIPのパッドに付けられたIDです。
もしFC上にLEDパッドがあるのにresourceにてLED_STRIPが見つからない場合はBetaflightを更新の際に”LED Strip”のオプション指定が無いのかも知れません。オプションを指定して更新し直してください。
– PINIOの構成 –
引き続きCLIにて以下のコマンドを投入します。PINIOに割り当てるB01は実際の環境に応じて置き換えてください。
resource LED_STRIP 1 NONE
resource PINIO 1 B01
SET PINIO_BOX = 40,255,255,255
save
– モードによる送信機スイッチの割り当て –
上のPINIOの設定によりモード画面にUSER1が現れます。PINIO_BOXの最初のパラメーターである40が、このUSER1を出現させています。詳しいことはBetaflight Wikiをご覧ください。
USER1にAUX4(私の送信機のモーメンタリースイッチ)を割り当てた例です。どの領域をアクティブにするかは環境により変わります。アクティブな状態でATTiny85に対するスイッチオンであると考えて良いと思います。
これで送信機とLED_STRIPパッドが接続されました。
– 動作確認 –
スイッチを短押しして順次色が変われば成功です。長押しで光り方の変更です。もし意図したのと違う動作であればモード画面のアクティブになる範囲を調節してみてください。
[ BUZZパッドとの違い ]
LED_STRIP,TXn,RXnなどとBUZZとはハードウェア的に大きく違います。BUZZは単純なスイッチと考えて良いです。オフの時は開放されていて、オンになるとGNDに接続されます。LED_STRIP,TXn,RXnなどは普通のI/Oピンです。出力として設定された場合は状態により+3.3Vもしくは0V(GND)が現れます。そのため、ATtiny85側の設定も変える必要があります。実際にはBUZZ接続用に作ったATtiny85をLED_Stripに接続しても動作はしますが、電子回路の作りとして好ましくない状態が存在します。
[…] 親記事です – ATtiny85によるLED制御 – ハードウェア実装編 – ATtiny85によるLED制御 – UART/LEDパッドを利用した制御方法 – ATtiny85によるLED制御 – […]
[…] 親記事です – ATtiny85によるLED制御 – BUZZパッドを利用した制御方法 – ATtiny85によるLED制御 – UART/LEDパッドを利用した制御方法 – ATtiny85によるLED制御 – […]