|
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. |