MatrixPilot 3.0 released!

09980-01b_i_ma.jpg

The MatrixPilot dev team is happy to announce that version 3.0 is finally out the door! This update includes a hefty code reorganization into modular, reusable libraries, along with some important new features, and refinements to our dead reckoning and wind estimation algorithms. The code should also now be much easier to hack on as a basis for using the UAVDevBoard for other purposes.

Thanks to all the developers and testers who helped out with this release!



More info over at our wiki.


What's New in MatrixPilot 3.0

  • Support for up to 8-channel PPM RC Input on a single pin, freeing up other pins for other features, including up to 9 RC outputs. Compatible with this board from the DIYDrones store.
  • Added a new mission description language based on LOGO.
  • Allow sending waypoints (or UDB Logo instructions) mid flight over the telemetry channel.
  • Much improved Navigation, due to improvements in Dead Reckoning and wind estimation.
  • Improved camera-targeting logic and precision.
  • Added an RTL Hold feature that keeps you in RTL mode once it's been triggered, until you flip your mode switch. This helps avoid chaos if you're flying at the edge of your RC range.
  • Support for a still-experimental native On-Screen Display using this board from SparkFun.
  • Improved autonomous landing control.
  • Improved flight analysis tools.
  • Code restructuring into shared libraries makes building your own UDB-based projects much easier!
E-mail me when people leave their comments –

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

Join diydrones

Comments

  • Admin

    Yes Ben, My bad , noticed it after I posted it and now upgraded to 3.25 ,Build went through. thanks

    Dynamic Memory Usage

    region                     address                      maximum length  (dec)
    ------                     -------                      ---------------------
    heap                             0                                   0  (0)
    stack                        0xc6a                               0x396  (918)

                            Maximum dynamic memory (bytes):          0x396  (918)

    Executing: "C:\Program Files\Microchip\mplabc30\v3.25\bin\pic30-bin2hex.exe" "D:\Download\UAV\UDB\Downloads\MatrixPilot_3_0\MatrixPilot_3_0\MatrixPilot\MatrixPilot.cof"
    Loaded D:\Download\UAV\UDB\Downloads\MatrixPilot_3_0\MatrixPilot_3_0\MatrixPilot\MatrixPilot.cof.
    ----------------------------------------------------------------------
    Release build of project `D:\Download\UAV\UDB\Downloads\MatrixPilot_3_0\MatrixPilot_3_0\MatrixPilot\MatrixPilot.mcp' succeeded.
    Language tool versions: pic30-as.exe v3.25, pic30-gcc.exe v3.25, pic30-ld.exe v3.25, pic30-ar.exe v3.25
    Fri Apr 29 00:47:12 2011
    ----------------------------------------------------------------------
    BUILD SUCCEEDED

  • @Morli - Thanks!  It looks like your project is still using the old C30.  I know it's possible to have both old and new installed at once.  You may need to change your project settings to use the new one.  Or you could uninstall the old one.
  • Hey Ben, congrats on the release - and it was cool to meet you at AVC. see you next year...
  • Admin

    Good work Ben, however with this version I get linker issue, part of which is shown below while building. I am using 8.66 and 3.25 ( latest). thanks

     

    pic30-coff-gcc.exe: -legacy-libc: linker input file unused because linking not done
    Make: The target "D:\Download\UAV\UDB\Downloads\MatrixPilot_3_0\MatrixPilot_3_0\MatrixPilot\build\udb\osd.o" is out of date.
    Executing: "C:\Program Files\Microchip\MPLAB C30\bin\pic30-gcc.exe" -mcpu=30F4011 -x c -c   "..\libUDB\osd.c" -o"build/udb\osd.o" -I"." -g -Wall -legacy-libc
    pic30-coff-gcc.exe: -legacy-libc: linker input file unused because linking not done
    Make: The target "D:\Download\UAV\UDB\Downloads\MatrixPilot_3_0\MatrixPilot_3_0\MatrixPilot\build\udb\mp_osd.o" is out of date.
    Executing: "C:\Program Files\Microchip\MPLAB C30\bin\pic30-gcc.exe" -mcpu=30F4011 -x c -c   "mp_osd.c" -o"build/udb\mp_osd.o" -I"." -g -Wall -legacy-libc
    pic30-coff-gcc.exe: -legacy-libc: linker input file unused because linking not done
    Make: The target "D:\Download\UAV\UDB\Downloads\MatrixPilot_3_0\MatrixPilot_3_0\MatrixPilot\build\udb\traps_udb_asm.o" is out of date.
    Executing: "C:\Program Files\Microchip\MPLAB C30\bin\pic30-gcc.exe" -mcpu=30F4011 -c -I"." "..\libUDB\traps_udb_asm.s" -o"build/udb\traps_udb_asm.o" -Wa,-g
    Make: The target "D:\Download\UAV\UDB\Downloads\MatrixPilot_3_0\MatrixPilot_3_0\MatrixPilot\MatrixPilot.cof" is out of date.
    Executing: "C:\Program Files\Microchip\MPLAB C30\bin\pic30-gcc.exe" -mcpu=30F4011 "build\udb\altitudeCntrl.o" "build\udb\background.o" "build\udb\behavior.o" "build\udb\cameraCntrl.o" "build\udb\main.o" "build\udb\navigate.o" "build\udb\pitchCntrl.o" "build\udb\rollCntrl.o" "build\udb\servoMix.o" "build\udb\states.o" "build\udb\yawCntrl.o" "build\udb\libUDB.o" "build\udb\telemetry.o" "build\udb\servoPrepare.o" "build\udb\estWind.o" "build\udb\estYawDrift.o" "build\udb\gpsParseCommon.o" "build\udb\gpsParseSTD.o" "build\udb\gpsParseUBX.o" "build\udb\mathlibNAV.o" "build\udb\rmat.o" "build\udb\libDCM.o" "build\udb\analog2digital_udb.o" "build\udb\magneto_udb.o" "build\udb\radioIn_udb.o" "build\udb\serialIO_udb.o" "build\udb\servoOut.o" "build\udb\flightplan-logo.o" "build\udb\flightplan-waypoints.o" "build\udb\deadReckoning.o" "build\udb\osd.o" "build\udb\mp_osd.o" "build\udb\traps_udb_asm.o" "C:\Program Files\Microchip\MPLAB C30\lib\libdsp-coff.a" -o"MatrixPilot.cof" -legacy-libc -Wl,-L"C:\Program Files\Microc
    hip\MPLAB C30\lib",-Tp30F4011.gld,--defsym=__MPLAB_BUILD=1,-Map="MatrixPilot.map",--report-mem
    c:\program files\microchip\mplab c30\bin\bin\..\bin/pic30-coff-ld.exe: cannot find -legacy-libc
    Link step failed.

  • That's great news.Keep up the good work!
This reply was deleted.