This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
PyPilot Install
#1
Rpi 5, Openplotter 4.x (Image 2024/6/19) MacArthur HAT, ICM-29048

Hi,

I previously had a full system running on this same hardware (1 Wire, BME680, Nmea Inputs, IMU data out of PyPilot) but after a Signal K update without the lastest node I was forced to fully rebuild everything.

I now have a problem with installing the PyPilot app (4.0.11 beta seems to be the lastest release, and shows pypilot version 0.70 in the app)

The 2 problems I have are:

a) during initial install there seems to be an error regarding swig and the app will just not open.

Installing swig from the terminal appears to then allow the app to open, however then

b) No IMU is detected in the app.

I can see using 12cdetect -y 1 that the imu is on the bus on 68, and I can also see the bme680 on 77

When running pypilot_boatimu it throws and error relating to the RTIMULib.ini

AttributeError: "RTIMU.Settings" object has no attribute "MPU925xAccelFsr"


When I open the RTIMULib.ini in a text editor I can see that my IMU is not listed (I happened to download the old PyPilot folder before satrting clean, and I can see that they are different and that the ICM-29048 is listed in the previous .ini file that was in use.

Has anyone else experiened issue like this, or is the version of pypilot in openplotter corrupt somehow, as is missing the correct RTIMU Library??

Many Thanks
Reply
#2
Thanks for reporting your issues.

The swig should be included as it is part of pyproject.toml file, but the dependencies for pypilot have changed recently. What do you mean old pypilot folder?

The one pulled by pypilot should be the correct one... It just be my fork of RTIMU to support icm20948
Reply
#3
(2026-06-07, 06:18 PM)seandepagnier Wrote: Thanks for reporting your issues.

The swig should be included as it is part of pyproject.toml file, but the dependencies for pypilot have changed recently.  What do you mean old pypilot folder? 

The one pulled by pypilot should be the correct one...  It just be my fork of RTIMU to support icm20948

The old folder I’m referring to is one I copied from my previous setup before I wiped everything to start again(signal k update stopped a lot of things working) in the hopes I could keep my calibration settings.

I’d appreciate if you could look at the version openplotter pulls and see if both the swig and RTIMU to support the icm20948 is correct.

Spent a day with Gemini and Chat GPT already :-)

Thanks
Reply
#4
(2026-06-07, 06:27 PM)TomBrad Wrote:
(2026-06-07, 06:18 PM)seandepagnier Wrote: Thanks for reporting your issues.

The swig should be included as it is part of pyproject.toml file, but the dependencies for pypilot have changed recently.  What do you mean old pypilot folder? 

The one pulled by pypilot should be the correct one...  It just be my fork of RTIMU to support icm20948

The old folder I’m referring to is one I copied from my previous setup before I wiped everything to start again(signal k update stopped a lot of things working) in the hopes I could keep my calibration settings.

I’d appreciate if you could look at the version openplotter pulls and see if both the swig and RTIMU to support the icm20948 is correct.

Spent a day with Gemini and Chat GPT already :-)

Thanks

I have the same issue running the same hardware and software. Like TomBrad, I used PyPilot all last year on the same setup. After I updated the software this spring, PyPilot would not even launch. After some work I solved that problem but it's still not functional after it opens. I'm not at the boat so I don't have a log handy to share what the exact errors are.
Reply
#5
So an update to this.

Did a fresh install to ssd  via openplotter in case there was some corruption etc on as card.

Same issues, but got a bit further.

Had to install Swig separately.
RTIMULib was incorrect also, but with help of Chat Gpt downloaded Sean’s version of RTIMULib and finally got the IMU data into pypilot

On alignment page the image of the compass rose and yacht are missing also

In IMU mode I can fairly reliable data into signal k, however when I select autopilot mode the data seems to drop out, I can see on the calibration page the value of the IMU turn false and when I open the control page I get “IMU waiting on axes” and “alignment error “

The Pypilot client keeps connecting and disconnecting every few seconds 

Is there anyway I can install pypilot without going via openplotter but still then the IMU mounted on the MacArthur hat?? And control pilot via signal k / kip??
Reply
#6
(2026-06-21, 05:38 PM)TomBrad Wrote: So an update to this.

Did a fresh install to ssd  via openplotter in case there was some corruption etc on as card.

Same issues, but got a bit further.

Had to install Swig separately.
RTIMULib was incorrect also, but with help of Chat Gpt downloaded Sean’s version of RTIMULib and finally got the IMU data into pypilot

On alignment page the image of the compass rose and yacht are missing also

In IMU mode I can fairly reliable data into signal k, however when I select autopilot mode the data seems to drop out, I can see on the calibration page the value of the IMU turn false and when I open the control page I get “IMU waiting on axes” and “alignment error “

The Pypilot client keeps connecting and disconnecting every few seconds 

Is there anyway I can install pypilot without going via openplotter but still then the IMU mounted on the MacArthur hat?? And control pilot via signal k / kip??

Hi Tom,

Thanks for sharing your experience, it is very usefull.

I'm having the exact same issues. I've resolved the swig one but didn't manage to get the correct RTIMULib. Would you be able to share with me which one of Sean's you've used (with the link if you can)? 

Once I've got this rolling, I'll let you know if I have the same other issues as you do and what are my findings.

Thanks in advance for your help!
Reply
#7
I seem to have this issue as well.
If you resolve it, please post your solution here.
Thanks
Reply
#8
i got it running (on trixie) with much of claudes help. it was the swig lib, rtmu and the calibrator needs some webGL for the ship. but this was on board, so i can´t upload the solutions now. claude is an great helper for making it running again.
Reply
#9
I decided to try Anthropic Claude since I'm not a programmer.
Claude got pypilot up and  running fine, but still couldn't see the imu.

It came up with this as the cause:

"That answers it definitively. Looking at the actual OpenPlotter pypilot GUI source, it directly does import RTIMU and calls RTIMU.Settings(...) — so this is a hard dependency, but it comes from a completely separate project: Sean D'Epagnier's own fork of RTIMULib2, not from pypilot's own repo (which explains why building pypilot's setup.py never touches it), and not from Debian's generic librtimulib7 package either (which pypilotPostInstall explicitly removes as incompatible, since it's the wrong fork)."

Here's the list of steps it gave me that solved this (I removed all the tests and stuff that didn't work, because it was LONG !)

1. Fixed the incomplete SignalK plugin install
npm install pypilot-autopilot-provider@1.1.2
(run from ~/.signalk — the app store had listed it as installed when it wasn't)

2. Fixed the missing swig dependency that broke pypilot's own build
sudo apt install -y swig
sudo apt install -y libgpiod-dev
sudo /usr/bin/pypilotPostInstall
(this rebuilt and installed the actual pypilot engine to /usr/local/bin/)

3. Enabled the systemd services so they'd start
sudo systemctl enable pypilot pypilot_web
sudo systemctl start pypilot pypilot_web

4. Removed the wrong RTIMU package (Debian's generic one conflicted with pypilot's expected fork)
sudo apt remove -y python3-rtimulib

5. Built and installed the correct RTIMULib2 fork with Python bindings
sudo apt install -y cmake libi2c-dev
cd ~
git clone https://github.com/seandepagnier/RTIMULib2
cd RTIMULib2/Linux
mkdir build && cd build
cmake -DBUILD_GL=OFF -DBUILD_DEMOGL=OFF ..
make -j4
sudo make install
sudo ldconfig
cd ../python
python3 setup.py build
sudo python3 setup.py install

6. Set the operating mode in the OpenPlotter GUI

OpenPlotter → Pypilot → Services tab → set mode to "IMU only" → Apply/Save

That last GUI step turned out to be the actual key to surviving reboots — OpenPlotter's own service manager was overriding the raw systemctl enable state based on its saved mode setting each boot.
Nice work sticking with this one — it was a genuinely deep stack of separately broken pieces. Fair winds with the pilot.


Everything works now !!!!
Hope this helps somebody else or points them in the right direction.
Reply
#10
(2026-07-12, 06:05 PM)rdempsey Wrote: I decided to try Anthropic Claude since I'm not a programmer.
Claude got pypilot up and  running fine, but still couldn't see the imu.

It came up with this as the cause:

"That answers it definitively. Looking at the actual OpenPlotter pypilot GUI source, it directly does import RTIMU and calls RTIMU.Settings(...) — so this is a hard dependency, but it comes from a completely separate project: Sean D'Epagnier's own fork of RTIMULib2, not from pypilot's own repo (which explains why building pypilot's setup.py never touches it), and not from Debian's generic librtimulib7 package either (which pypilotPostInstall explicitly removes as incompatible, since it's the wrong fork)."

Here's the list of steps it gave me that solved this (I removed all the tests and stuff that didn't work, because it was LONG !)

1. Fixed the incomplete SignalK plugin install
npm install pypilot-autopilot-provider@1.1.2
(run from ~/.signalk — the app store had listed it as installed when it wasn't)

2. Fixed the missing swig dependency that broke pypilot's own build
sudo apt install -y swig
sudo apt install -y libgpiod-dev
sudo /usr/bin/pypilotPostInstall
(this rebuilt and installed the actual pypilot engine to /usr/local/bin/)

3. Enabled the systemd services so they'd start
sudo systemctl enable pypilot pypilot_web
sudo systemctl start pypilot pypilot_web

4. Removed the wrong RTIMU package (Debian's generic one conflicted with pypilot's expected fork)
sudo apt remove -y python3-rtimulib

5. Built and installed the correct RTIMULib2 fork with Python bindings
sudo apt install -y cmake libi2c-dev
cd ~
git clone https://github.com/seandepagnier/RTIMULib2
cd RTIMULib2/Linux
mkdir build && cd build
cmake -DBUILD_GL=OFF -DBUILD_DEMOGL=OFF ..
make -j4
sudo make install
sudo ldconfig
cd ../python
python3 setup.py build
sudo python3 setup.py install

6. Set the operating mode in the OpenPlotter GUI

OpenPlotter → Pypilot → Services tab → set mode to "IMU only" → Apply/Save

That last GUI step turned out to be the actual key to surviving reboots — OpenPlotter's own service manager was overriding the raw systemctl enable state based on its saved mode setting each boot.
Nice work sticking with this one — it was a genuinely deep stack of separately broken pieces. Fair winds with the pilot.


Everything works now !!!!
Hope this helps somebody else or points them in the right direction.

Did you manage to get it working in full autopilot mode, ie talking to motor controller??, mine failed once it moved from IMU only mode
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)