Installed from main git but got 4.5.0 dev? Also an issue on copter drifting

I installed Ardupilot on Windows WSL1 using standard instructions from the website. I used the following code to git clone: “git clone --recurse-submodules GitHub - ArduPilot/ardupilot: ArduPlane, ArduCopter, ArduRover, ArduSub source

After running sim_vehicle.py code, I saw “AP: ArduCopter V4.5.0-dev” line. How is it possible to get v.4.5.0-dev from git cloning the main repository? Isn’t the latest Arducopter version 4.4.4 ?

I would not have noticed or cared about that. However, I am having the following issue and not sure if it is related or not: When running SITL, after I set mode to GUIDED, arm, takeoff and run the following command: “attitude 0.9961947 0.0871557 0 0 0.5” (copied from Ardupilot website), the copter rolls as expected and then levels. But then it keeps moving, drifting generally in the direction of the roll, but the copter’s pitch, yaw and roll are unchanged. Tested it on Airsim and Webots. Similar issue. Anyone have this issue?

Link to the log file: 2024-01-01 01-42-36.bin - Google Drive

Reading more documentation would have helped.

git checkout Copter-4.4
git submodule update --init --recursive
./waf clean
./waf copter

Thanks for the response. I followed your instructions. After ./waf copter, it said “The project configure options have changed: run “waf configure” again!”. So I ran “./waf configure” and then “./waf copter” and finished the build.

However, the issue had not disappeared. After takeoff and running ““attitude 0.9961947 0.0871557 0 0 0.5”, the copter rolls 10 degrees, then levels, but then keeps moving/drifting. I tried the non-graphical SITL and then Airsim.

o@kaluga:~/ardupilot$ cd ArduCopter/
o@kaluga:~/ardupilot/ArduCopter$ git checkout Copter-4.4
M modules/ChibiOS
M modules/DroneCAN/DSDL
M modules/DroneCAN/dronecan_dsdlc
M modules/DroneCAN/libcanard
M modules/mavlink
M modules/waf
Branch ‘Copter-4.4’ set up to track remote branch ‘Copter-4.4’ from ‘origin’.
Switched to a new branch ‘Copter-4.4’
o@kaluga:~/ardupilot/ArduCopter$ git submodule update --init --recursive
Submodule ‘modules/uavcan’ (GitHub - dronecan/libuavcan) registered for path ‘…/modules/uavcan’
Cloning into ‘/home/o/ardupilot/modules/uavcan’…
warning: unable to rmdir ‘ext/lwip’: Directory not empty
Submodule path ‘…/modules/ChibiOS’: checked out ‘17a50e3ae44c90a505ce04579625012c20b2bd44’
Submodule path ‘…/modules/DroneCAN/DSDL’: checked out ‘f618adf88990829abd152b48a7bbdfd58881a5a6’
Submodule path ‘…/modules/DroneCAN/dronecan_dsdlc’: checked out ‘01586259d5a8b11f9c4a034a976f886630ae4fb7’
Submodule path ‘…/modules/DroneCAN/libcanard’: checked out ‘aec8028798e8485851644e85093c50b1bd6e8ade’
Submodule ‘dsdl_compiler/pyuavcan’ (GitHub - dronecan/pydronecan: python DroneCAN code generation, interface and utilities) registered for path ‘…/modules/DroneCAN/libcanard/dsdl_compiler/pyuavcan’
Cloning into ‘/home/o/ardupilot/modules/DroneCAN/libcanard/dsdl_compiler/pyuavcan’…
Submodule path ‘…/modules/DroneCAN/libcanard/dsdl_compiler/pyuavcan’: checked out ‘8fb1b18ab3250695d85fe2943dfc68e8b45024b7’
Submodule path ‘…/modules/mavlink’: checked out ‘806a3ba7499da677ded35226d6ff88e5a100c4c2’
Submodule path ‘…/modules/mavlink/pymavlink’: checked out ‘f6c873a68af0ff4023db4902e2d3ee95ca398de2’
Submodule path ‘…/modules/uavcan’: checked out ‘f845e02dcd2e97f6c4743c96f3b2380c4b03ab5f’
Submodule ‘dsdl’ (GitHub - dronecan/DSDL: DSDL Protocol Description files for DroneCAN) registered for path ‘…/modules/uavcan/dsdl’
Submodule ‘libuavcan/dsdl_compiler/pyuavcan’ (GitHub - dronecan/pydronecan: python DroneCAN code generation, interface and utilities) registered for path ‘…/modules/uavcan/libuavcan/dsdl_compiler/pyuavcan’
Cloning into ‘/home/o/ardupilot/modules/uavcan/dsdl’…
Cloning into ‘/home/o/ardupilot/modules/uavcan/libuavcan/dsdl_compiler/pyuavcan’…
Submodule path ‘…/modules/uavcan/dsdl’: checked out ‘4d111911c1c0f2e00d46e8a9a79ca5ba85d6ef4b’
Submodule path ‘…/modules/uavcan/libuavcan/dsdl_compiler/pyuavcan’: checked out ‘19fdf2e5b383243ccdb1094edae0603cf11469e8’
Submodule path ‘…/modules/waf’: checked out ‘51f1529bd20759642e9fd0a8db648da9ba380b18’
o@kaluga:~/ardupilot$ ./waf copter
The project configure options have changed: run “waf configure” again!
o@kaluga:~/ardupilot$ ./waf clean
ap_library: AP_DroneCAN not found

o@kaluga:~/ardupilot$ ./waf configure
Setting top to : /home/o/ardupilot
Setting out to : /home/o/ardupilot/build
Autoconfiguration : enabled
Setting board to : sitl
Using toolchain : native
Checking for ‘g++’ (C++ compiler) : /usr/lib/ccache/g++
Checking for ‘gcc’ (C compiler) : /usr/lib/ccache/gcc
Checking for c flags ‘-MMD’ : yes
Checking for cxx flags ‘-MMD’ : yes
CXX Compiler : g++ 9.4.0
Checking for need to link with librt : not necessary
Checking for feenableexcept : yes
Enabled OpenDroneID : no
Enabled firmware ID checking : no
GPS Debug Logging : no
Enabled custom controller : yes
Checking for HAVE_CMATH_ISFINITE : yes
Checking for HAVE_CMATH_ISINF : yes
Checking for HAVE_CMATH_ISNAN : yes
Checking for NEED_CMATH_ISFINITE_STD_NAMESPACE : yes
Checking for NEED_CMATH_ISINF_STD_NAMESPACE : yes
Checking for NEED_CMATH_ISNAN_STD_NAMESPACE : yes
Checking for header endian.h : yes
Checking for header byteswap.h : yes
Checking for HAVE_MEMRCHR : yes
Configured VSCode Intellisense: : no
Checking for program ‘python’ : /usr/bin/python
Checking for python version >= 2.7.0 : 3.8.10
Checking for program ‘python’ : /usr/bin/python
Checking for python version >= 2.7.0 : 3.8.10
DSDL compiler : /home/o/ardupilot/modules/uavcan/libuavcan/dsdl_compiler/libuavcan_dsdlc
Source is git repository : yes
Update submodules : yes
Checking for program ‘git’ : /usr/bin/git
Checking for program ‘size’ : /usr/bin/size
Benchmarks : disabled
Unit tests : enabled
Scripting : enabled
Scripting runtime checks : enabled
Debug build : disabled
Coverage build : disabled
SITL 32-bit build : disabled
Checking for program ‘rsync’ : /usr/bin/rsync
‘configure’ finished successfully (2.913s)
o@kaluga:~/ardupilot$ ./waf clean
‘clean’ finished successfully (1.590s)
o@kaluga:~/ardupilot$ ./waf copter

(Too much to paste here)

[1006/1006] Linking build/sitl/bin/arducopter
Waf: Leaving directory `/home/o/ardupilot/build/sitl’

BUILD SUMMARY
Build directory: /home/o/ardupilot/build/sitl
Target Text (B) Data (B) BSS (B) Total Flash Used (B) Free Flash (B)

bin/arducopter 3976540 173501 210632 4150041 Not Applicable

Build commands will be stored in build/sitl/compile_commands.json
‘copter’ finished successfully (1m25.400s)

Report that as a bug in GitHub - ArduPilot/ardupilot: ArduPlane, ArduCopter, ArduRover, ArduSub source attach .bin SITL logs from ArduCopter 4.5.0-dev in GUIDED mode.

Added - Various Issues with my SITL · Issue #25895 · ArduPilot/ardupilot (github.com)

Also, were the commands that you mentioned (e.g. git checkout Copter-4.4, etc) found as part of ArduPilot installation instructions? I looked at all the steps multiple times and could not find a reference to “git checkout”. Also, one page lists the instruction to do “./waf clean” but another page says that it is not required or not recommended - I don’t recall exactly.

By the way, why is use of Virtual Box not recommended? I tried WSL2, had some issues. Now with WSL1. Maybe I should give a Virtual Box a try. Can SITL running on Ubuntu virtual box connect to Airsim/Webots and Mission Planner running on Windows without issues?

Thanks for your help.