SpeedLander

余生を考えると貯蓄も必要かと、趣味の浪費も考えなければならない時代、すでに遅いけど(汗)

Parrot Bebop Drone Again #18

2022年11月18日 | 空物ラジコン ドローン
以前お話していますがbebopのwindows版アプリも使ってみたいと記事にしていましたが
何分古いソフトなのでバージョンダウンしなくてはならないけど普通ではできません
そこで毎度ググっていたbebopのファームバージョンダウンファイルを発見しました
ドローン関係ではかなりお世話になった素晴らしい技術者たちのコミュニティサイト
gitub.comのmahodder/Bebop-1-Firmware parrot関係者の方かな?
現在は最終4.0.6ですが以上サイトには1.3.2から4.0.5までアップしてあります

まずは旧ファームをダウンロード


使用方法は以下
README.md
Connect your PC to your WiFi network of Bebop
Click Bebop power button 4 times
Start a Telnet client to connect to 192.168.42.1
Type "mount -o remount,rw /" Type "vi version.txt" followed by ENTER
Type "r1:wq" followed by ENTER. This will cause the Bebop to think it's running an older version of the firmware.
Connect FTP 192.168.42.1 and send the file "updater_payload.plf" folder to the “internal_000" folder
Disconnect from FTP and Telnet back into Bebop
Type "/bin/updater/updater_scan.sh /data/ftp/internal_000" followed by ENTER (note the space after "sh")
Type "reboot" followed by ENTER
Wait patiently for the firmware installation. During installation, the LED will blink 
in green orange and Bebop will test engine. When the cooling fan will begin the installation will be completed.
 Extra: Factory Reset drone by holding power button 15 seconds (this will reset all your drone settings to default, should be done if down grading)

手順通りやるだけなので試してみました
まず
PCとbebopのWIFI接続

電源ボタンを4回クリック!
これをやらないとリモートサービス動きません、保護解除方法

まずTELNETとFTPクライアントが必要です
FTPは当方昔から定番のFFTPを使用しているのでお勧めです
こちらもかなり古くからの定番サイト 窓の社 FFTP

以上解除しTELNETでコマンドラインからTelnet 192.168.42.1 BEBOPへアクセス

マウントはそのままで問題なしvi version.txtで現在機体のバージョン確認 
もちろん最終バージョンの4.0.6です

r1:wqコマンドで表面上は旧バージョン1.0.6に見かけ変更、バージョン上げる事は
出来るが下げる事が出来ないよう基本設定されているのでしょう

そして昔からFTP機能あるIEで手軽にアクセス!と思いきや設定見るといまは読み込みだけ・・・


やっぱ~FFTPですね~192.168.42.1 ユーザーパスなしでBEBOPにアクセスし
internal_000ホルダーに移動しVer 2.0.29なる2029_updater_payload.plfを updater_payload.plf へリネームし上書き

再度TELNETを起動しファームウエアのスキャンから書き換え実行
/bin/updater/updater_scan.sh /data/ftp/internal_000
実行完了し
reboot
だが・・・最後の行

Skipping /data/ftp/internal_000/updater_payload.plf
なので書き換えできませんでした・・・
BusyBox v1.20.2 (2017-05-03 11:19:27 CEST) built-in shell (ash)
Enter 'help' for a list of built-in commands.
/ # /bin/updater/updater_scan.sh /data/ftp/internal_000
[FIRMWARE UPDATER] Boot #3 : Scanning /data/ftp/internal_000 for updates
[FIRMWARE UPDATER] Boot #3 : searching PLF file named *.plf...
[FIRMWARE UPDATER] Boot #3 : Testing /data/ftp/internal_000/updater_payload.plf
PLF:2.0.29 VER:4.0.6
[FIRMWARE UPDATER] Boot #3 : Checking the downgrading whitelist /bin/updater/dgwl.txt...
[FIRMWARE UPDATER] Boot #3 : whitelist: # List of firmware versions to which a downgrade is allowed
# Regexps are basic regular expressions (BRE). See grep(1) manpage on a
# linux desktop to get the correct syntax (especially metacharacters escapes).
0\.0\.0
3\.3\.[0-9]\+
[FIRMWARE UPDATER] Boot #3 : search result:
[FIRMWARE UPDATER] Boot #3 : Skipping /data/ftp/internal_000/updater_payload.plf
/ #

ならば~他いってみよう~ でVer3.3.0

アプデ特有のオレンジランプ点滅長時間からプログラム変更できました
BusyBox v1.20.2 (2017-05-03 11:19:27 CEST) built-in shell (ash)
Enter 'help' for a list of built-in commands.

/ # /bin/updater/updater_scan.sh /data/ftp/internal_000
[FIRMWARE UPDATER] Boot #3 : Scanning /data/ftp/internal_000 for updates ...
[FIRMWARE UPDATER] Boot #3 : searching PLF file named *.plf...
[FIRMWARE UPDATER] Boot #3 : Testing /data/ftp/internal_000/updater_payload.plf
PLF:3.3.0 VER:4.0.6
[FIRMWARE UPDATER] Boot #3 : Checking the downgrading whitelist /bin/updater/dgwl.txt...
[FIRMWARE UPDATER] Boot #3 : whitelist: # List of firmware versions to which a downgrade is allowed
# Regexps are basic regular expressions (BRE). See grep(1) manpage on a
# linux desktop to get the correct syntax (especially metacharacters escapes).
0\.0\.0
3\.3\.[0-9]\+
[FIRMWARE UPDATER] Boot #3 : search result: 3.3.0
[FIRMWARE UPDATER] Boot #3 : downgrading allowed by whitelist
[FIRMWARE UPDATER] Boot #3 : Sending /data/ftp/internal_000/updater_payload.plf to the Update partition
[FIRMWARE UPDATER] Boot #3 : Move command is <mv>
/ #
最後は初期化せい!とあるので15秒電源ボタン長押し初期化終了
電源オンして~
TELNETより手っ取り早くスマホから確認
おっ!キタ~
そのままだよん~(笑)

3.3.0にダウングレードされています、もしかすると最初のバージョンファイル壊れていたかも?
またはBEBOP本体のハードバージョンの可能性も
手順は説明どおりにやれば簡単でしたが毎度ブログ書く時間が激かかったので
また次回の楽しみにしておきます・・・


最新の画像もっと見る

2 コメント

コメント日が  古い順  |   新しい順
わ~面白そう…と思ったら… (猫が好き)
2022-11-18 17:25:41
こんばんは

わ~面白そう…と思ったらタイトル通り
Bebop
のことでしたね…残念(^^ゞ
スマホなんかもそうですけど、正規のファイルでダウングレード禁止ニナていたりするとダウングレードは結構苦労しますね~

続報に期待してま~す
返信する
猫が好きさま (SpeedLander)
2022-11-18 17:59:15
お疲れ様です
何時もは深夜ですがお休みなのでしょうね♪

アプデはusb端子からusbメモリーにファームファイル入れて
アップデできるので旧ファイルバージョンファイルが有れば可能だが
今回のbebopみたいに上位バージョンのみの制限プロテクトしてあるのでしょう?

FTPクライアントから内部の各種データ読み書き可能となるので撮影動画やフライトプラン
飛行状態、履歴などのデータがwifi経由でPCに閲覧やデータ自体を引っ張り出せます

言われてみるとbebop2も同じシステムなのでFTPクライアントから内部データの閲覧や書き換え可能と
思うのでやってみます

telnetは昔パソ通からlinuxまでかなり使っていたで懐かしく使いました

たしかオープンソースだったので解析して色々悪さしたりも可能?
しませんけど・・・
返信する

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。