I'm a newbie and trying to do SITL of ArduCopter. Here is the steps I follow:
1. I run ArduCopter.elf and get the following messeges:
Starting SITL input
Serial port 0 on TCP port 5760
Waiting for connection ....
2. I type mavproxy.py --master tcp:127.0.0.1:5760 and get the followins:
Logging to mav.log
Init ArduCopter V2.5.5
Free RAM: 4096
FW Ver: 118
load_all took 9us
Press ENTER 3 times for CLI
GUEU"d'`8EU3ising APM... ublox OK
U3STARTtU*U"d'`mInit GyroU<U"d'`*UU "d'`J*U3
gyro did not converge: diff=0.191763 dps
G_off: 0.01, -0.01, -0.01
A_off: 0.00, 0.00, 0.00
Ready to FLY U r&U!U"U#U$IU%U&~U'jU(U)KgU*%U+PU,U-=U.SU/?U0U1nU2U3;U4U5cU6vU7TU38 MOTORSARMING MOTORSLow Battery!TrUF:UGEUH\UIUJkUKuULm3UMUNUOUP>7UQURUSPUTHXUUUVoUW&UXUYvUZiU[A
The not understandable series of letters keep appearing.
3. I run the simulator by typing im_multicopter.py --home -35.362938,149.165085,584,270. Then I get
Simulating 4 motors for frame +
Starting at lat=-35.362938 lon=149.165085 alt=584.0 heading=270.0
As soon as I press the enter button, I see the following message on the above ArduCopter terminal:
cmd#: 0 id:16 op:0 p1:0 p2:0 p3:-35.3629379 p4:149.1650848
4. I type mavproxy.py --master tcp:127.0.0.1:5760 --sitl 127.0.0.1:5501 and get the following prompt:
Logging to mav.log
I don't know what to do from here. I think I have to provide PWM to the motors but don't know how.
Thanks for your time reading the post.
You've made good progress!
The weird characters are MAVlink packets (ASCII "U" = 0x55, which is the "STX, start transmit" header of the MAVlink packet. )
So you're seeing MAVLink.
The sim-multicopter part is working correctly too. You should indeed see the response that sets the GPS home position (cmd#: 0 id:16 op:0 p1:0 p2:0 p3:-35.3629379 p4:149.1650848)
I think you have the command line for mavproxy incorrect. Instead of "--master tcp...." you need "--master=tcp:...."
Otherwise it ignores the tcp part and tries to connect to a serial TTY, then you see nothing happening ;-)
Once you fix that you can try these commands on mavproxy:
rc 4 2000 (set full right rudder). You should see "MOTORS ARMING" or something
rc 4 1500 (center rudder), you don't want to take off with full right rudder
rc 3 1400 (40% throttle), take off
After a second you should see:
Thanks for your reply, Andreas.
I added '=' between the option keys and values and typed in those commands at the prompt of Terminal 4 (MAV>). Still nothing is happening. Do I have to run a ground station to process the mavlink packets coming out of the second terminal?
I see the following lines in the second terminal:
gyro did not converge: diff=0.121114 dps
MOTORSARMING MOTORSLow Battery!
Do you think these are critical?
I figured out why nothing happens on Terminal 4. mavproxy.py stuck at master.wait_heartbeat() in the main_loop function. In addition, I had to add --mav10 when I run mavproxy.py. Now, I see the quadcopter flies in FlightGear as I type in the three rc commands. Thank you for the tip.
I still have a little problem with FlightGear though. On the FlightGear window, I see some texts like altitude, roll, pitch, and heading, etc., but they are all 'nil' instead of some numbers.
Any comments would be appreciated.