Commit Graph

366 Commits

Author SHA1 Message Date
Mario Hüttel d91a1b1da0 Fix #15: Make safety controller use CRC checked settings arrays for weights and persistencies. Weights not yet checked. 2020-09-08 21:46:57 +02:00
Mario Hüttel 004be4ea5c Move safety weights and persistencies to config file 2020-09-08 21:15:23 +02:00
Mario Hüttel a838bf3af8 Add new Flag: ERR_FLAG_SAFETY_TAB_CORRUPT 2020-09-08 20:15:40 +02:00
Mario Hüttel 1c1d1c4c97 Issue #18: Store correct flag number in error memory 2020-09-08 19:23:14 +02:00
Mario Hüttel e0f61af709 Issue #18: Protect safety memory heder with CRC 2020-09-08 18:24:10 +02:00
Mario Hüttel b619fc5600 Restructure panic mode and hardfault calls 2020-09-08 18:23:47 +02:00
Mario Hüttel 2f6590416d Improve documentation of Stack Checking 2020-09-07 23:52:34 +02:00
Mario Hüttel af555aba21 Issue #20: Move stack checker to safety folder 2020-09-07 21:56:04 +02:00
Mario Hüttel dd0ee47d86 Issue #20: Add stack checking based on protection area between stack and heap 2020-09-07 21:52:53 +02:00
Mario Hüttel 452abfdd5c Merge branch 'issue/18-Backup-RAM' into issue/20-implement-better-stack-checking 2020-09-07 21:04:37 +02:00
Mario Hüttel ba41c0911d Add necessary sections for stack protection area and implement fill function 2020-09-07 21:03:37 +02:00
Mario Hüttel cbbd97e1bd Issue #20: Implement driver for RNG 2020-09-07 20:47:56 +02:00
Mario Hüttel 20e2a2b84b Doxygen: Fix bug of IN_SECTION macro and __atribute__ 2020-09-06 22:13:51 +02:00
Mario Hüttel 403786e0c6 Issue #15: Implement safety weight table
* CRC protected flag weight table.
* Currently only filled with dummy values. Has to be finished in issue #5
* Config overrides from safety memor ynot yet implemented
2020-09-06 21:05:00 +02:00
Mario Hüttel 192bcf01f6 Merge branch 'issue/18-Backup-RAM' into issue/15-safety-controller-hardening 2020-09-06 19:54:09 +02:00
Mario Hüttel 9880c701b1 Issue #15: Introduce safety weigths 2020-09-06 19:52:44 +02:00
Mario Hüttel 910037a562 Issue #18: Write doxygen headers for safety memory 2020-09-06 19:45:45 +02:00
Mario Hüttel 6232e2f330 Issue #18: Store permanent errors in safety backup RAM 2020-09-06 01:40:10 +02:00
Mario Hüttel c4fe006efa Issue #15: Implement redundancy for error flags 2020-09-05 20:29:21 +02:00
Mario Hüttel b2b1702670 Issue #15: add redundant invers error flag 2020-09-05 20:17:35 +02:00
Mario Hüttel 1f8a6347e9 Issue #15: Move safety controller working pages to CCMRAM 2020-09-05 20:14:08 +02:00
Mario Hüttel d0cf95db49 Issue #18: further iomplementation of safety memory 2020-09-05 20:06:13 +02:00
Mario Hüttel e50602611c Issue #18: Documentation of boot status flags 2020-09-05 19:00:01 +02:00
Mario Hüttel 95382d9ab8 Make interrupt default handler trigger panic mode. 2020-09-05 18:23:53 +02:00
Mario Hüttel e96a710576 Make interrupt default handler trigger panic mode. 2020-09-05 18:23:17 +02:00
Mario Hüttel 2673112a9c Reflow menu: Stop rendering the menu although nothing has changed. This reduces the current consumption. 2020-09-05 18:04:52 +02:00
Mario Hüttel b8b8e19206 Reflow menu: Stop rendering the menu although nothing has changed. This reduces the current consumption. 2020-09-05 18:03:05 +02:00
Mario Hüttel ea26f56545 Issue #18: Check error memory entries at safety ram init 2020-09-05 17:37:56 +02:00
Mario Hüttel e85a85d9c3 Issue #18: ommand to shell in order to test panic mode 2020-09-05 16:56:56 +02:00
Mario Hüttel 3df0631ffc Issue #18: Implement writing and reading boot status structure from backup RAM 2020-09-05 16:32:31 +02:00
Mario Hüttel 7434554319 Issue #18: Fix bugs in safety memory handling 2020-09-05 15:56:52 +02:00
Mario Hüttel c9a5a2c2ff Issue #18: Write init of safety memory 2020-09-05 15:15:46 +02:00
Mario Hüttel 04008a07c0 Issue #18: Implement CRC calculation module 2020-09-05 12:17:36 +02:00
Mario Hüttel 928dbfb9f3 Issue #18: Firther improve documentation 2020-09-04 23:51:51 +02:00
Mario Hüttel 0f0afcf359 Issue #18: Add safety mem corrupt error flag 2020-09-04 23:04:27 +02:00
Mario Hüttel 5d437f3a9f Fix documentation and add safety RAM module to Makefile 2020-09-04 23:02:23 +02:00
Mario Hüttel cb3b42aece Start documentation for safety RAM. Will be implemented afterwards 2020-09-04 22:55:34 +02:00
Mario Hüttel a12648ff7a Issue #18: Backup RAM: Make use of backup regulator optional 2020-09-04 21:33:54 +02:00
Mario Hüttel d3c4e1bffc Issue #18: Implement driver for backup RAM 2020-09-04 21:03:53 +02:00
Mario Hüttel 45c0625864 fixup style issues 2020-08-31 22:58:00 +02:00
Mario Hüttel 03e1ccf97e Fix style 2020-08-31 22:50:39 +02:00
Mario Hüttel 0fd738f37e Fix startup code bug in release mode 2020-08-30 19:40:33 +02:00
Mario Hüttel f32d1afde5 Issue #17: Add ui-emulate command to shell 2020-08-30 18:44:36 +02:00
Mario Hüttel 0da6925119 Issue #17: Add override function for deltas of rotary encoder 2020-08-30 18:25:10 +02:00
Mario Hüttel 914abd8562 Issue #17: Add override function for button 2020-08-30 18:20:58 +02:00
Mario Hüttel 80edd09528 temperature converter: Replace division with multiplication. This makes the code faster 2020-08-29 08:53:23 +02:00
Mario Hüttel ab4499a284 Fix mrpropewr make target to clean debug and release projects 2020-08-29 08:52:44 +02:00
Mario Hüttel cc6e922d1b Move variables to CCM RAM 2020-08-23 21:51:34 +02:00
Mario Hüttel 149c5715c6 Add fault modes and start implementation of backup SRAM. However, this will probably never be used 2020-08-23 21:40:16 +02:00
Mario Hüttel dcd1fa9605 remove executable flag from CCM memory because it is not executable 2020-08-22 13:45:17 +02:00
Mario Hüttel 3cc49fb764 Remove unneeded variable 2020-08-22 13:33:53 +02:00
Mario Hüttel 13ac487ddb remove unneeded variables 2020-08-22 13:30:59 +02:00
Mario Hüttel ec117e0627 Change linker script and startup code.
This is my own code from my template. It is much cleaner than the old code.
2020-08-21 23:47:55 +02:00
Mario Hüttel 95de84fa85 Fix #13: Add hang command to shell 2020-08-21 00:29:19 +02:00
Mario Hüttel 432d30cc34 Fix #12: Timing monitors are now correctly displayed in flags command 2020-08-21 00:20:16 +02:00
Mario Hüttel 0395cd19d4 SD card settings folder: Use f_stat to determine if directory is present 2020-08-21 00:06:56 +02:00
Mario Hüttel 04994bff51 Issue #9: Fix timeout bug in write block command 2020-08-21 00:00:08 +02:00
Mario Hüttel 45564a7789 Fix safety issue #11 2020-08-18 20:47:08 +02:00
Mario Hüttel fa20304df8 Makefile: Add linker script as dependency for linking step 2020-08-18 20:23:44 +02:00
Mario Hüttel 86ba94a3f3 Makefile: Add linker flag to show memory usage after linking 2020-08-18 20:10:15 +02:00
Mario Hüttel 60e990632b Fix #10: Moved static and global variablöes that are 0 initialized to CCMRAM in order to make room and increase performance. 2020-08-18 19:57:13 +02:00
Mario Hüttel 64ef7b4a3c Issue #9: Increase SDIO clock speed to 4.2 MHz 2020-08-18 19:30:51 +02:00
Mario Hüttel 277b28d7f5 Make green LED flash instead of orange one, when inserting SD card 2020-08-17 22:26:29 +02:00
Mario Hüttel bdfaa67070 Fix typo 2020-08-17 22:26:05 +02:00
Mario Hüttel 4e9b28ce15 Improve SDIO handling 2020-08-17 22:10:04 +02:00
Mario Hüttel 543127b187 Fix bugs in settings saving 2020-08-16 22:11:57 +02:00
Mario Hüttel 6c92048de5 Remove emptry line 2020-08-16 20:35:11 +02:00
Mario Hüttel 227562cf3c Load calibration when SD card is inserted.
* Load calibration when SD card is inserted and controller is not yet calibrated
* Fix #7: LED0 blinks when SD is inserted / removed.
2020-08-16 20:33:25 +02:00
Mario Hüttel 58937b46f6 Improve code 2020-08-16 20:33:17 +02:00
Mario Hüttel e06c9f7ddc Remove toml. Write calibration to dat files. Implement first draft for reading function 2020-08-16 19:37:41 +02:00
Mario Hüttel d04d8ebf9d Change save fuinction for SD card calibration data 2020-08-16 13:15:35 +02:00
Mario Hüttel 42ca1a01b5 Merge branch 'issue/1-shell-function-save-calibration-data' into dev 2020-08-16 12:53:47 +02:00
Mario Hüttel 68883735ec Remove global error state from main file 2020-08-16 12:53:05 +02:00
Mario Hüttel 15d255778c Fix #1: Implement save function for calibration 2020-08-16 12:52:37 +02:00
Mario Hüttel d1d2d514bd Add timing monitor for main loop and add monitors to safety flag command 2020-08-16 12:34:41 +02:00
Mario Hüttel fa3c980207 shell: Add dummy function save-calibration. Not yet correcly implemented! 2020-08-16 01:24:59 +02:00
Mario Hüttel 3c6200e08c Settings: Add preliminary functions to store Claibration data on SD Card. Not yet implemented correctly 2020-08-16 01:24:20 +02:00
Mario Hüttel e7d150e8f5 FatFs: Enable relative paths 2020-08-16 01:23:50 +02:00
Mario Hüttel c5667c6895 Toml: Add TOML interpreter for config files 2020-08-16 01:22:57 +02:00
Mario Hüttel b7ccd8542e Increase safety ADC timing monitor to over a second. It might take a while for the ADC to be called if a demanding operation is taking place 2020-08-16 01:22:26 +02:00
Mario Hüttel 1ad68a2c43 SDIO Driver: Fix bug created in commit 3705cc09d1 that makes writing to disk impossible 2020-08-16 01:19:56 +02:00
Mario Hüttel 4ab91ace5f Remove redundant define macro 2020-08-11 23:37:26 +02:00
Mario Hüttel a68b9176cb Move ADC_TO_RES macro to header file 2020-08-11 23:21:14 +02:00
Mario Hüttel cb3c989683 Docu 2020-08-04 00:55:16 +02:00
Mario Hüttel f6f01b0510 Improve sphinx 2020-08-03 21:13:04 +02:00
Mario Hüttel e8e3d71bbe doxygen: Remove latex output and add optional flags to buildscript 2020-08-02 22:15:33 +02:00
Mario Hüttel 464c247e32 Fix a few bugs and implement flags command further 2020-07-30 20:29:48 +02:00
Mario Hüttel 6c4b698fd7 Add safety flag for debugbuild 2020-07-28 23:29:35 +02:00
Mario Hüttel 6498aaf8b8 Add color to flag monitor command and set oven output to 0 2020-07-28 23:26:28 +02:00
Mario Hüttel b65d94b0e8 Fix ADC measurement to run at 1000 Hz and fix wrong error handling for PT1000 Watchdog. Add function for flags to shell 2020-07-28 22:55:02 +02:00
Mario Hüttel 97fc04399e Fix recursion loop in safety controller 2020-07-28 21:00:37 +02:00
Mario Hüttel da96daa767 Reworked measurement ADC to use safety controller 2020-07-27 22:15:01 +02:00
Mario Hüttel a9e300bf5b Make error structures volatile 2020-07-27 21:32:25 +02:00
Mario Hüttel 4f3016649d First draft of safety controller 2020-07-27 21:29:15 +02:00
Mario Hüttel a04e894518 Further work on safety controller 2020-07-26 21:40:09 +02:00
Mario Hüttel 9136dc196c Further rewrite safety handling 2020-07-09 22:31:42 +02:00
Mario Hüttel 5eb51f08b6 Start safety implementation. Completely dumped old stuff 2020-07-07 20:47:22 +02:00
Mario Hüttel 06a75559f0 Add structure for safety controller config. 2020-07-07 19:26:00 +02:00
Mario Hüttel 248707055e Fix watchdog init code 2020-07-06 21:37:36 +02:00
Mario Hüttel 67a32cdc20 Safety Controller:
* Add watchdog code
* Add file structure for safety controller
* Lay groundstones to move all error flags to the safety controller
* Improve doxygen
2020-07-06 21:12:18 +02:00