IMX linux

Joined
May 15, 2022
Messages
25
Reaction score
1
Age
15
Has anyone tried porting the Solo software (smartshots, sololink etc)
to a different linux distribution?
 
Joined
Oct 18, 2022
Messages
7
Reaction score
1
Age
40
solo_link.png
Here it is.
I've tried in this morning to compile on my Manjaro machine (Arch based linux distro)
[[email protected] sololink]$ uname -a
Linux T14s 5.15.76-1-MANJARO #1 SMP PREEMPT Sat Oct 29 14:22:16 UTC 2022 x86_64 GNU/Linux
Ofcourse you will have to do some changes, it will not work as is on the github. Below are my changes:

Add the missing "#include <phtread>" in the code as is here or else the compiler will complain
[[email protected] sololink]$ git diff
diff --git a/sololink/flightcode/dataflash_logger/dataflash_logger.cpp b/sololink/flightcode/dataflash_logger/dataflash_logger.cpp
index 6c5ea62..09a75d4 100644
--- a/sololink/flightcode/dataflash_logger/dataflash_logger.cpp
+++ b/sololink/flightcode/dataflash_logger/dataflash_logger.cpp
@@ -5,6 +5,7 @@
#include <fcntl.h>
#include <errno.h>
#include <unistd.h>
+#include <pthread.h>

#include <sys/stat.h>
#include <sys/types.h>
Also install gstreamer v0.10 library (package), as I saw it's a dependency that was not present on my linux machine. It's an very old version.
[[email protected] log]$ pacman -Q|grep -i gstreamer
gstreamer 1.20.4-1
gstreamer0.10 0.10.36-20
To see that 'gstreamer' was installed correctly do this (compiler will use the 'gst.h' file) :
[[email protected] sololink]$ find /usr/|grep gst/gst.h$
/usr/include/gstreamer-1.0/gst/gst.h
/usr/include/gstreamer-0.10/gst/gst.h
... and surprise, it seems that I also have installed gstreamer-1.0. Until I didn't install v0.10 the build process didn't work.

To do the actual build it's simple (make sure you have the make and gcc packages installed).
In my case I had the following versions installed:
- make 4.3-3
- gcc 12.2.0-1

[[email protected] sololink]$ pwd
/home/sorin/personal/github/OpenSolo/sololink
[[email protected] sololink]$ make
make -C flightcode
make[1]: Entering directory '/home/sorin/personal/github/OpenSolo/sololink/flightcode'
make -C arp_table
make[2]: Entering directory '/home/sorin/personal/github/OpenSolo/sololink/flightcode/arp_table'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/sorin/personal/github/OpenSolo/sololink/flightcode/arp_table'
make -C dflog
...
Before running "sololink_config" you must change the hostname or else the tool cannot identify if it's running on controller or actual solo quadcopter.

Have fun ;)
 
Joined
May 15, 2022
Messages
25
Reaction score
1
Age
15
Why has no one upgraded to a newer version of yocto and converted the scripts to python3
 
Joined
Oct 18, 2022
Messages
7
Reaction score
1
Age
40

@ktechdev What are the benefits to do that ? Give me some good reasons.

I can give you reasons why I WOULDN'T do it:
- Spend free time to gain what ? (again you must have some benefits)
- Does the latest version of Yocto support the old hardware found in 3DR Solo & Controller ? If it does not, how much time would someone need to add support to that
- Porting the code from python 2 to python 3 isn't bullet proof... some new bugs can appear. I'm not willing to test new code on my only drone and crash it because of a simple and stupid bug :)
- Old proverb used by IT developers : Leave something alone; avoid attempting to correct, fix, or improve what is already sufficient

My opinion is that existing software for 3DR Solo is mature enough and the work of the guys to make it work with all Pixhawk cubes was the best thing to be done to have a wide support 👍
 
Joined
May 15, 2022
Messages
25
Reaction score
1
Age
15
There are a lot of improvements that could be made with more drivers libraries etc
like opencv4
 
Joined
Feb 2, 2020
Messages
40
Reaction score
7
Age
56
@ktechdev Are you wondering if the sololink software could be ported/upgrade and used on another device or on the Solo hardware? If it's the latter, it would probably require a bootloader (uboot?) upgrade, and almost certainly a kernel upgrade, which would be challenging. If that were done, I would probably port something like Armbian to it and make it more developer friendly. The way it's setup now, it's very good at self-healing, which is great for a commercial product, but not great for something that you're trying to experiment with.
 
Joined
Feb 2, 2020
Messages
40
Reaction score
7
Age
56
and by self healing do you refer to its factory reset capability?

Yes. If I remember right, it detects boot failures and reinstalls from a "gold" partition. That, of course, is a good thing for the most part, but anything you changed on the main partition will be lost.
 

New Posts

Members online

Forum statistics

Threads
12,999
Messages
147,103
Members
15,762
Latest member
Socosan Adrian