![]() |
OpenCPN pypilot plugin disconnected - Printable Version +- OpenMarine (https://forum.openmarine.net) +-- Forum: Pypilot (https://forum.openmarine.net/forumdisplay.php?fid=17) +--- Forum: General discussion (https://forum.openmarine.net/forumdisplay.php?fid=18) +--- Thread: OpenCPN pypilot plugin disconnected (/showthread.php?tid=3520) |
OpenCPN pypilot plugin disconnected - SailingRiver - 2021-06-23 Hi all, I have been playing around with openplotter on a RI4. And after a few months I think I got it working quite well. I am running the latest image of openplotter. I have OpenCPN 5.2.4 running together with pypilot 2.1.1. Not only that, but I am able to send GPS data from OpenCPN to pypilot. I got and Arduino Nano connected (working and detected with SYNC in pypilot) but still have to connect that to the motor controller that I bought from Sean, but all seems well, and I think that won't be an issue. However, I do encounter one issue with the pypilot plugin in openCPN. It constantly says it's disconnected. I have it pypilot plugin set in the setting to connect to local host (127.0.0.1) and in the opencpn setting I have a read and write connection to post and read on port 20220 (TCP) on localhost (also tried 127.0.0.1 manually no success). Pypilot nmea0183 is connected to signal K using port 20220 and is reading and writing data (receiving GPS from openCPN and writing compass heading which is retrieved by openCPN). But the pypilot plugin seems to stay disconnected. I know now it is not necessary and will continue my project. Buy for the future i want to create (or buy) as tiny pilot and just use the raspberry for plotting charting and sending headings to tinypilot. And using the plugin would be easier. I am running pypilot 0.22.7.0 (I had to download it from cloud smith, the plugin manager of openCPN currently has a bug which i reported to the GIT repository and is being fixed as we speak but i got an alternative to download a tar file which worked and plugin is installed and visible) Any idea what I am missing? RE: OpenCPN pypilot plugin disconnected - seandepagnier - 2021-06-24 I believe what you have is the old version of pypilot and the new version of the pypilot opencpn plugin. This is confusing (even for me) because the openplotter-pypilot plugin version 2.1.1 which is what is installed by openplotter will give you pypilot 0.15. So you can either update pypilot directly from git, or it would be great if you could try out my improvements to openplotter-pypilot which are currently being evaluated but hopefully this version will be in openplotter soon. https://github.com/pypilot/openplotter-pypilot Just use "sudo python3 setup.py install" and then try running openplotter-pypilot and update pypilot. This gives a bit more control. If you run into trouble let me know, and if you cannot update pypilot from the gui there just try pulling pypilot directly from git https://github.com/pypilot/pypilot again "sudo python3 setup.py install" This should get everything updated to the new version of pypilot which automatically communicates with signalk (once you grant it read/write permission) note: port 20220 is not signalk, it is nmea0183 RE: OpenCPN pypilot plugin disconnected - SailingRiver - 2021-06-24 Thanks, I will give it a go. To be sure these are the steps I need to take. Get clone from repository: git clone https://github.com/pypilot/pypilot git clone https://github.com/pypilot/pypilot_data cp -rv pypilot_data/* pypilot cd pypilot python setup.py build sudo python setup.py install cd .. git clone https://github.com/openplotter/openplotter-pypilot cd openplotter-pypilot dpkg-buildpackage -b Install the package: cd .. sudo dpkg -i openplotter-pypilot_x.x.x-xxx_all.deb Run post-installation script: sudo pypilotPostInstall Run openplotter-pypilot openplotter-pypilot RE: OpenCPN pypilot plugin disconnected - SailingRiver - 2021-06-24 (2021-06-24, 03:05 AM)seandepagnier Wrote: I believe what you have is the old version of pypilot and the new version of the pypilot opencpn plugin. This is confusing (even for me) because the openplotter-pypilot plugin version 2.1.1 which is what is installed by openplotter will give you pypilot 0.15. So you can either update pypilot directly from git, or it would be great if you could try out my improvements to openplotter-pypilot which are currently being evaluated but hopefully this version will be in openplotter soon. I have tried both methods i now have pypilot 2.1.1(beta) installed with nog succes... RE: OpenCPN pypilot plugin disconnected - seandepagnier - 2021-06-25 the version in git of openplotter-pypilot is 2.2, you got from github/openplotter/openplotter-pypilot not github/pypilot/openplotter-pypilot It's still being evaluated not included directly in openplotter, so this explains why this step failed. As for pypilot itself, the install is simplified. You shouldn't need to worry about the data. My instruction: sudo python3 setup.py install is slightly different, as you used "python" which is python2, when python3 is needed which would explain why this step failed. It should have given you a message like: ('pypilot requires python version 3. python version is', '2.7.18rc1 (default, Apr 7 2020, 12:05:55) \n[GCC 9.3.0]') Please try just installing pypilot: git clone github.com/pypilot/pypilot cd pypilot sudo python3 setup.py install post the output from this if it fails RE: OpenCPN pypilot plugin disconnected - SailingRiver - 2021-06-25 (2021-06-25, 04:43 AM)seandepagnier Wrote: the version in git of openplotter-pypilot is 2.2, you got from github/openplotter/openplotter-pypilot not github/pypilot/openplotter-pypilot Yes, I used python3 after I got the error message. I also had to install the dependency python3-all and some other for the dkpg build (i have some experience with pyhon and linux). I tried both methods didn't work, then i posted that i could get it to connect, and I still have pypilot 2.1.1 when looking at the pypilot window. So after I have read your reply, I did the following again: $git clone https://github.com/pypilot/pypilot - Successfully created the PyPilot folder (had to delete the old one first using $rm pypilot) $cd pypilot -changed the directory to /python $sudo python3 setup.py install - whole install process ending with this message: Installed /usr/local/lib/python3.7/dist-packages/pypilot-0.24-py3.7-linux-armv7l.egg Processing dependencies for pypilot==0.24 Finished processing dependencies for pypilot==0.24 Then to open pypilot I do the following: $openplotter-pypilot This gives the following message and opens pypilot with 2.1.1 in the header of the window Settings file not found. Using defaults and creating settings file Failed to open SPI bus 0, select 0 Failed to open SPI bus 0, select 1 No IMU detected Using fusion algorithm RTQF wrong external apps format: unexpected EOF while parsing (<string>, line 0) wrong external apps format: unexpected EOF while parsing (<string>, line 0) As you can see this pypilot is not working correctly as now it says NA everywhere and is nothing is working, so something when wrong to fix this I run the following command (this reverts the dependencies back to the old settings somehow and does not build upon the most recent install but rather builds on the old one): $sudo pypilotPostInstall -This give the final message: Installed /usr/local/lib/python3.7/dist-packages/pypilot-0.16-py3.7-linux-armv7l.egg Processing dependencies for pypilot==0.16 Finished processing dependencies for pypilot==0.16 DONE Creating config files... DONE Adding pypilot, pypilot_boatimu and openplotter-pypilot-read services... DONE Setting version... DONE now pypilot is working again as it should but the issue of not being able to connect is still there, somewhere after the install i have to do something to get pypilot working again but I don't know what or how. The $sudo pypilotPostInstall just reverts everything back to the old installation. Any suggestions or ideas? RE: OpenCPN pypilot plugin disconnected - SailingRiver - 2021-06-25 YEEEEEEYY It works (kind of) $pypilot -- autopilot followed by a reboot helped, pypilot is online getting data from imu and connected to controller. Opening pypilot plugin in opencpn shows a connected control and i can control AP from there now. However, I have a new error; as soon as i activate a waypoint and opencpn sends gps data the connection is intermittent to pypilot (connects disconnects, connects and so on) and autopilot (the controller itself) freezes and unfreezes every second. I get the following error message on signal K: TcpProvider: connect ECONNREFUSED 127.0.0.1:20220 Looking at the plugin it connects and disconnects. As soon as i deactivate the route in opencpn all is normal. The previous install didn't have this problem and GPS data was sent and adjusted for and working effortless. I think it is because port 20220 is being used by opencpn and pypilot at the same time, giving some issues (this is an assumption based what I can see for now). Thanks for all the help I think I'm almost there. RE: OpenCPN pypilot plugin disconnected - seandepagnier - 2021-06-26 you stumbled on a typo in the code... usually python is more forgiving, but in this case an accidental comma caused it to crash so I have fixed it in git now, just update pypilot again from git (git pull) and install again and it should be ok Thanks for the testing, and sorry about this. RE: OpenCPN pypilot plugin disconnected - SailingRiver - 2021-06-26 (2021-06-26, 07:50 AM)seandepagnier Wrote: you stumbled on a typo in the code... Thank you very much for your time and effort, I will continue testing it. It works and I am happy with the system (for now ![]() For someone reading through this in the future, after installing open pypilot using the application and pres refresh. Close the application and run the following command to check if everything is working: pi@openplotter:~ $ pypilot -- autopilot This should give some code and keep running, such as checking the imu etc. You can close that now and reboot after that all should be fine!. Happy sailing all! RE: OpenCPN pypilot plugin disconnected - seandepagnier - 2021-06-26 pypilot does not take arguments, so "pyplot -- autopilot" would do the same as just running "pypilot" |