/**************************************************************************** * Copyright (C) 2009-2018 by Claas Anders "CaScAdE" Rathje * * admiralcascade@gmail.com * * Project-URL: http://www.mylifesucks.de/oss/c-osd/ * * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License. * * * * This program is distributed in the hope that it will be useful, * * but WITHOUT ANY WARRANTY; without even the implied warranty of * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * * GNU General Public License for more details. * * * * You should have received a copy of the GNU General Public License * * along with this program; if not, write to the * * Free Software Foundation, Inc., * * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * ****************************************************************************/ 20180509-1200 *adapted structs to reflect FC/NC software V2.20c/V2.20h 20170511-1145 *adapted structs to reflect FC/NC software V2.18a 20161212-0845 *adapted structs to reflect FC/NC software V2.16a 20160302-0700 *adapted structs to reflect FC/NC software V2.14a 20151026-0630 *adapted structs to reflect FC/NC software V2.12a 20150427-2145 *adapted structs to reflect FC/NC software V2.10a/b 20141015-2300 *adapted structs to reflect FC/NC software V2.08a *changed hanging to 2min wait in case of version missmatch 20140415-2130 *adapted structs to reflect FC/NC software V2.06a *added version check for FC/NC software (OSD will hang at init in case version do not match) 20140317-1730 *fixed battery-voltage >254 crash 20140313-2230 *adapted structs to reflect FC/NC software V2.04a 20130824-1115 *fixed FC-only mode 20130622-2030 *adapted settings struct to FC software 0.90L 20130622-2030 *adapted settings struct to FC software 0.90j 20130401-1216 *fixed display of mAh from C-Strom *fixed ppm crash due do underflow 20130218-2030 +Source option to set the Aggr.Horizon indicator bars on the same level as the horizon 20121127-2120 +No FC communication define in config for usage with NC and no FC *memcpy stuff instead of inplace buffer to unlock the buffer faster +prepared the 3D Data stuff 20121105-1135 *attemp to fix errors when building with GCC 4.7 20121102-1245 *small init fix for display modes *small change in ppm handling 20120723-1900 *expanded ampere wasted to 5digits in nc_mode_default 20120329-1324 *corrected bug in stats which caused maximal current to be overwritten 20120328-1000 *setting struct adapted to V0.88e @caused wrong setting-name display 20120114-2235 *setting struct adapted to V0.86d @caused wrong setting-name display 20110921-1425 +logo support @there is a logo in the new character definitions @to see it you will have to reflash characters @insert your own logo if you like to, see osd-logo.png as example @and use http://www.mylifesucks.de/tools/max7456/ 20110825-1000 *initial testing stuff for -45° rotated flights (X instead of +) *some minor code changes 20110605-1045 *possible fix of the previous ugly RSSI hack 20110604-1615 +really ugly (untested) hack to get ACT DSL RSSI information in FC-Only mode 20110523-1635 *fixed statistics-accumulation in minimal-screen. 20110331-1805 +added possibility to blank the display with SJ1 (SJ1 closed = no HUD) 20110331-1200 *small adaption to NC 0.24b and FC 0.84a *added CF-indicator icon @To see the correct CF-indicator you will have to flash the characters! 20110307-1845 *added debug output option for MAX7456 emulation *moved horizon one line higher when displaying GPS-Coordinates *fixed small glitch in menu 20110202-1323 *added big speed indicator (credits to: uwerner) *added possibility to show GPS-Coordinates during flight *added more _brackets_ @To see correct corner-chars when using scope, flash the character-set included in this release! 20101218-2030 *added _brackets_ to mark a scope when using a second camera (might help to remember what the second camera is filming) @To see real corners, flash the new character-set included in this release! 20101116-2110 *increased buffer so the new config struct really fits (fixes garbage after setting name) *fixed GPS-blink on startup *re-enable some ascii-char mappings (some people do have underscores in their setting-names) 20101115-2115 *inserted missing new value in config-struct. should fix setting-name. 20101115-0800 *updated structs and flags to fit FC 0.80a && NC 0.20a *sat-icon will blink when not enough sats are found (nc_mode_default) 20101008-0945 *fixed EPi-Strom voltage-display when using FC-Ampere 20101007-1555 *added passive option: OSD will NOT request data after bootup 20100908-2335 *fixed height-offset causing different height values in OSD compared to MK-Tool when using baro-height (thx Neo360) 20100822-2300 *removed debug-leftover in ppm.c (thx OktoMac) *made number display-routines more stable when big numbers occur 20100803-0355 *removed constantly requests for the NC Uart in NC mode which caused problems when using OSD/MKTool at the same time 20100730-1345 *added current setting display *updated structs for FC 0.80 and NC 0.20 (old version will still work, just cosmetics) *battery warn level now _can_ be taken from the FC-Settings *corrected some defines so FC stuff is only in FC Builds and NC stuff only in NC builds 20100701-1745 *hopefully fixed altimeter-stats *some basic antenna tracking insertion for others to test 20100613-2255 *corrected heigth-division-factor when using baro-height 20100531-1530 *fixed bug in stats when max-distance > 999m 20100501-1130 *distance to home now 4 digits for long distance flights *max height and speed shown again in stats *clear full screen before stats shown so the art-horizon does not bug us 20100419-0020 *fixed bug causing PPM-based display on/off to fail *fixed display of AGRESSiVA-horizion during motor run 20100412-2125 *added mph/ft (two new chars added, reflash characters if you need ft/mph) *AGRESSiVA-horizion now switchable via menu *reworked menu a bit *switched from -O2 to -Os because of the added stuff 20100403-0115 *RC-RSSI now shown if available (RC_Quality is still fallback, still needs FC patch) +AGRESSiVA-horizion to main trunk (NEW_ARTHORIZON 1 to test, needs new chars) +chars needed for above mod to chars.mcm and chars.c 20100218-2330 *hopefully fixed the laggy osd data problem -send_data_mk has been striked out to save space @nc-mode should be small enough for bootloader again ( Program: 14986 bytes (91.5% Full) ) 20100216-1430 *some menu stuff *stats in nc_default do not disturb the bigvario anymore *reduced code size from 16088 bytes (98.2% Full) 15436 bytes (94.2% Full) 20100214-1700 +mah wasted per flight (still counts up after landing, but space gets tight) *init phase from 2000ms to 3000ms *init only takes place after first "valid" UBat is received (<4V should case the Mega to reset anyways) 20100212-2310 *adapted MK-datastructs to NC 0.18c *added choice for current display measured by FC 20091109-1100 +fc-only mode by Josef "jopl" Plasil (MK3Mag on FC and no NC) *usart1 routine to filter out unwanted datasets (also big thanks to jopl) 20091102-2205 +nc/fc software version display in bootup *changed checkbytes because of previously removed EEPROM data 20091030-2222 *synced NaviStruct to NC Code v0.17e (since nothing of the new stuff is used right now, older NC version will still work) 20090714-2100 *fixed the flags (hopefully) for C-Strom and stuff 20090706-2000 *hopefully fixed the new 10th number showing functions +support for GPS height instead of Baro 20090703-0005 *write-number-functions changed, using itoa now, saves space, should be faster *inline added for basic max7456-spi_send because saves procedure call (^= time) 20090627-1415 *ALL characters now in Progmem, from now on there will be only ONE char-file! 20090612-2100 *spi transfer now struct driven (needs C-Strom 20090612-2100 now!!!) *lesser spi update rate (caused problems on some strom-slaves) *voltage gets transfered via spi as well *menu to switch display of 2nd voltage measured by C-Strom on and off 20090604-1350 *bugfix for stats 20090604-1330 *possible to choose between different osd-layouts (via menu) 20090604-0700 +(shaddi)osd_ncmode_minimal for less symbols during FPV 20090601-2233 *(woggle) changed timer init an interupt to be more precise *(woggle) remove all warning during compile *(woggle) simplify draw_big_variometer *(woggle) put compass rose to PROGMEM *(woggle) put directions array to PROGMEM 20090525-2305 +HUD on/off via RC (connect to PPM, according to manual) testing stuff 20090523-1150 +pal/ntsc changable in menu (applied immedeately!) 20090519-2245 *mah corrected +config gets saved now (menu item!) *source moved a bit 20090519-0115 +mah currently wasted *some small changes 20090517-2345 *modded the real alpha stuff i have been talking about below 20090516-2345 +some really testing stuff 'bout current measurement, more to come 20090513-2350 *cellnumber autoconfig modified, offset set to 1,5V *copy paste nick/roll error fixed *clean after build in dist.sh +a little shellscript to auto-build the files (testing) *osd-layouts in seperate files so including own layouts should get easier +build date is displayed during init to know which version you are runing 20090513-1040 *some code movement +artificial horizon for FC-ONLY mode 20090512-2100 +some FCONLY basics (set FCONLY to 1 in main.h to use it) 20090511-2345 *battery voltages now calculated according to CELL_VOLT_MIN CELL_VOLT_MAX and CELL_NUM *CELL_NUM -1 causes a rough auto detection of cell number -UBAT_WRN and UBAT_MAX are now deprecated 20090427-2315 +write_gps_pos(...) (needs to be tested) +gps position is shown in stats screen for testing purpose 20090427-2131 *stats are only collected while engines running (shaddi) 20090427-2102 *fixed maximum distance in stats (shaddi) 20090427-2050 *clear() now faster *fixed calculation of max speed in stats (shaddi) *littel typo in artificial horizon (thx joko) *stats are only shown AFTER flight (more specific, after motors had been on at least once) +indication icon for serial link (requires new character 198) +indication icon for manual controll (stick > stick threshold) (Character set 192 needs to be reflashed since new icon is in it) 20090420-0205 *reset-bug fixed *moved code a bit 20090419-2145 *reset-bug workaround in usart1.c: usart1_DisableTXD and usart1_EnableTXD 20090419-1900 *fixed bug in heading-fine conv for bearing to home 20090419-1245 *compass characters bigger *battery position +voltage-symbol to battery-voltage (Character Set 208 needs to be reflashed since compass chars are in it) 20090418-2015 *fixed bug in Character Set 128 (reflash it if you already flashed it!) +another set of vario chars *changed vario to use new characters *moved vario/home-bearing positions *big vario now enabled via menu or BIGVARIO (Character Set 112 needs to be flashed) 20090418-1235 +big vario for testing purpose (Character Set 192 needs to be flashed) 20090418-0100 *variometer uses more steps (9 instead of 5) *home-arrow is now home-clock using more steps (22,5� resolution) +visual battery-gauge according to difference between UBAT_WRN and UBAT_MAX 20090417-1115 *changed calculation of km/h (thx wowie) *added JochenK_(joko)'s characters (Character-Sets 128, 136, 144, 152, 160, 168, 176 and 184 need to be flashed!) 20090408-1245 (shaddi) *fixed distance towards home 20090408-0035 *rewrote number->display functions *fixed height bug (uint vs int) 20090407-2100 +added request of OSD data, disrequest of debug data and uptime reset to menu -removed the uptime-reset binding from S2 +pgm space for some strings to save _normal_ data space *some code movement 20090406-0130 *MK-Datastruct updated to work with NaviCtrl 0.15c firmware *changed flags from NO* to invers versions *enhanced the menu a bit -artificial horizon at bootup, the menu is cooler imho 20090405-0207 +NOOSD as requested *height now corrected (thx lephisto) and displayed as .x up to 10m 20090402-0106 + disabling the txd pin while not using it so it won't interfere with KopterTool usage (thx joko) + if no data has been received for over 2sec we re-request it * tried source organisation a bit 20090401-1741 (shaddi) + More precise Veriometer. Uses more more characters to show the speed of the movement (Character-Set 232 needs to be flashed!) 20090331-1549 + simple config menu during runtime, press S1 to jump in, S2 to cyle and S1 to accept choice - S1 no longer requests the NC data 20090331-1305 + added more statistics * corrected S1/S2 mapping (d'oh) + started simple mode controll, press S2 during bootup toggles artificial horizon 20090329-1452 * fixed bearing to home + added flight stats (shown while engines off) + sat icon should indicate PH/CH/Free now + you need to flash characters 224-231 if you were using previous versions 20090327-2140 * fixed km/h (was cm/s) * fixed height m (was dm) * modified incoming data speed to 100ms (was 200ms) 20090326-2031 + first binary release