Why Downgrade? Versions 4.1+ have issues with take-off. Bebop 2 experiences about 120-180 degree yaw on take-off. If you have version 4.0.6, please skip the downgrade procedure. As of firmware version 4.0.4, the downgrade procedure has changed.*
-
Connect your host machine to Bebop 2 via Wifi.
-
Download the recommended version 4.0.6 firmware from Google Drive or Git Repo.
Other versions of the firmware can be found here:
4.0.3, 4.0.4, 4.0.5, 4.0.6, 4.2.0, 4.2.1, 4.3.1, 4.4.0
Note that the firmwares are named as follows bebop2_update_v_a_b_c.plf
for version a.b.c
. For eg., for version 4.0.6 the name of the file is bebop2_update_v_4_0_6.plf
.
- Once the desired firmware is downloaded, a
telnet
client is required like (Putty
or any FTP client likeFileZilla
). Alternatively on a linux machine, you can use a file manager likenautilus
to copy the firmware to the Bebop. Now,
- Turn on the Bebop and Connect to its WiFi network.
- Press the power button 4 times in rapid succession on the Bebop 2. This activates the Telnet port.
- Open a terminal and enter:
telnet 192.168.42.1
. You should see something like this:
BusyBox v1.25.0 (2017-06-29 09:25:56 CEST) built-in shell (ash)
Enter 'help' for a list of built-in commands.
/ #
- Type the following in the same terminal window:
mount -o remount, rw / &&
vi /bin/updater/dgwl.txt
- Now, you should see the contents of the file
dgwl.txt
:
# List of firmware versions to which to 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] \ +
-
Press
i
to enter text entry mode invi
. -
Type the version number of the firmware you downloaded in the last line:
# List of firmware versions to which to 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] \ +
4.0.6
-
Hit
ESC
key to exit the insert mode. -
Save the file by typing
:wq
- Hit
ENTER
- Start
nautilus
or any otherFTP
client and connect to the server with the address192.168.42.1
anonymously (Nousername
andpassword
). See the image below. - Copy the downloaded firmware to
/data/ftp/internal_000
folder of the Bebop 2 and rename the file tobebop2_update.plf
. - Go back to the telnet shell/terminal and enter:
/bin/updater/updater_scan.sh /data/ftp/internal_000
- Bebop should return the following:
[FIRMWARE UPDATER] Boot # 4: Scanning / data / ftp / internal_000 for updates ...
[FIRMWARE UPDATER] Boot # 4: searching PLF named files * .plf ...
[FIRMWARE UPDATER] Boot # 4: Testing /data/ftp/internal_000/bebop2_update.plf
[FIRMWARE UPDATER] Boot # 4: Checking the downgrading whitelist /bin/updater/dgwl.txt ...
[FIRMWARE UPDATER] Boot # 4: whitelist: # List of firmware versions to which to 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] \ +
4.0.6
[FIRMWARE UPDATER] Boot # 4: search result: 4.0.6
[FIRMWARE UPDATER] Boot # 4: downgrading allowed by whitelist
[FIRMWARE UPDATER] Boot # 4: Sending
/data/ftp/internal_000/bebop2_update.plf to the Update partition
[FIRMWARE UPDATER] Boot # 4: Move command is <mv>
- And finally, reboot the Bebop 2 by entering
reboot
in the telnet terminal. Note: Bebop will reboot multiple times for the firmware upgrade/downgrade procedure. Check the version usingFreeFlight Pro
android/iOS app. It will ask you to update the firmware using the mobile application. DO NOT UPGRADE THE FIRMWARE using your phone.
Source: THE DIARY OF ICARUS23