Home MicroStar 2000 Software version history
Software version history PDF Print E-mail
Written by Gordon Anderson   
Friday, 28 August 2009 04:34

This article contains the MicroStar 2000 software version history. This data is a little cryptic because it was pulled from the MicroStar source code header and it is a history of all changes that have been made starting with the original version in 2001. You will also find a to do list defining future modifications that are planned.

; Revision History:
;    All for the version 1.0 revisions were for the original Encoder design that had
;    a final hardware revision of 3.0. Versions 2.0 are all designed for the hardware
;    revision 4.0 and beyond. This revision uses the PIC 18F8722 PIC. The original
;    encoder used a 17C766 PIC and the version 2.0 series is not compatable with that
;    PIC.
;
;    Version 1.0b
;        First release, Jan 2001
;    Version 1.0c
;        Fixed a few minor bugs and finished the dual SPROM
;        support
;       Version 1.0d, Jan 28, 2001
;               Fixed a timing bug in the SPROM read function.
;       Version 1.0E, April 16,2001
;               Fixed the interface to RF deck, added support for
;        50MHz, 53MHz, and 72MHz.         
;        Added support for the receiver battery test function.
;       Version 1.0F, May 5, 2001
;               Placed the PLL in high current mode.
;               Fixed a display bug in the LCD52 drivers.   
;               Small display bug in 4x12 display driver.
;    Version 1.0G, October 21, 2001
;        Added programmable channel output order
;        Added Programmable trim assignment
;        Added support for Futaba type buddy box
;        Added new Auto Trim mode, where full adjustment is made when button
;        is pressed
;        Added enable switch to timer and throttle trigger to timer
;        Added up counter mode
;       Version 1.0H, March 17, 2002
;               Fixed a bug in the throttle trim, the percentage value used
;               was from the rudder!
;               Added a timer option to stop at zero on down counting.
;               Fixed bug in UP counter.
;       Version 1.0I, August 18, 2002
;               1.) Servo limits changed to .750 mS and 2.250 mS
;               2.) Snap PB changed to % and done after normalization
;               3.) CROW added
;    Version 1.0J, November 30, 2003
;        1.) Fixed a bug in the table edit mode that would not
;            allow you to edit the last position.
;        2.) Fixed the Fixed First Mixer bug.
;    Version 1.1a, December 2004
;        1.) Added high and low rate expo to A,E,R (tested)
;        2.) Fixed the alt aircraft timer problem (tested)
;        3.) Added the Throttle low point adjust feature (tested)
;        4.) Added second alternate aircraft switch (tested)
;        5.) Add set model to default parameters (tested)
;        6.) Add buttons to set time values in min and max as short cuts.
;            use snap right and snap left buttons. (tested)
;        6.) Add battery timer (tested)
;        7.) Add FMS flight simulator support (tested)
;        8.) Channel trigger points (tested)
;        9.) Add battery alarm level adjustment (tested)
;        10.)Reorder the menus into a more logical order (tested)
;        11.)Add 4 more tables (tested)
;        12.)Move Shift setting to Aircraft area (tested)
;        13.)Fix bug in the Frequency selection function, can not
;            select OFF as an option. (tested)
;        14.)Changed the way Mixer 2 works. (tested)
;        15.)Bug that causes the transmitter to crash in CAL mode when
;            a mixer is on. I think it was the select chan functions mult.
;            (tested)
;    Version 1.1b, January 14, 2005, bug fixes only
;        1.) Fixed a EPROM space bug
;        2.) Det defaults for min and max value
;        3.) Fixed AUXOUT on top line of display
;    Version 1.1c, February 12 2005, bug fix
;        1.) Fixed bug in AutoTrim one shot mode if you have full
;            stick deflection.
;    Version 1.1d, July 7 2005, requests, not yet implemented
;        Found and fixed a servo position editing bug. This had
;               to do with block move using wrong radix.
;    Version 1.1e, July 24 2005
;        Found and fixed a aileron differential bug
;    Version 1.1f, December 10 2005
;        Found and fixed a channel 8 bug that caused the programed values to
;        be off by a factor of two from center
;
;    Version 2.0a, December 2006.
;        1.) Move channel order to aircraft memory area, done
;        2.) Auto Trim range increase to +- 20 percent, done
;        3.) Use preset button as an exit from UI, done
;        4.) Move tables to Aircraft area (2 tables added, 22 bytes), done
;        5.) Add fixed mixers (12 bytes total), done
;            - Ail to rudder, 2 bytes
;            - Rud to ail, 2 bytes
;            - Rud to ele, 2 bytes
;            - Throttle to ele, 1 byte
;            - Dual elevator, 2 bytes
;        6.) Add sub trims, 8 bytes, done
;        7.) Fix the format flash functions to sync with ppm signal output, done
;        8.) Change invert function to say, positive/negative, done
;    Version 2.0b, January 2007
;        1.) Fixed bug with both LEDs
;        2.) Fixed bug in transmitter voltage adjust
;        3.) Fixed bug in throttle servo position set
;        4.) Added the Adapter assembly switch
;    Version 2.0c, March 2007
;        1.) Fixed bug in copy aircraft, limited aircraft number to 8.
;        2.) Added the frequency band selection menu options to replace jumpers,
;    Version 2.0d, April 8 2007
;        1.) Alternate aircraft number problem. 0 is allowed, look at copy
;            function as well. Fixed copy bug, 0 is OK in alt aircraft define
;            zero disables function
;        2.) Power up student mode throttle adjust lockup, added clear to TTflag
;            on powerup
;        3.) Elevon bug, aileron channel is dead
;        4.) VTAIL bug, rudder is dead
;        5.) For elevaon and vtail remove the code to divide throws in half
;    Version 2.0e
;        1.) Added variable rate to mS change function, done and tested
;        2.) Fixed subtrim bug, they were not working at all due to indirect reg being
;            overwritten. Fixed and tested
;        3.) Bug with the on time counter, in process need to add init to format function
;        4.) Fixed ADC reference problems, done
;        5.) Test auto trims, done
;        6.) Changed channel 5,6,7, and 8 to be -1000 to 1000 range. This makes the
;             better and allows the end points adjustments to work on dual A and E. Done
;             and tested except for the dual A & E options.
;    Version 2.0e2, Feb 3, 2008
;        1.) Fix a bug with the joystick center determination function. It was before the
;            configuration parameters were read causing a bug when the ref is changed to
;            5 volts.
;    Version 2.0e3, March 16 2008
;        1.) Added an option to invert the buzzer polarity. This is to allow a vibrator to
;            be used in place of the buzzer on the rev 4.0 encoder.
;    Version 2.0f, July 13 2008
;        1.) change snap buttons to allow sticks to still function, A,E,R only,
;        2.) Fixed bug in the throttle stick timer enable,
;        3.) Auto trim bugs, no errors found
;        4.) Fix the slew speed,
;        5.) Fixed bug in the stick position switch function,
;        6.) Added stick speed control to select aircraft and percentage.
;        7.) Add message to indicate you are in slave mode.
;        8.) Beep when the trims are set to zero.
;        9.) Added servo slew rate control to channel 5 and 8
;        10.) Allow the user to select the RF deck ref osc frequency
;        11.) Allow adjustmentof the framming rate and frame time defect
;    Version 2.0g, August 2 2008
;        1.) Added the CCPM mixing
;        2.) Fixed init bug on servo rates
;        3.) Added port B to the TEST IO mode 2nd line
;        4.) Added hysistress to trim beep
;        5.) Added digital trims
;        6.) Fixed FMS simulator bug
;        7.) Added Serial send mode, USART2 38400 baud
;        8.) Fixed trim center beep bug
;    Version 2.0h, October 11, 2008
;        1.) Fixed a bug that caused the transmitter to lockup when the tach was
;            pluged in.
;    Version 2.0i, December 6, 2008
;        1.) Add servo reversing function.
;            - Add the reverse option to each servo's set of options
;            - Do this by looking and the sign of the channels gain, positive gain
;              indicates non reversed channel.
;        2.) Add center beep option for throttle trim and CH6 and CH7
;        3.) Fixed the DOG display bugs in the digital trim display
;        4.) Fixed a center beep bug on the digitial trims
;        5.) Upgrade to the 12bit ADC pic, The Encoder will now auto detect CPU.
;        6.) Added function to allow user to adjust digital trim update rate
;        7.) Added clear all sub trims function.
;    Version 2.0j, December 25 2008
;        1.) Copied the ADC normalized position data to bank 8 for the PC interface.
;        2.) Read the receiver voltage raw ADC values in cal mode for PC interface
;        3.) Add a servo position monitor function. Press and hold option button
;            on power up to enter this mode.
;    Version 2.0k, May 3, 2009
;        1.) Changed the order of calls in the run and cal mode, moved the slew rate
;            function before the sub trims.
;        2.) Changed the mix functions to use the slewrate limited values for CH8 and
;            CH5.
;        3.) Added FMS on UART 1 or UART 2.

; Version 2.0l, Novenber 2009
;        1.) Fixed bugs in the futaba buddy box modes
;        2.) Addded a delay between channels on the MicroStar buddybox mode to
;            allow UARTs to sync up when the osc freq is a little different.
;    Version 2.0m, November 29 2009
;        1.) Fixed a rounding problem with the servo calibration routines
;        2.) Improved the OPTION button debouncing logic

;    Version 2.0n, January 11, 2010
;        This version has significant updates to the helicopter mode thanks to
;        input from Jack Dice.
;        1.) Added a helicopter mode enable
;        2.) Use CH8 switch as flight modes, A=Normal, B=Stunt 1, C= Stunt 2.
;            Normal is really defined by no other mode being active.
;        3.) Treat Throttle Hold as a 4th flight mode that overrides other modes
;        4.) Use a table for Throttle, definable in each mode
;        5.) Use a table for Pitch, definable in each mode
;        6.) Use CH6 control as pitch trim and seperate from throttle
;        7.) Each mode provides gyro sensitivity constant but programable output,
;            this signal is output on CH5
;        8.) Added helicopter option to main cal menu to adjust parameters
;        9.) Added flight mode display to helicopter mode
;        10.) fixed an error in the CH8 servo monitor display, A and C were
;             reversed.
;        11.) Fixed the tables to support negative values.
;        12.) Fixed a minor display bug in the servo monitor function
;        13.) Added the gyro tune sensitivity adjust mode
;        14.) Expanded the servo monitor to include output pulse width data as well.
;        15.) Fixed a bug in the mixers when a slew rate controlled channel is
;             mixed to itself.
;        16.) Initial restructuring of the code for the MicroProStar and addition
;             of the drivers. First release of the MicroProStar.
;        17.) The default for the throttle servo range was in the reverse direction,
;             I fliped it in this release.
;        18.) The MicroStar buddybox mode had a baudrate error.

;
;    Version 2.0x, to do list
;        1.) Add more aircraft specific tables, 7 total. Can't have more than 7
;            aircraft tables. here is what needs to be done for this change:
;            a.) Move the aircraft tables to the end of page 4 in the aircraft setup area.
;                reserve the old space so we don't have to adjust pointers.
;            b.) Add the 5 additional entries in the data.asm file
;            c.) Edit the PC app to support the new tables and set defaults
;            d.) Test this function
;        2.) and i just remembered another thing i don't find so user friendly:  
;            whenever i need to adjust something in one of the alternate aircraft
;            memories i have to first call up and select that memory.  with the new
;            version's 6 alternates this could turn into a real nightmare.  could it
;            be changed so that whenever you switch to CAL mode you're automatically
;            in the menu of whatever memory was currently being used and displayed on
;            the LCD when the switch was hit?
;            Need to consider options for this problem. Faster aircraft channel
;            selection may be an option.
;        3.) Allow no confirm of RF at startup. Do this by adding a EEPROM config function
;            to the bootloader. Allow the following types of functions or at least consider
;            these functions:
;            a.) The no RF confirm option
;            b.) Oversampling
;        4.) Add position announce function to cause a beep at a control position
;            this should include all channels including trims
;        5.) Trims carries across alternate aircraft. This should be optional and
;            selectable trim by trim
;        6.) Additional channels for generated channels
;        7.) Have the transmitter broadcast the position information during adjustment
;            of the table values.
;        8.) Digital trim issues
;            - The system doesn't seem to save to the *.CFG file the actual position
;              of digital trims, and then, when loading the file using another MS2K
;              radio, they are lost.
;
;            -When I set up an alternative aircraft and it happens to need a
;             different trim position than the master has, that is, when I need
;             different flight phases with different trimmings, digital trims do not
;             act independently, but on all the phases at once.
;        9.) Add option for FMS on comm port 1 and also allow or add an option to make
;            the change persistent.
;
; Bugs and problems reported:
;    1.) Reported by Jack Dice 3/7/2009
;        It takes three models to define this glider, a main definition and two alternate
;        A/C's, Both alt A/C's are operated by the ch8 switch, one on posA, the other on
;        posC. I needed to change the elev trim on the Alt A/C in posA so I went to cal,
;        selected the model of the alt a/c of interest and made a change to the elevator
;        sub-trim. I backed out of that menu and then went to "select A/C" to get back to
;        the main model definition.  When I returned to "run" the alt A/C definitions were
;        dead, ie moving the ch8 switch did nothing, no A indication in the display
;        (although only one of the alt A/c's show up as an A on the display) and no change
;        in the airplane's control settings. The solution to the problem was to turn the
;        transmitter off and then back on again, after which everything worked as expected.
;        I would have thought the system would not require a re-boot after making changes
;        to the alt A/C models but maybe that is the way it works!
;
; Upgrade ideas (many of these are user ideas, some I will implement some I will not.):
;    1.) New trainer mode where the master can influence the student...
;    2.) Programmable delay when switching between flight configurations.
;       3.) it would be nice that when entering cal mode you were in the programming menus
;        for the model#  that appeared on the display when you hit the switch.  as it is
;        (or was as i haven't played with this on ver.2) you can be on one of the alts,
;        hit the cal switch and you'll be editing the master and not the alt.  only way
;        to edit the alt is to select that specific memory and then cal...can be almost
;        as confusing as what i just wrote and now we've got 6 alts inste! ad of just two.

Last Updated on Sunday, 21 February 2010 08:23
 
Copyright © 2010 MicroStar 2000. All Rights Reserved.
Joomla! is Free Software released under the GNU/GPL License.