V1.6.5 no longer has a valid nuttx submodule


I work on an old project that is based on the v1.6.5 tag. Unfortunately there is a problem with cloning NxWidgets as part of PX4NuttX.
For testing I did a clean checkout of v1.6.5 and tried to build the code without any of my modifications.
A Git username and password is requested when doing the first build but it seams that the NxWidgets module no longer can be found on git.

I’m not sure how git submodules work, but my guess is that the Px4Nuttx submodule includes a second level submodule NxWidgets and this module has not been included when the Px4Nuttx submodule was archived before a Nuttx-update

here is what i have done

sim@ubuntu:~/repos/firmware-test$ git clone https://github.com/PX4/Firmware.git
Cloning into 'Firmware'...
remote: Enumerating objects: 50, done.
remote: Counting objects: 100% (50/50), done.
remote: Compressing objects: 100% (35/35), done.
remote: Total 262216 (delta 22), reused 25 (delta 15), pack-reused 262166
Receiving objects: 100% (262216/262216), 100.38 MiB | 2.49 MiB/s, done.
Resolving deltas: 100% (197385/197385), done.
Checking connectivity... done.
sim@ubuntu:~/repos/firmware-test$ git checkout v1.6.5
fatal: Not a git repository (or any of the parent directories): .git
sim@ubuntu:~/repos/firmware-test$ cd Firmware/
sim@ubuntu:~/repos/firmware-test/Firmware$ git checkout v1.6.5
Note: checking out 'v1.6.5'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

  git checkout -b <new-branch-name>

HEAD is now at f160743... Join us on Slack README badge
sim@ubuntu:~/repos/firmware-test/Firmware$ make px4fmu-v2_default 
no git repo found in NuttX/.git
Submodule 'NuttX' (https://github.com/PX4/PX4NuttX.git) registered for path 'NuttX'
Cloning into 'NuttX'...
Submodule path 'NuttX': checked out '44ad7e224c1ef17911ab8b4101fd624ad9ee4177'
Submodule 'NxWidgets' (https://github.com/PX4-NuttX/NxWidgets.git) registered for path 'NxWidgets'
Submodule 'apps' (https://github.com/PX4-NuttX/apps.git) registered for path 'apps'
Submodule 'misc/tools' (https://github.com/PX4-NuttX/tools.git) registered for path 'misc/tools'
Submodule 'nuttx' (https://github.com/PX4-NuttX/nuttx.git) registered for path 'nuttx'
Cloning into 'NxWidgets'...
Username for 'https://github.com': jf@sky-watch.com
Password for 'https://jf@sky-watch.com@github.com': 
remote: Repository not found.
fatal: repository 'https://github.com/PX4-NuttX/NxWidgets.git/' not found
fatal: clone of 'https://github.com/PX4-NuttX/NxWidgets.git' into submodule path 'NxWidgets' failed
Failed to recurse into submodule path 'NuttX'

I can understand that there may be less motivation for v1.6.5 support, but perhaps someone has a work-around I can use?

1 Like

You should be able to drop NxWidgets and proceed. NxWidgets has never actually been used in PX4.

I would also strongly recommend upgrading to newer PX4. Feel free to contact me on slack if you’d like to discuss how to do that painlessly without disrupting any custom work you’ve done.