Using an Edison board with Solo

Joined
Jun 21, 2016
Messages
18
Reaction score
0
Age
33
Hi everyone. I am looking to use this breakout board for Solo 3DR Solo Accessory Breakout Board to connect to an Edison board, to which I plan to connect a camera for vision processing. Does this sound like a feasible idea? I am pretty new to this, so I'd like to know my plan has some hope of being successful before I completely embark on it. Thanks for any suggestions you might have.
 
the edison as well as several other companion computers can connect to the solo accessory bay port. if you are using the edison breakout board you can use uart 0 (header), uart 1 (usb) and usb otg to connect to the solo board.
 
  • Like
Reactions: lroberts
Awesome, thank you! Newbie question here - do you need all of these uart connections or just the one that suits your project best? Thanks
 
Awesome, thank you! Newbie question here - do you need all of these uart connections or just the one that suits your project best? Thanks

you only need one. the right one just depends on how you want the edison to interact with solo. both devices support usg otg device/host and serial. the recommended connection on solo is the usb otg. it connects to the imx on board solo and allows the edison to interact with dronekit, smart shots and the controller.

so if you were using usb otg, solo needs to be host and the edison needs to be the device. do this:

-place a jumper on solos 3DRID pin to ground. this sets solo up as host.
-connect a micro usb otg cable to the accessory board.
-connect a usb type a to micro usb type b cable from the micro usb otg cable to the edisons usb otg port.

you can also just take a micro usb type b cable, cut one end off and connect directly to the appropriate pins on the solo accessory board.
 
Last edited:
Follow up question...would you actually need to connect the Edison to the breakout board via a wired connection, or would it be possible for Solo to communicate with the Edison via wi-fi?

edit: In other words, then, can we make this Edison + Solo system work without the breakout board?

Thanks.
 
Last edited:
i know you can set the edison to connect to the solo controller by editing /etc/network/interfaces and setting wlan0 to connect to the controller.

keep in mind that you are not directly connected to solo, you are connected to the controller. you can access the solo via solo's ip address, but depending on what you are trying to do, via ip may not be the proper connection.
 
Thanks so much for your help so far. Is there any way to connect the Edison to the Solo, keeping the Edison in host mode? I know technically the Solo would be the host if the Edison is plugged into it, but is there any way to get around this? I need Edison in host mode because I'm plugging a camera into it. Thanks!
 
Thanks so much for your help so far. Is there any way to connect the Edison to the Solo, keeping the Edison in host mode? I know technically the Solo would be the host if the Edison is plugged into it, but is there any way to get around this? I need Edison in host mode because I'm plugging a camera into it. Thanks!

you could connect your device to the edison and then connect the edison to the solo via uart (edison uart to solo serial 2). this connection may or may not work for what you are trying to do with solo.
 
  • Like
Reactions: lroberts
you could connect your device to the edison and then connect the edison to the solo via uart (edison uart to solo serial 2). this connection may or may not work for what you are trying to do with solo.
Ok, would this connection work if I want to use the Edison for sending commands to the Solo via MAVlink? Is MAVlink the best way to send commands in this case? Thanks!
 
Hi everyone,

I am having another issue. I have connected the Edison to the drone via the TX/RX connection and they are also grounded to each other. I have also tried grounding the 3DRID. When I run this MAVproxy command:
mavproxy.py --master=/dev/ttyMFD1,57600 --rtscts

This is the output:
Using MAVLink 1.0
Using MAVLink 1.0
Connect /dev/ttyMFD1,57600 source_system=255
Running script /home/root/.mavinit.scr
-> module load droneapi.module.api
DroneAPI loaded
Loaded module droneapi.module.api
Log Directory:
Telemetry log: mav.tlog
MAV> Waiting for heartbeat from /dev/ttyMFD1

I cannot connect the Edison to Solo's wifi. I suspect that may be the issue. But since I cannot do this, what are my alternatives?

Any help would be much appreciated! Thanks!
 
Hi everyone,

I am having another issue. I have connected the Edison to the drone via the TX/RX connection and they are also grounded to each other. I have also tried grounding the 3DRID. When I run this MAVproxy command:
mavproxy.py --master=/dev/ttyMFD1,57600 --rtscts

This is the output:
Using MAVLink 1.0
Using MAVLink 1.0
Connect /dev/ttyMFD1,57600 source_system=255
Running script /home/root/.mavinit.scr
-> module load droneapi.module.api
DroneAPI loaded
Loaded module droneapi.module.api
Log Directory:
Telemetry log: mav.tlog
MAV> Waiting for heartbeat from /dev/ttyMFD1

I cannot connect the Edison to Solo's wifi. I suspect that may be the issue. But since I cannot do this, what are my alternatives?

Any help would be much appreciated! Thanks!

i have been doing exclusive testing with the solo and edison and here are my notes.

debian is the best flavor of linux to use. here is how you load debian on to the edison:
Loading Debian (Ubilinux) on the Edison - learn.sparkfun.com

to connect the edison to solo via wifi, you need to edit /etc/network/interfaces on the edison.
under wlan0, set wpa-ssid to your solo wifi sid (i.e. soloLink_mysolo) and set wpa-psk to your solo password.

ex

auto wlan
iface wlan0 inet dhcp
# For WPA
wpa-ssid soloLink_wingZero
wpa-psk mypassword


reboot for the changes to take effect.

when the edison is connected via wifi, you can access the solo via dronekit with the following address: udpin:0.0.0.0:14550

to connect the edison as a device to the solo accessory bay breakout board, ground the the 3DRID pin with a jumper and connect an otg cable to the accessory bay otg usb port. connect a standard micro usb cable between edison otg usb port and otg cable. you can access the edision via serial over usb with the following address: /dev/ttyUSB0.

to connect the edison as host to the solo accessory bay breakout board, make sure the 3DRID is not grounded and connect an otg cable to the edison otg usb port. the edison must be powered by 5v and up or the otg usb port will not be enabled. connect a standard micro usb cable between the solo and the otg cable. you can access the solo via serial over usb with the following address:
/dev/ttyACM0.
 
Last edited:
Wow, thanks so much for that post. It is very helpful. I'm working on installing OpenCV on the Edison in Debian, but I'm running into problems. Maybe I should start a new thread for this? If you can help with this, too, though, that would be great. :) I am following these tutorials:

Install OpenCV-Python in Fedora — OpenCV-Python Tutorials 1 documentation

Installing OpenCV on Debian Linux

Everything seems fine until I run 'make install', which then yields this error:

CMake Error at cmake_install.cmake:40 (FILE):file INSTALL cannot copy file

I try typing 'su' before executing make install, but it still doesn't work. Any ideas? Thanks!

EDIT: The reason I need to install OpenCV this way is because I need ffmpeg support for video processing. I don't think it will work just to install the standard python opencv with apt-get. Please correct me if I'm wrong!
 
Alright, I have another MAVProxy question. I installed Debian on my Edison as suggested, and I am now facing the same issue of 'waiting for a heartbeat'. My linux laptop is connected to Solo's wifi, Edison is connected via serial to the laptop, and Edison is connected to Solo's wifi. I have tried a USB connection between Edison and Solo. I am still encountering the same 'waiting for heartbeat' problem. When I instead run the MAVProxy command on my laptop connected to Solo's wifi, everything seems to work. What am I missing? Why is the Edison not able to connect to Solo via MAVProxy?

EDIT - also, connection via /dev/ttyUSB0 or /dev/ttyACM0 are not recognized. I instead can use /dev/ttyMFD1 or udpin:0.0.0.0:14550 and get the 'waiting for heartbeat'...

Thanks!
 
Alright, I have another MAVProxy question. I installed Debian on my Edison as suggested, and I am now facing the same issue of 'waiting for a heartbeat'. My linux laptop is connected to Solo's wifi, Edison is connected via serial to the laptop, and Edison is connected to Solo's wifi. I have tried a USB connection between Edison and Solo. I am still encountering the same 'waiting for heartbeat' problem. When I instead run the MAVProxy command on my laptop connected to Solo's wifi, everything seems to work. What am I missing? Why is the Edison not able to connect to Solo via MAVProxy?

EDIT - also, connection via /dev/ttyUSB0 or /dev/ttyACM0 are not recognized. I instead can use /dev/ttyMFD1 or udpin:0.0.0.0:14550 and get the 'waiting for heartbeat'...

Thanks!
Jaime Machuca cam help you.
He has Hooked up Edison to Solo successfully a long time ago..
we were just chatting yesterday on FB.
or here
Hope this helps.
 
  • Like
Reactions: lroberts

Members online

No members online now.

Forum statistics

Threads
13,093
Messages
147,741
Members
16,047
Latest member
pvt solo