機体の準備
使用する機体
機体はJJR/C R010を使用する。
昨年の春ごろにBanggoodで赤・青それぞれ1機ずつ購入したもの。
こちらの記事などを参考に機体の改造をする。
コネクターの取り付け
基板にコネクタのハンダづけが必要なため、フレームからキャノピーを取り外し、基板を取り出しす。
この時、先に、基板に直接ハンダ付けされているモーター配線を半田ごてを使って取り外すことが必要。
取り出した基板に下の写真のようにコネクター類を取り付ける。
バッテリーコネクターの交換
スティック型のLipoバッテリーを使用するため、基板に直付けされているコネクターをはんだごてとはんだ吸い取り線を使って取り外し、コネクター付きのケーブルをハンダ付けする。
Gaoneng 350mAh 1S Lipo Battery HV 30C 3.8V with JST-PH 2.0 Connector for Tiny Whoop Micro FPV Racing Drone (Pack of 6)shop.makerfire.com
キャノピーの加工
キャノピーは裏側の突起部分をリューターで削り取り、栓のようなパーツをペンチで引っこ抜く。
バッテリーコネクターのケーブルが干渉するので、後ろの部分もリューターで少し削る。
カメラマウントの作成
カメラの緩衝材に使われていた発泡スチロールをカッターで削ってカメラマウントを作成する。
キャノピーへの取り付けはとりあえず両面テープを使用。
プロポについて(その3)〜 udevの設定 〜
lsusbを使った接続確認
udevのルールを追加せずにT8SGをDFUモードで接続すると、
DeviationUploaderで認識されず、ファームウェアの書き換えができない。
lsusb
を使用して接続状況を確認してみる。
$ sudo lsusb Bus 003 Device 008: ID 05ac:8501 Apple, Inc. Built-in iSight [Micron] Bus 003 Device 040: ID 0483:df11 STMicroelectronics STM Device in DFU Mode Bus 003 Device 002: ID 1a40:0101 Terminus Technology Inc. Hub Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 007 Device 003: ID 05ac:022b Apple, Inc. Internal Keyboard/Trackpad (MacBook Pro) (JIS) Bus 007 Device 002: ID 05ac:8242 Apple, Inc. Built-in IR Receiver Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 001 Device 005: ID 05ac:0251 Apple, Inc. Apple Keyboard Bus 001 Device 004: ID 056e:0132 Elecom Co., Ltd TrackBall Mouse M-DPT1MR Wireless Bus 001 Device 003: ID 05ac:1006 Apple, Inc. Hub in Aluminum Keyboard Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 002 Device 009: ID 05ac:8205 Apple, Inc. Bluetooth HCI Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
ツリー形式で表示すると、
$ sudo lsusb -t /: Bus 07.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M |__ Port 1: Dev 2, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M |__ Port 2: Dev 3, If 0, Class=Human Interface Device, Driver=usbhid, 12M |__ Port 2: Dev 3, If 1, Class=Human Interface Device, Driver=appletouch, 12M |__ Port 2: Dev 3, If 2, Class=Human Interface Device, Driver=usbhid, 12M /: Bus 06.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M /: Bus 05.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M /: Bus 04.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M /: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/6p, 480M |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M |__ Port 4: Dev 40, If 0, Class=Application Specific Interface, Driver=, 12M |__ Port 4: Dev 8, If 0, Class=Video, Driver=uvcvideo, 480M |__ Port 4: Dev 8, If 1, Class=Video, Driver=uvcvideo, 480M /: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M |__ Port 1: Dev 9, If 0, Class=Wireless, Driver=btusb, 12M |__ Port 1: Dev 9, If 1, Class=Wireless, Driver=btusb, 12M |__ Port 1: Dev 9, If 2, Class=Application Specific Interface, Driver=, 12M /: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/4p, 480M |__ Port 2: Dev 3, If 0, Class=Hub, Driver=hub/3p, 480M |__ Port 1: Dev 4, If 0, Class=Human Interface Device, Driver=usbhid, 12M |__ Port 1: Dev 4, If 1, Class=Human Interface Device, Driver=usbhid, 12M |__ Port 1: Dev 4, If 2, Class=Human Interface Device, Driver=usbhid, 12M |__ Port 1: Dev 4, If 3, Class=Human Interface Device, Driver=usbhid, 12M |__ Port 2: Dev 5, If 1, Class=Human Interface Device, Driver=usbhid, 1.5M |__ Port 2: Dev 5, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
T8SGである”STMicroelectronics STM Device in DFU Mode”は
Bus 003にDevice 40として、接続されている。
vendorとproductはそれぞれ、0483とdf11。
このvendorとproductを指定してさらに詳細を表示する。
$ sudo lsusb -v -d 0483:df11 Bus 003 Device 040: ID 0483:df11 STMicroelectronics STM Device in DFU Mode Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 1.00 bDeviceClass 0 bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 64 idVendor 0x0483 STMicroelectronics idProduct 0xdf11 STM Device in DFU Mode bcdDevice 2.00 iManufacturer 1 STMicroelectronics iProduct 2 STM32 DFU iSerial 3 DEVO-7E ㌀⡂䣿ጴ々W bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 0x002d bNumInterfaces 1 bConfigurationValue 1 iConfiguration 0 bmAttributes 0x80 (Bus Powered) MaxPower 64mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 0 bInterfaceClass 254 Application Specific Interface bInterfaceSubClass 1 Device Firmware Update bInterfaceProtocol 2 iInterface 4 @Internal Flash /0x08003000/00*001Ka,244*001Kg Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 1 bNumEndpoints 0 bInterfaceClass 254 Application Specific Interface bInterfaceSubClass 1 Device Firmware Update bInterfaceProtocol 2 iInterface 5 @SPI Flash: Config/0x00002000/030*04Kg Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 2 bNumEndpoints 0 bInterfaceClass 254 Application Specific Interface bInterfaceSubClass 1 Device Firmware Update bInterfaceProtocol 2 iInterface 6 @SPI Flash: Library/0x00020000/030*064Kg Device Firmware Upgrade Interface Descriptor: bLength 9 bDescriptorType 33 bmAttributes 11 Will Detach Manifestation Intolerant Upload Supported Download Supported wDetachTimeout 255 milliseconds wTransferSize 1024 bytes bcdDFUVersion 1.1a Device Status: 0x0000 (Bus Powered)
“Devo-7E”などの表示もあり、特に問題は見つからないように思う。
udevadmの出力結果
T8SGを接続する前にudevadm
を起動しておく。
$ sudo udevadm monitor -p
-uオプションと-kオプションがどちらも指定されていなければ、
接続や取り外し時にカーネルとudevの両方のメッセージが表示される。
monitor will print the received events for: UDEV - the event which udev sends out after rule processing KERNEL - the kernel uevent KERNEL[8118569.017950] add /devices/pci0000:00/0000:00:1d.7/usb3/3-1/3-1.4 (usb) ACTION=add DEVPATH=/devices/pci0000:00/0000:00:1d.7/usb3/3-1/3-1.4 SUBSYSTEM=usb DEVNAME=/dev/bus/usb/003/040 DEVTYPE=usb_device PRODUCT=483/df11/200 TYPE=0/0/0 BUSNUM=003 DEVNUM=040 SEQNUM=3499 MAJOR=189 MINOR=295 KERNEL[8118569.020321] add /devices/pci0000:00/0000:00:1d.7/usb3/3-1/3-1.4/3-1.4:1.0 (usb) ACTION=add DEVPATH=/devices/pci0000:00/0000:00:1d.7/usb3/3-1/3-1.4/3-1.4:1.0 SUBSYSTEM=usb DEVTYPE=usb_interface PRODUCT=483/df11/200 TYPE=0/0/0 INTERFACE=254/1/2 MODALIAS=usb:v0483pDF11d0200dc00dsc00dp00icFEisc01ip02in00 SEQNUM=3500 KERNEL[8118569.020793] bind /devices/pci0000:00/0000:00:1d.7/usb3/3-1/3-1.4 (usb) ACTION=bind DEVPATH=/devices/pci0000:00/0000:00:1d.7/usb3/3-1/3-1.4 SUBSYSTEM=usb DEVNAME=/dev/bus/usb/003/040 DEVTYPE=usb_device DRIVER=usb PRODUCT=483/df11/200 TYPE=0/0/0 BUSNUM=003 DEVNUM=040 SEQNUM=3501 MAJOR=189 MINOR=295 UDEV [8118569.043236] add /devices/pci0000:00/0000:00:1d.7/usb3/3-1/3-1.4 (usb) ACTION=add DEVPATH=/devices/pci0000:00/0000:00:1d.7/usb3/3-1/3-1.4 SUBSYSTEM=usb DEVNAME=/dev/bus/usb/003/040 DEVTYPE=usb_device PRODUCT=483/df11/200 TYPE=0/0/0 BUSNUM=003 DEVNUM=040 SEQNUM=3499 USEC_INITIALIZED=8118569042741 ID_VENDOR=STMicroelectronics ID_VENDOR_ENC=STMicroelectronics ID_VENDOR_ID=0483 ID_MODEL=STM32_DFU ID_MODEL_ENC=STM32\x20DFU ID_MODEL_ID=df11 ID_REVISION=0200 ID_SERIAL=STMicroelectronics_STM32_DFU ID_BUS=usb ID_USB_INTERFACES=:fe0102: ID_VENDOR_FROM_DATABASE=STMicroelectronics ID_MODEL_FROM_DATABASE=STM Device in DFU Mode ID_PATH=pci-0000:00:1d.7-usb-0:1.4 ID_PATH_TAG=pci-0000_00_1d_7-usb-0_1_4 DRIVER=usb ID_FOR_SEAT=usb-pci-0000_00_1d_7-usb-0_1_4 MAJOR=189 MINOR=295 TAGS=:seat: CURRENT_TAGS=:seat: UDEV [8118569.051684] add /devices/pci0000:00/0000:00:1d.7/usb3/3-1/3-1.4/3-1.4:1.0 (usb) ACTION=add DEVPATH=/devices/pci0000:00/0000:00:1d.7/usb3/3-1/3-1.4/3-1.4:1.0 SUBSYSTEM=usb DEVTYPE=usb_interface PRODUCT=483/df11/200 TYPE=0/0/0 INTERFACE=254/1/2 MODALIAS=usb:v0483pDF11d0200dc00dsc00dp00icFEisc01ip02in00 SEQNUM=3500 USEC_INITIALIZED=8118569051210 ID_VENDOR_FROM_DATABASE=STMicroelectronics ID_MODEL_FROM_DATABASE=STM Device in DFU Mode ID_PATH=pci-0000:00:1d.7-usb-0:1.4:1.0 ID_PATH_TAG=pci-0000_00_1d_7-usb-0_1_4_1_0 UDEV [8118569.073052] bind /devices/pci0000:00/0000:00:1d.7/usb3/3-1/3-1.4 (usb) ACTION=bind DEVPATH=/devices/pci0000:00/0000:00:1d.7/usb3/3-1/3-1.4 SUBSYSTEM=usb DEVNAME=/dev/bus/usb/003/040 DEVTYPE=usb_device DRIVER=usb PRODUCT=483/df11/200 TYPE=0/0/0 BUSNUM=003 DEVNUM=040 SEQNUM=3501 USEC_INITIALIZED=8118569042741 ID_VENDOR=STMicroelectronics ID_VENDOR_ENC=STMicroelectronics ID_VENDOR_ID=0483 ID_MODEL=STM32_DFU ID_MODEL_ENC=STM32\x20DFU ID_MODEL_ID=df11 ID_REVISION=0200 ID_SERIAL=STMicroelectronics_STM32_DFU ID_BUS=usb ID_USB_INTERFACES=:fe0102: ID_VENDOR_FROM_DATABASE=STMicroelectronics ID_MODEL_FROM_DATABASE=STM Device in DFU Mode ID_PATH=pci-0000:00:1d.7-usb-0:1.4 ID_PATH_TAG=pci-0000_00_1d_7-usb-0_1_4 ID_FOR_SEAT=usb-pci-0000_00_1d_7-usb-0_1_4 MAJOR=189 MINOR=295 TAGS=:seat: CURRENT_TAGS=:seat:
デバイス名は /dev/bus/usb/003/040
となっている。
ls
を使ってデバイスファイルの状態を確認する。
$ ls -l -d /dev/bus/usb/003/040 crw-rw-r-- 1 root root 189, 295 5月 1 19:50 /dev/bus/usb/003/040
ユーザー、グループの両方がrootになっていて、
otherのパーミッションは”r”しか設定されていないため、
root以外のユーザーでは書き込みができず、コマンドも送れない。
パーミッションの設定
直接/dev/bus/used/003/040などのデバイスファイルのパーミッションを変更しても、
次回接続時には反映されない。
USB接続のデバイスに所属グループやパーミッションを設定するためには
適切な識別情報を与えてudevルールを追加する。
今回の場合は、idVendorとidProductを指定して、グループをplugdevに、
パーミッションを0664に設定するルールを追加している。
$ cat /etc/udev/rules.d/45-stdfu-permissions.rules # DFU (Internal bootloader for STM32 MCUs) ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", MODE="0664", GROUP="plugdev"
ルールファイルを追加したのち、T8SGを再接続すると、パーミッションとグループが反映され、
plugdevに所属しているユーザーで起動したDeviationUploaderに認識されるようになる。
ということらしい・・・
$ lsusb Bus 003 Device 008: ID 05ac:8501 Apple, Inc. Built-in iSight [Micron] Bus 003 Device 041: ID 0483:df11 STMicroelectronics STM Device in DFU Mode Bus 003 Device 002: ID 1a40:0101 Terminus Technology Inc. Hub Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 007 Device 003: ID 05ac:022b Apple, Inc. Internal Keyboard/Trackpad (MacBook Pro) (JIS) Bus 007 Device 002: ID 05ac:8242 Apple, Inc. Built-in IR Receiver Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 001 Device 005: ID 05ac:0251 Apple, Inc. Apple Keyboard Bus 001 Device 004: ID 056e:0132 Elecom Co., Ltd TrackBall Mouse M-DPT1MR Wireless Bus 001 Device 003: ID 05ac:1006 Apple, Inc. Hub in Aluminum Keyboard Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 002 Device 009: ID 05ac:8205 Apple, Inc. Bluetooth HCI Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub $ ls -l -d /dev/bus/usb/003/041 crw-rw-r-- 1 root plugdev 189, 296 5月 1 19:54 /dev/bus/usb/003/041
プロポについて(その2) 〜 firmwareの書き換え 〜
書き込み用アプリケーションとDeviation(Nightly build)のダウンロード
Deviation - Homeを開き、"Downloads"リンクをクリック。
"DFU USB Tool"をクリックしてファームウェア書き込み用アプリケーションのダウンロードページへ。
"Download"ボタンをクリックして、"DeviaionUpload-0.9.0.jar"をダウンロードし適当なディレクトリーに保存。
"Downloads"リンクからダウンロードページへ戻る。
"Nightly Builds"リンクをクリックしてダウンロードページへ
Nightly Buildの日付を選択
T8SG-V2用(plusはOLEDディスプレイ用なので使用できない)のダウンロードボタンをクリックしてダウンロードし、
適当なディレクトリに保存する。
ダウンロードしたファームウェア(deviation-t8sg_v2-v5.0.0-xxxxxx.zip)は適当な作業用ディレクトリーに解凍する。
myname@myhost:~/tmp$ unzip ~/Downloads/deviation-t8sg_v2-v5.0.0-c84450e.zip -d 2021-06-11/ Archive: /home/myname/Downloads/deviation-t8sg_v2-v5.0.0-c84450e.zip inflating: 2021-06-11/deviation-t8sg_v2-v5.0.0-c84450e.dfu inflating: 2021-06-11/UPDATING.md inflating: 2021-06-11/datalog.bin extracting: 2021-06-11/errors.txt inflating: 2021-06-11/hardware.ini creating: 2021-06-11/language/ inflating: 2021-06-11/language/lang.af inflating: 2021-06-11/language/lang.nl inflating: 2021-06-11/language/lang.pt inflating: 2021-06-11/language/lang.ja inflating: 2021-06-11/language/lang.it inflating: 2021-06-11/language/lang.es inflating: 2021-06-11/language/lang.fr inflating: 2021-06-11/language/lang.de inflating: 2021-06-11/language/lang.ru inflating: 2021-06-11/language/lang.cn inflating: 2021-06-11/language/lang.ro inflating: 2021-06-11/language/lang.hu inflating: 2021-06-11/language/lang.tw creating: 2021-06-11/layout/ inflating: 2021-06-11/layout/empty.ini inflating: 2021-06-11/layout/default.ini creating: 2021-06-11/media/ inflating: 2021-06-11/media/toggle2.bmp inflating: 2021-06-11/media/toggle0.bmp inflating: 2021-06-11/media/5x7.fon inflating: 2021-06-11/media/splash.bmp inflating: 2021-06-11/media/10narrow.fon inflating: 2021-06-11/media/noicon.bmp inflating: 2021-06-11/media/48normal.fon inflating: 2021-06-11/media/04b03.fon inflating: 2021-06-11/media/sound.ini inflating: 2021-06-11/media/18bold.fon inflating: 2021-06-11/media/12normal.fon inflating: 2021-06-11/media/toggle3.bmp inflating: 2021-06-11/media/config.ini inflating: 2021-06-11/media/10normal.fon inflating: 2021-06-11/media/14bold.fon inflating: 2021-06-11/media/toggle1.bmp creating: 2021-06-11/modelico/ inflating: 2021-06-11/modelico/plane.bmp inflating: 2021-06-11/modelico/multi.bmp inflating: 2021-06-11/modelico/heli.bmp creating: 2021-06-11/models/ inflating: 2021-06-11/models/model16.ini inflating: 2021-06-11/models/model11.ini inflating: 2021-06-11/models/model24.ini inflating: 2021-06-11/models/model17.ini inflating: 2021-06-11/models/model30.ini inflating: 2021-06-11/models/model15.ini inflating: 2021-06-11/models/model13.ini inflating: 2021-06-11/models/model21.ini inflating: 2021-06-11/models/model3.ini inflating: 2021-06-11/models/model27.ini inflating: 2021-06-11/models/model28.ini inflating: 2021-06-11/models/model12.ini inflating: 2021-06-11/models/default.ini inflating: 2021-06-11/models/model20.ini inflating: 2021-06-11/models/model2.ini inflating: 2021-06-11/models/model6.ini inflating: 2021-06-11/models/model10.ini inflating: 2021-06-11/models/model1.ini inflating: 2021-06-11/models/model26.ini inflating: 2021-06-11/models/model29.ini inflating: 2021-06-11/models/model5.ini inflating: 2021-06-11/models/model23.ini inflating: 2021-06-11/models/model19.ini inflating: 2021-06-11/models/model4.ini inflating: 2021-06-11/models/model7.ini inflating: 2021-06-11/models/model8.ini inflating: 2021-06-11/models/model22.ini inflating: 2021-06-11/models/model18.ini inflating: 2021-06-11/models/model9.ini inflating: 2021-06-11/models/model14.ini inflating: 2021-06-11/models/model25.ini creating: 2021-06-11/template/ inflating: 2021-06-11/template/4ch_dr.ini inflating: 2021-06-11/template/4chsmpl.ini inflating: 2021-06-11/template/6chplane.ini inflating: 2021-06-11/template/6ch_heli.ini inflating: 2021-06-11/template/heli_std.ini inflating: 2021-06-11/tx.ini extracting: 2021-06-11/debug-t8sg_v2-v5.0.0-c84450e.zip
PC側の準備
Java ランタイムのインストール
PCからT8SGへファームウェアを書き込むためのソフト"DeviaionUpload-0.9.0"はJavaで書かれているので、
PCにもJavaランタイムをインストールする。
myname@myhost:~$ sudo apt install openjdk-11-jre
Deviation Uploaderの実行時にWarningが出力されるのでcanberra-gtk-moduleもインストールしておく。
myname@myhost:$ apt install libcanberra-gtk-module
udevの設定
DFUモードで起動したT8SGをUSB接続し、読み書きができるように、次の内容のudev rulesファイルを、
"45-stdfu-permisshions.rules"というファイル名で、/etc/udev/rules.d/に保存する。
# DFU (Internal bootloader for STM32 MCUs) ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", MODE="0664", GROUP="plugdev"
保存した後はsystemd-udevdに読み込ませる。
myname@myhost:~$ sudo udevadm control -R
"plugdev"グループに入っていなければ追加する。
myname@myhost:~$ sudo usermod -a -G plugdev myname
<参考>
github.com
ファームウェアの書き換え
DeviationUploader の起動
"DeviationUpload-0.9.0.jar"を保存したディレクトリに移動し、実行。
myname@myhost:~/Deviation$ java -jar ./DeviationUpload-0.9.0.jar
起動したらDFUタブをクリック
T8SGの接続とdfuファイルの書き込み
T8SG(電源OFF)とPCをUSBケーブルで接続。
Exit キーを押しながら電源ボタンを押し、T8SGをDFUモードで起動。
"Transmitter"が"Devo 7e"と表示され、"Name"、"Start Address"などが表示されれば接続成功。
"File"の右側の"..."ボタンをクリックしてファイル選択ダイアログを表示。
あらかじめ解凍してあったファームウェアのディレクトリの中の"deviation-t8sg_v2-v5.0.0-xxxx.df"を選択し
"OK"ボタンをクリック。
ファイル名などを確認したら”Send”ボタンをクリック。
書き込み完了のダイアログが表示されたら、Debiation Uploaderを終了し、 T8SGの電源を落とす。
システムファイルの書き込み
T8SGとPCを接続したまま、T8SGの”Confirm key”を押しながら電源をOnにし、USBモードで起動する。
USBモードで起動するとT8SGのディスプレイにはUSBマークが表示され、PC側ではUSBメモリーとして認識される。
ファームウェアを解凍したフォルダ内のファイルをT8SGのストレージにファームウェアを解凍したフォルダの内容を全てコピー(容量が足りない場合はストレージを一度全て消去してかかコピーした方が良いかも)する。
コピーが完了したらPC側でストレージをUnmountしてT8SGの電源を落とし、USBケーブルを抜く。
普通にT8SGの電源を入れて起動できれば完了。
プロポについて(その1)
使用するプロポはJumper T8SG V3(carbon edition)
技適付きのマルチプロトコル対応のプロポとして、3年ほど前に話題になったプロポ
今となっては、同じJumperのT-LiteやRadioMaster のTX16Sなどが主流になり
新たな情報は出てこなくなっているが、2〜3年前の豊富な情報をもとに設定をしていく。
プロポに付属してきたバッテリーケースは18650バッテリー×2本用のものだけだったので、
amazonでKEEPOWER製の18650バッテリーの2本セットを購入
こちらのバッテリーは安全装置付きのためやや長さが長く、バッテリーケースがキツキツなので、
素手でバッテリーの取り出しができるようケースを加工
<参考>
Jumper T8SG V2 plusのバッテリーを変更 – 砂井さんのオモチャ箱
また、本体側のコネクターの位置がちょっと奥まった位置なので、バッテリーケースのコネクターがとても抜きにくい
毛抜きやラジオペンチをつかって抜いていたが、コネクターを壊しそうになったので、
JST-XH 2Sバランスプラグの延長ケーブルで接続するようにした
Debianのログイン画面でのサスペンドの無効化について
ドローンの設定に使うMacBookは、USBに接続するなど以外は
宅内でもsshを使って設定作業などをおこなっているが、
サスペンドが有効になっているため、ほおっておくと20分で
ssh接続できなくなる。
不便なので解消を試みる。
ログイン画面での自動サスペンドの無効化
ログイン待ちの状態でもサスペンドを無効にするには、手動で次の2つの設定ファイルを書き換える必要があるとのこと。
編集するファイル
- /usr/share/gdm/dconf/90-debian-settings
- /etc/gdm3/greeter.dconf-defaults
編集する内容
両方のファイルの末尾に次の行を追加
sleep-inactive-ac-timeout = 0 sleep-inactive-battery-timeout = 0
<参考にした記事>
Ubuntu,Debianの自動サスペンドの解除 - Qiita
情報の入手先
まずは室内練習用に、トイドローンを改造してAcroモードが使える
練習機を作成します。
話題としては、2〜3年前のもので、すでに先人の皆さんが、
ブログやYoutubeでいろいろな情報を残してくださってます。
また、mixi内の「ドローン友の会」では、プロポや機体の設定など
貴重な情報をいただいております。
【参考にさせていただいた主なサイト】
win-tab.net
使用するPC環境
ハードウェア
OS
Macbook 4.1が対応しているMacOSは、OS X Lionまで、Bootcampが対応しているWindowsはWindows7まで。
どちらもとっくにサポート期間が終了しているので、使用し続けるのはセキュリティー的に問題があり。
ブートマネージャーとしてrEFInedをインストール。
The rEFInd Boot Manager
OS X LionとDebian GNU/Linuxのデュアルブートにし、主にLinuxマシンとして使用。
バージョン
2021年現在のstable releaseのDebian 11 (bullseye)(amd64)を使用。
インストールは有線LAN接続して、ネットワークインストールイメージで特に問題なく終了。
kernel boot paramater
インストールした直後の状態では、OSの起動時にものすごく時間がかかる。
ブートパラメーターとしてvideo=SVIDEO-1:d
を与えると解決するので、
rEFIndとGRUBの両方で起動する際にパラメーターが与えられるよう設定する。
rEFIndの設定
/boot/refind_liniux.conf の各エントリーに次のようにオプションを追加
"Boot with standard options" "root=UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx ro quiet video=SVIDEO-1:d" "Boot to single-user mode" "root=UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx ro quiet single video=SVIDEO-1:d" "Boot with minimal options" "ro root=UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx video=SVIDEO-1:d"
GRUBの設定
/etc/default/grubを編集
GRUB_CMDLINE_LINUX
に下記のようにのオプションを追加
GRUB_CMDLINE_LINUX="video=SVIDEO-1:d"
/etc/default/grub内のコメント
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'
に従って/boot/grub.cfgを更新
xxxx@debian:~$ sudo update-grub [sudo] xxxx のパスワード: Generating grub configuration file ... Found background image: /usr/share/images/desktop-base/desktop-grub.png Found linux image: /boot/vmlinuz-5.10.0-10-amd64 Found initrd image: /boot/initrd.img-5.10.0-10-amd64 Found linux image: /boot/vmlinuz-5.10.0-9-amd64 Found initrd image: /boot/initrd.img-5.10.0-9-amd64 Found linux image: /boot/vmlinuz-5.10.0-8-amd64 Found initrd image: /boot/initrd.img-5.10.0-8-amd64 Found Mac OS X on /dev/sda2 done
[出典]
askubuntu.com