I would like to use pypilot in "IMU Only" mode to get heading data into SK.
I started playing with pypilot installed from github on my headless SK RPI, but couldn't figure out how to configure a specific magnetometer...pypilot_boatimu seemed to recognize my I2C module but was continuously searching for an SPI device (which I don't have). So first question: is there any documentation about how to configure pypilot (*without* OpenCPN)? I was only able to find basic info in the github repo.
Next I downloaded a Pi image for OpenCPN, and that documentation is ambiguous. It says, "to run this app type this in a terminal: openplotter-pypilot"
That didn't work for me and there is no openplotter-pypilot in /usr/bin or anywhere else on my system.
Next I installed the OpenCPN plugin for pypilot. This got me one configuration screen that lets me change host, buttons, etc but nothing like the settings window from the OpenCPN documentation.
So, how do I get pypilot?
Thanks.
William
(2024-03-17, 08:06 PM)barnaclebill22 Wrote: [ -> ]I would like to use pypilot in "IMU Only" mode to get heading data into SK.
I started playing with pypilot installed from github on my headless SK RPI, but couldn't figure out how to configure a specific magnetometer...pypilot_boatimu seemed to recognize my I2C module but was continuously searching for an SPI device (which I don't have). So first question: is there any documentation about how to configure pypilot (*without* OpenCPN)? I was only able to find basic info in the github repo.
Next I downloaded a Pi image for OpenCPN, and that documentation is ambiguous. It says, "to run this app type this in a terminal: openplotter-pypilot"
That didn't work for me and there is no openplotter-pypilot in /usr/bin or anywhere else on my system.
Next I installed the OpenCPN plugin for pypilot. This got me one configuration screen that lets me change host, buttons, etc but nothing like the settings window from the OpenCPN documentation.
So, how do I get pypilot?
Thanks.
William
This covers pretty much everything
https://github.com/pypilot/workbook/wiki
You may need to install the openplotter-pypilot package to get that script. It mostly just installs services and configures them for pypilot. It is not required but could be helpful.
It should be possible to run "pypilot_boatimu" to only get the intertial data, but it wont push it into signalk. For this you could just run pypilot. I am not sure what spi probing you refer to but, if you could post the output it would help. Maybe it is probing for a motor controller, but you could potentially block this by blacklisting all the serial ports.
I will look into better methods for running imu only mode.
(2024-03-20, 03:37 PM)seandepagnier Wrote: [ -> ]You may need to install the openplotter-pypilot package to get that script. It mostly just installs services and configures them for pypilot. It is not required but could be helpful.
It should be possible to run "pypilot_boatimu" to only get the intertial data, but it wont push it into signalk. For this you could just run pypilot. I am not sure what spi probing you refer to but, if you could post the output it would help. Maybe it is probing for a motor controller, but you could potentially block this by blacklisting all the serial ports.
I will look into better methods for running imu only mode.
Thanks. I installed as per the wiki/workbook and the SPI errors went away. Not sure what changed but I don't want to roll back unless I need to.
When you say "install openplotter-pypilot package", what do you mean specifically? I tried "pip3 install openplotter-pypilot" and didn't get anything. pypilot (3.2.13-stable) is already installed in openplotter; as is the pypilot plugin.
Is there a list of supported IMUs anywhere? I have several; the one on my RPI uses the LSM303AGR sensor but does not appear to be supported...it doesn't show up here:
Code:
wjquigs@opencpn:/ $ pypilot_boatimu
imu process 3127
pypilotServer process 3129
made imu process realtime
Using settings file RTIMULib.ini
Settings file not found. Using defaults and creating settings file
Failed to open settings file for saveFailed to open SPI bus 0, select 0
Using fusion algorithm Kalman STATE4
load file /home/wjquigs/.pypilot/pypilot.conf
store_file /home/wjquigs/.pypilot/pypilot.conf.bak 1269.897 False
server setup has 3 pipes
zeroconf addresses ['192.168.86.26', '127.0.0.1'] 2
imu rate set to rate 20
imu rate set to rate 20
setting initial gyro bias [0.0, 0.0, 0.0]
calibration loaded, starting 3125
I found another thread on how to install openplotter-pypilot.
I also found what looks like a list of supported IMUs in RTIMULib.ini. Mine is not one of them, so I will wait until my new one arrives (InvenSense ICM-20948).
Thanks.
William
Woo hoo! It's working!
navigation.attitude
{
"pitch": 0.07949625676983772,
"roll": 0.845823207430744,
"yaw": 6.111556609855472
}
03/27 16:50:28
pypilot
navigation.headingMagnetic
6.111556609855472
rad
03/27 16:50:28
pypilot
validation.PYPILOT
"68f937e4-1b05-4bb2-9b19-d6742ae71561"
03/27 16:44:22
OpenPlotter
let me know if you run into any issues. I find signalk a bit complicated myself.