Thank you @rmackay9 -
I think there’s a lot of history behind SITL that I’m not aware of yet. Thanks for your patience and support. And I think I didn’t express myself well.
My concern as to do with support for CAN. The documentation noted below suggests that by including the options for CAN support, peripherals using CAN should work.
In my recent experience - this is not true.
ArduPilot of course doesn’t support sensors “by name” - but rather by their connections. As such, any CAN connected optical flow device with both an optical flow sensor and rangefinder would be configured in the ArduPilot parameters in a similar way.
As I dug deeper in to why this wasn’t working for me, I ran into information that suggested that the libraries SITL uses for CAN/DroneCAN are no longer available.
This makes me wonder if in the early days of SITL, CAN was supported - and that support is no longer available.
I appreciate that there is an option to just plug in a generic Optical Flow. But that changes the character of SITL entirely. It means that you can simulate missions - but not vehicles. That’s an important distinction.
So yes - you’re entirely right regarding expectations. And to your point, maybe a clarifying statement regarding SITL’s ability to support equipment configurations would be a helpful addition to the SITL wiki.
It’s possible that there are no simulators that meet my specific needs. I’m going to try Gazebo next, and see if that does.
If it helps, here’s the context of my goals:
I’m duplicating the functionality of a Ryze Tello and the DroneBlocks app - using Cube/Pixhawk and ArduPilot/PX4 equipement. I’m calling my project “drone-lab”.
Drone-lab uses a companion computer (Geniatech xpi-RK3566-zero) that has a uart mavlink connection with the flight controller. It then uses the mavlink-router program to make the mavlink datasteam available on a TCP connection. Then I have a websocket bridge on the SBC that connects that TCP connecton to websockt connection over the SBC’s wi-fi. By usng websocket, I can address the vehicle using html/js applications running in a browser. My application will have similar functionality to the DroneBlocks app.
Another small detail is that I run NGINX on the SBC so that all the user needs is a wi-fi connection to the SBC - to access all the application and connectivity. It works entirely without the internet.
I’d like to be able to simulate this functionality, before working with real quad-copter - which has been my interest in SITL.
I appreciate your support - and I’ll make everything I learn and build available on GitHub once I make some progress.