After a long delay and a rebuild of my test Mavlink source quad,  I'm now able to release a new version of Ardustation software compatible with the latest versions of ACM and APM. 

I'm releasing the software now but also plan to provide detailed documentation for end users wishing to change the default parameters editable for ACM or APM in the Ardustation.  Changes in the available parameters is the single biggest reason that the Ardustation software needs to change with changes in ACM and APM. Hopefully, users will now be able to tailor the Ardustation to meet their personal needs. Look for a blog entry with a video detailing the process to change the parameter support within the next few days.

I've also added a variable speed servo library suggested by Burt Green on the forum to tailor the slew speeds for other gear trains than the readymaderc unit. Look for detailed information on varying the slew speed in the next few days.

I've tested the software with my quad on ACM 2.7.3 and with APM 2.6.0.  I've also tested operation with Mavlink 0.9 for older setups.

The software is available at the usual spot:

 http://code.google.com/p/ardustation-ii/

Please be sure to download the zip file to a empty folder and to use only the library folder contained in the distribution. Do not merge this library folder with either the ACM or APM library folders. This software should be compiled with Arduino 100Relax or Arduino 1.0.1.  Do not use the earlier versions as indicated in the Ardustation wiki. 

Detailed list of changes:

1. Added serial port diagnostic data as a new display type. Displays every half a second the count of serial bytes received and a dump of 15 bytes occuring after 500 msecs of no bytes received (start of a frame of data). Select "Serial Stat" to display this data

Allows viewing basic data values for the start of Mavlink messages. For Mavlink 1.0 heartbeat you should see a message start of: FE 09 XX 01 01 00 MM 00 00 00 where XX = is an incrementing sequence number for each subsequent message. MM = mode 00 = stab,
02 = Alt hold, 05 = Loiter.
It is best to select "Stop Feed" to display heartbeat messages. If you "Start feed", you'll see a sampling of various messages and partial data including the heartbeat messages.

2. Actually used the APM and ACM parameter defines in the code for easier parameter update.

3. Limited the detection of invalid Mavlink after 3 valid heartbeats are received - this limits the posibility of getting Mavlink data that trips up the wrong heartbeat parser.

4. Added option of displaying relative altitude to stored home altitude on flight data display. Press the center button to toggle display of altitude above home altitude (displays AH instead of AT on LCD).

5. Added servo slew speed library to control how fast a tracking antenna slews in both pan and tilt. Default is the old behavior (fast slew), but defines for pan and tilt allow the control of the slew speed. Thanks to Burt Green for the idea and a pointer to the servo library.

6. Added parameter diagnostic - using serial diagnostics - displays a bit map (in hex) of what parameters of the list in params.pde were actually received

You need to be a member of diydrones to add comments!

Join diydrones

Email me when people reply –

Replies

  • I'm trying to compile 2.0.16 with Arduino 1.0.3 and I must be missing something really basic. I get many compilation errors. Perhaps you can point me in the right direction to resolve these.

    Ari.



    ArduStation2:136: error: variable or field 'gcs_handleMessage' declared void
    ArduStation2:136: error: 'mavlink_message_t' was not declared in this scope
    ArduStation2:136: error: 'msg' was not declared in this scope
    ArduStation2:137: error: variable or field 'gcs_handleMessage' declared void
    ArduStation2:137: error: 'mavlink_message_t' was not declared in this scope
    ArduStation2:137: error: 'msg' was not declared in this scope
    ArduStation2:138: error: variable or field 'send_message' declared void
    ArduStation2:138: error: 'mavlink_message_t' was not declared in this scope
    ArduStation2:138: error: 'msg' was not declared in this scope
    ArduStation2:104: error: 'AP_EEPROMB' does not name a type
    ArduStation2:113: error: expected constructor, destructor, or type conversion before '(' token
    ArduStation2:172: error: 'VarSpeedServo' does not name a type
    ArduStation2:173: error: 'VarSpeedServo' does not name a type
    ArduStation2.pde: In function 'void setup()':
    ArduStation2:301: error: 'Pan' was not declared in this scope
    ArduStation2:302: error: 'Tilt' was not declared in this scope
    Antenna.pde: In function 'void SaveHomePosition()':
    Antenna:6: error: 'eeprom_busy_wait' was not declared in this scope
    Antenna:7: error: 'ee' was not declared in this scope
    Antenna:11: error: 'eeprom_write_dword' was not declared in this scope
    Antenna.pde: In function 'void RestoreHomePosition()':
    Antenna:17: error: 'eeprom_busy_wait' was not declared in this scope
    Antenna:18: error: 'ee' was not declared in this scope
    Antenna:22: error: 'eeprom_read_dword' was not declared in this scope
    Antenna.pde: In function 'void SetAntennaPosition()':
    Antenna:32: error: 'Pan' was not declared in this scope
    Antenna:33: error: 'Tilt' was not declared in this scope
    Antenna.pde: In function 'void SetServoHardStop()':
    Antenna:54: error: 'Pan' was not declared in this scope
    Antenna.pde: In function 'void position_antenna()':
    Antenna:122: error: 'ToDeg' was not declared in this scope
    Antenna:134: error: 'Pan' was not declared in this scope
    Antenna:145: error: 'Tilt' was not declared in this scope
    MAVLink.pde: At global scope:
    MAVLink:1: error: variable or field 'gcs_handleMessage' declared void
    MAVLink:1: error: 'mavlink_message_t' was not declared in this scope
    MAVLink:1: error: 'msg' was not declared in this scope

  • Heino,

    Just wanted to report back after testing that everything is working. Thanks!

  • Thanks much Heino! 

    Uploaded the firmware without issues, but I won't be able to test till tomorrow as my quad beeping wakes up the family. :(


    I've got a spare magnetometer still in the plastic bag.  I'd be glad to send it to you if you need it no charge.

  • Heino

     

    This looks nice I have been using 2.0.15 for awile now with no issues. I will load 2.0.16 and run it threw my test scedual and see how it goes. Thanks for your hard work will let you know how it performs on 2.7.3

    Did you finaly get your Quad back in the air ?

     

    Jack

This reply was deleted.

Activity

DIY Drones via Twitter
First impressions of Tinkergen MARK robocar https://ift.tt/36IeZHc
Nov 16
DIY Drones via Twitter
First impressions of the Intel OpenBot https://ift.tt/36qkVV4
Nov 10
DIY Drones via Twitter
Getting started with Robocars https://ift.tt/2HWsudU
Nov 1
DIY Drones via Twitter
RT @chr1sa: The US government just approved 5 US-made drones for purchase, all based on the @Dronecode @PX4Autopilot standard. Great news f…
Aug 20
DIY Drones via Twitter
RT @MarvelmindMaxim: Extreme precision for 60 swarming robots. #marvelmind #autonomousrobotics #robotics #swarmrobotics #rtls #ips #indoor…
Aug 3
DIY Drones via Twitter
RT @MarvelmindMaxim: Precise (±2cm) tracking for racing boats and autonomous boats. Works outdoor and indoor. #autonomous #AutonomousVehic…
Aug 3
DIY Drones via Twitter
RT @MarvelmindMaxim: Helping PixHawk folks to fly autonomous quadcopters using PX4 and ArduPilot. https://marvelmind.com/drones/ Equally suitab…
Aug 3
DIY Drones via Twitter
RT @davsca1: Here is the video of the performance. This paper was a huge group effort and more than one year of work, where we combined and…
Jul 16
DIY Drones via Twitter
RT @chr1sa: My talk on PX4 and FAA certification is coming up at 1:45 PST today on the PX4 Dev Summit livestream. Includes some cool new st…
Jul 7
DIY Drones via Twitter
RT @seesharp: I'm tuned into the PX4 / Dronecode free live conference. Great stuff. Microsoft AirSim talk in 10 minutes. https://t.co/0zbZ2…
Jul 6
DIY Drones via Twitter
RT @chr1sa: Here's today's best times in the @DIYRobocars/@donkey_car virtual race of AI cars compared to last month's race on the same tra…
Jun 20
DIY Drones via Twitter
Jun 19
DIY Drones via Twitter
The difference between proper RC cars and toys (when you’re turning them into robots) https://ift.tt/2MUTvxd
Jun 14
DIY Drones via Twitter
RT @Struktur3D: We have just posted on @DIYDrones for the first time in a long time. Continuing with our search for a #lasercutting service…
Jun 5
DIY Drones via Twitter
Review of the new Nivida Jetson NX for robocars https://ift.tt/36TrS0G
Jun 2
DIY Drones via Twitter
RT @chr1sa: Somehow I missed this, but last week @Nvidia released a new version of its Isaac robot development framework. Lots of new Lidar…
May 31
More…