ArduCopter control without simulation

I am interested in obtaining the motor commands given by the ArduCopter controller without actually running the SITL. I would want to provide it with any necessary measurements and reference velocity, receive the motor commands, and then simulate the motor commands myself. I also don’t want this to necessarily be a real-time back and forth. I may only need a motor command under certain conditions in my custom simulation.

Right now, I can use the motor commands in my simulation by running the SITL and using the pymavlink library. However, my custom python simulation has some differences that cause the motor commands to no longer be relevant. A hacky solution I found was to reset the UAV at each timestep; however, I suspect that there is an easier way. What would be the best way to accomplish my goal?

I apologize if this is a silly question. I am new to this software. I greatly appreciate any advice anyone can offer! Thanks!

I have searched through other posts on this forum and have not found anything that answers this question, so any advice someone can offer would still be helpful!

You need SITL. And you can modify SITL to suit your needs.