1167358c5a
Add .bin.h files to ram code's gitignore
2020-12-14 20:32:41 +01:00
444fded972
Delete derived ram code include file
2020-12-14 20:31:53 +01:00
963b1e106c
Updater: Write functional ram code loader
...
Updater RAM Code
----------------
* Ack running watchdog every 250 ms
* Blink green LED every 250 ms
Firmware
--------
* Add RAM code loader
* Reorganize initialization
* Add update command to shell
2020-12-14 20:29:51 +01:00
0d861b1aed
Safety Controller: Fix return type of function
2020-12-14 20:29:21 +01:00
d353183826
updater: Add script for converting bin file to C array
2020-12-07 22:35:52 +01:00
a3e652ddb8
Start RAM code for updater
2020-12-07 21:39:14 +01:00
c67298118e
Improve GUI
2020-12-07 00:19:42 +01:00
8a8004e187
Add generic function to detzermine reset cuase to rcc manager
2020-12-01 21:24:59 +01:00
b1271cee43
Doxygen
2020-12-01 21:03:05 +01:00
daaf848e0c
Renamed clock-enable manager to rcc manager and improve some header files with doxygen comments
2020-12-01 21:00:23 +01:00
ef8e6231ff
Issue #4 : Implement Constant temperature function in GUI. This is useful to verify the oven parameters
2020-11-30 21:43:38 +01:00
cd35f9e694
Add low pass for Derviative part in PID controller
2020-11-30 21:40:28 +01:00
91d9db6a4e
Make Safety ADC use sequnece feature of ADC and use DMA to write data
2020-11-30 00:01:26 +01:00
898feac168
increase shell tx buffer
2020-11-29 20:00:16 +01:00
0b1d872ed0
Make safety controller use config overrides from backup ram
2020-11-29 19:59:58 +01:00
687c72bde7
Use new gui module in main
2020-11-29 19:04:10 +01:00
b6d4a2e35e
Implement safety memory functions for config overrides
2020-11-29 19:03:42 +01:00
a474111f36
Use error checking function of config parser in settings module
2020-11-29 19:03:17 +01:00
ed4c18f2be
Add error checking function for config parser
2020-11-29 19:02:52 +01:00
f4d6f5a1ae
Add PCB/Hardware version detection
2020-11-29 19:02:30 +01:00
32da2a5fa6
Reflow Controller GUI: Move gui to gui.c file in UI subfolder
2020-11-29 19:01:24 +01:00
ec66814184
Decrease history buffer of shellmatta
2020-11-29 17:19:40 +01:00
37bc397e9a
Add reset-cal shell command and modify cal command to show existing calibration
2020-11-17 00:53:21 +01:00
d176389711
Add limit to scrolling of flag list in LCD gui
2020-11-17 00:31:24 +01:00
8603f84142
Issue #6 : Improve LCD menu and implement function to see safety flags
2020-11-16 20:01:15 +01:00
c02d988350
Issue #21 : Adapt calibration routine to new calibration format
2020-11-15 23:36:52 +01:00
11b84afca0
Issue #21 : Change calibration apply function
2020-11-15 23:10:19 +01:00
f2405e23b4
Add settings load function for PID parameters
2020-11-08 21:35:41 +01:00
2e640fa7fa
Update base 64 library
2020-11-02 23:47:32 +01:00
1a3889b72d
Update base64 lib to newest version. Now supports decoding
2020-11-02 23:44:37 +01:00
a7e376deab
Add safety memory dump to file functionality
2020-11-02 18:21:24 +01:00
bb39c4b6e0
Fix bug in settings parser
2020-11-02 18:20:57 +01:00
7b1ae3bdc6
Improve code in calibration module
2020-11-02 18:20:17 +01:00
e37001e3c4
improve SDIO driver
2020-11-02 18:19:42 +01:00
09ea84beaf
Increase watchdog timeout because some SD card operations need a lot of time
2020-11-02 18:17:50 +01:00
dc9fc2f814
Fix code warnings
2020-11-01 21:24:13 +01:00
32c8e2e937
Add define to move uart on debug header even when compiled in release mode
2020-11-01 21:22:28 +01:00
88360fe307
close config parser after use for reading calibration
2020-11-01 21:03:00 +01:00
57308e18e3
Delete cmsis math library. It is not needed anymore
2020-11-01 21:00:47 +01:00
731cb4fec3
Remove cmsis dsp library from project
2020-11-01 20:59:17 +01:00
8ff276e30d
see last commit
2020-11-01 20:58:32 +01:00
1166477a6c
Calibration routines adapted
...
* Implement custom mean and std functions
* Use standard deviation in calibration measurment instead of peak-peak noise.
2020-11-01 20:55:57 +01:00
7aa0b62012
Implement saftey memory dump feature and increase heap space
2020-11-01 20:43:59 +01:00
10596cdbf0
Add base64 library to Makefile
2020-11-01 18:03:52 +01:00
fc6fb1aee0
Add base 64 library
2020-11-01 18:01:28 +01:00
1eeaf3d892
Use new config parser for calibration
2020-11-01 00:59:46 +01:00
a3778fcb6e
Change double numbers to float in order to prevent unwanted double to float conversion
2020-10-31 01:11:17 +01:00
86f153bf69
Fix code style
2020-10-31 01:10:46 +01:00
3ca5e41602
Implement config read function
2020-10-30 23:12:39 +01:00
dcec366b0a
Implement config_parser_reset_to_start()
2020-10-30 22:24:03 +01:00
14b7bdbf19
Start config parser
2020-10-30 22:21:31 +01:00
af9845cbba
Improve style
2020-09-27 23:23:44 +02:00
034ecaa60f
Fix bug in menu
2020-09-27 23:02:38 +02:00
ae91affc30
issue #5 : Implement safety weight checking in control loop
2020-09-27 22:54:06 +02:00
5fd2db319d
Configure safety weight defaults
2020-09-27 22:22:54 +02:00
eec15df271
Fix code style
2020-09-27 22:13:49 +02:00
84c747c81c
silence compiler warning about unused parameter
2020-09-22 23:47:18 +02:00
b869ed9c45
Improve comments and doxygen headers
2020-09-22 23:45:22 +02:00
42f6d0270d
Issue #6 : Implement safety flag ack in shell command safety-flags
2020-09-21 21:51:00 +02:00
e8f59b6dc6
Implement automatic resotre of error mem corrupt flag
2020-09-21 21:10:26 +02:00
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
004be4ea5c
Move safety weights and persistencies to config file
2020-09-08 21:15:23 +02:00
a838bf3af8
Add new Flag: ERR_FLAG_SAFETY_TAB_CORRUPT
2020-09-08 20:15:40 +02:00
1c1d1c4c97
Issue #18 : Store correct flag number in error memory
2020-09-08 19:23:14 +02:00
e0f61af709
Issue #18 : Protect safety memory heder with CRC
2020-09-08 18:24:10 +02:00
b619fc5600
Restructure panic mode and hardfault calls
2020-09-08 18:23:47 +02:00
2f6590416d
Improve documentation of Stack Checking
2020-09-07 23:52:34 +02:00
af555aba21
Issue #20 : Move stack checker to safety folder
2020-09-07 21:56:04 +02:00
dd0ee47d86
Issue #20 : Add stack checking based on protection area between stack and heap
2020-09-07 21:52:53 +02:00
452abfdd5c
Merge branch 'issue/18-Backup-RAM' into issue/20-implement-better-stack-checking
2020-09-07 21:04:37 +02:00
ba41c0911d
Add necessary sections for stack protection area and implement fill function
2020-09-07 21:03:37 +02:00
cbbd97e1bd
Issue #20 : Implement driver for RNG
2020-09-07 20:47:56 +02:00
20e2a2b84b
Doxygen: Fix bug of IN_SECTION macro and __atribute__
2020-09-06 22:13:51 +02:00
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
192bcf01f6
Merge branch 'issue/18-Backup-RAM' into issue/15-safety-controller-hardening
2020-09-06 19:54:09 +02:00
9880c701b1
Issue #15 : Introduce safety weigths
2020-09-06 19:52:44 +02:00
910037a562
Issue #18 : Write doxygen headers for safety memory
2020-09-06 19:45:45 +02:00
6232e2f330
Issue #18 : Store permanent errors in safety backup RAM
2020-09-06 01:40:10 +02:00
c4fe006efa
Issue #15 : Implement redundancy for error flags
2020-09-05 20:29:21 +02:00
b2b1702670
Issue #15 : add redundant invers error flag
2020-09-05 20:17:35 +02:00
1f8a6347e9
Issue #15 : Move safety controller working pages to CCMRAM
2020-09-05 20:14:08 +02:00
d0cf95db49
Issue #18 : further iomplementation of safety memory
2020-09-05 20:06:13 +02:00
e50602611c
Issue #18 : Documentation of boot status flags
2020-09-05 19:00:01 +02:00
95382d9ab8
Make interrupt default handler trigger panic mode.
2020-09-05 18:23:53 +02:00
e96a710576
Make interrupt default handler trigger panic mode.
2020-09-05 18:23:17 +02:00
2673112a9c
Reflow menu: Stop rendering the menu although nothing has changed. This reduces the current consumption.
2020-09-05 18:04:52 +02:00
b8b8e19206
Reflow menu: Stop rendering the menu although nothing has changed. This reduces the current consumption.
2020-09-05 18:03:05 +02:00
ea26f56545
Issue #18 : Check error memory entries at safety ram init
2020-09-05 17:37:56 +02:00
e85a85d9c3
Issue #18 : ommand to shell in order to test panic mode
2020-09-05 16:56:56 +02:00
3df0631ffc
Issue #18 : Implement writing and reading boot status structure from backup RAM
2020-09-05 16:32:31 +02:00
7434554319
Issue #18 : Fix bugs in safety memory handling
2020-09-05 15:56:52 +02:00
c9a5a2c2ff
Issue #18 : Write init of safety memory
2020-09-05 15:15:46 +02:00
04008a07c0
Issue #18 : Implement CRC calculation module
2020-09-05 12:17:36 +02:00
928dbfb9f3
Issue #18 : Firther improve documentation
2020-09-04 23:51:51 +02:00
0f0afcf359
Issue #18 : Add safety mem corrupt error flag
2020-09-04 23:04:27 +02:00
5d437f3a9f
Fix documentation and add safety RAM module to Makefile
2020-09-04 23:02:23 +02:00
cb3b42aece
Start documentation for safety RAM. Will be implemented afterwards
2020-09-04 22:55:34 +02:00
a12648ff7a
Issue #18 : Backup RAM: Make use of backup regulator optional
2020-09-04 21:33:54 +02:00
d3c4e1bffc
Issue #18 : Implement driver for backup RAM
2020-09-04 21:03:53 +02:00
45c0625864
fixup style issues
2020-08-31 22:58:00 +02:00
03e1ccf97e
Fix style
2020-08-31 22:50:39 +02:00
0fd738f37e
Fix startup code bug in release mode
2020-08-30 19:40:33 +02:00
f32d1afde5
Issue #17 : Add ui-emulate command to shell
2020-08-30 18:44:36 +02:00
0da6925119
Issue #17 : Add override function for deltas of rotary encoder
2020-08-30 18:25:10 +02:00
914abd8562
Issue #17 : Add override function for button
2020-08-30 18:20:58 +02:00
80edd09528
temperature converter: Replace division with multiplication. This makes the code faster
2020-08-29 08:53:23 +02:00
ab4499a284
Fix mrpropewr make target to clean debug and release projects
2020-08-29 08:52:44 +02:00
cc6e922d1b
Move variables to CCM RAM
2020-08-23 21:51:34 +02:00
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
dcd1fa9605
remove executable flag from CCM memory because it is not executable
2020-08-22 13:45:17 +02:00
3cc49fb764
Remove unneeded variable
2020-08-22 13:33:53 +02:00
13ac487ddb
remove unneeded variables
2020-08-22 13:30:59 +02:00
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
95de84fa85
Fix #13 : Add hang command to shell
2020-08-21 00:29:19 +02:00
432d30cc34
Fix #12 : Timing monitors are now correctly displayed in flags command
2020-08-21 00:20:16 +02:00
0395cd19d4
SD card settings folder: Use f_stat to determine if directory is present
2020-08-21 00:06:56 +02:00
04994bff51
Issue #9 : Fix timeout bug in write block command
2020-08-21 00:00:08 +02:00
45564a7789
Fix safety issue #11
2020-08-18 20:47:08 +02:00
fa20304df8
Makefile: Add linker script as dependency for linking step
2020-08-18 20:23:44 +02:00
86ba94a3f3
Makefile: Add linker flag to show memory usage after linking
2020-08-18 20:10:15 +02:00
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
64ef7b4a3c
Issue #9 : Increase SDIO clock speed to 4.2 MHz
2020-08-18 19:30:51 +02:00
277b28d7f5
Make green LED flash instead of orange one, when inserting SD card
2020-08-17 22:26:29 +02:00
bdfaa67070
Fix typo
2020-08-17 22:26:05 +02:00
4e9b28ce15
Improve SDIO handling
2020-08-17 22:10:04 +02:00
543127b187
Fix bugs in settings saving
2020-08-16 22:11:57 +02:00
6c92048de5
Remove emptry line
2020-08-16 20:35:11 +02:00
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
58937b46f6
Improve code
2020-08-16 20:33:17 +02:00
e06c9f7ddc
Remove toml. Write calibration to dat files. Implement first draft for reading function
2020-08-16 19:37:41 +02:00
d04d8ebf9d
Change save fuinction for SD card calibration data
2020-08-16 13:15:35 +02:00
42ca1a01b5
Merge branch 'issue/1-shell-function-save-calibration-data' into dev
2020-08-16 12:53:47 +02:00
68883735ec
Remove global error state from main file
2020-08-16 12:53:05 +02:00
15d255778c
Fix #1 : Implement save function for calibration
2020-08-16 12:52:37 +02:00
d1d2d514bd
Add timing monitor for main loop and add monitors to safety flag command
2020-08-16 12:34:41 +02:00
fa3c980207
shell: Add dummy function save-calibration. Not yet correcly implemented!
2020-08-16 01:24:59 +02:00
3c6200e08c
Settings: Add preliminary functions to store Claibration data on SD Card. Not yet implemented correctly
2020-08-16 01:24:20 +02:00
e7d150e8f5
FatFs: Enable relative paths
2020-08-16 01:23:50 +02:00
c5667c6895
Toml: Add TOML interpreter for config files
2020-08-16 01:22:57 +02:00
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
1ad68a2c43
SDIO Driver: Fix bug created in commit 3705cc09d1
that makes writing to disk impossible
2020-08-16 01:19:56 +02:00
4ab91ace5f
Remove redundant define macro
2020-08-11 23:37:26 +02:00
a68b9176cb
Move ADC_TO_RES macro to header file
2020-08-11 23:21:14 +02:00
cb3c989683
Docu
2020-08-04 00:55:16 +02:00
f6f01b0510
Improve sphinx
2020-08-03 21:13:04 +02:00
e8e3d71bbe
doxygen: Remove latex output and add optional flags to buildscript
2020-08-02 22:15:33 +02:00
464c247e32
Fix a few bugs and implement flags command further
2020-07-30 20:29:48 +02:00
6c4b698fd7
Add safety flag for debugbuild
2020-07-28 23:29:35 +02:00
6498aaf8b8
Add color to flag monitor command and set oven output to 0
2020-07-28 23:26:28 +02:00
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
97fc04399e
Fix recursion loop in safety controller
2020-07-28 21:00:37 +02:00
da96daa767
Reworked measurement ADC to use safety controller
2020-07-27 22:15:01 +02:00
a9e300bf5b
Make error structures volatile
2020-07-27 21:32:25 +02:00
4f3016649d
First draft of safety controller
2020-07-27 21:29:15 +02:00
a04e894518
Further work on safety controller
2020-07-26 21:40:09 +02:00
9136dc196c
Further rewrite safety handling
2020-07-09 22:31:42 +02:00
5eb51f08b6
Start safety implementation. Completely dumped old stuff
2020-07-07 20:47:22 +02:00
06a75559f0
Add structure for safety controller config.
2020-07-07 19:26:00 +02:00
248707055e
Fix watchdog init code
2020-07-06 21:37:36 +02:00
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
8a365ab5e0
Move safety ADC to safety subfolder
2020-07-06 20:13:01 +02:00
7cd05e1582
Update shellmatta
2020-06-25 23:54:36 +02:00
0e97d57883
Improve menu function
2020-06-25 23:52:58 +02:00
cced874460
Add Pullup to uart RX pin
2020-06-21 01:29:50 +02:00
49927a25cf
Add Omega as unit for Ohm in LCD menu
2020-06-16 20:05:32 +02:00
a7c91cee0e
GUI: About menu: Add '[DEBUG]' text if code is build in debug mode
2020-06-15 22:00:47 +02:00
acbde24c2f
Makefile: Add program-debug option for flashing debug elf
2020-06-15 21:57:36 +02:00
47d8df052a
Makefile: Make a separate memory mapfile for each build configuration (release or debug)
2020-06-15 21:48:37 +02:00
3705cc09d1
SDIO driver: Fix minor issues in SDIO driver
2020-06-15 21:31:49 +02:00
ecd8d2537d
Append -release to release output elf
2020-06-15 21:24:27 +02:00
56439a3b13
Makefile: Add differnet targets for debug and release builds
2020-06-15 21:22:05 +02:00
78417e0c8c
Progress in error handling
2020-06-14 23:36:49 +02:00
62a3e06baa
Fixx style problems and design errors in main.c
2020-06-14 23:22:35 +02:00
485b887b54
fix too long lines
2020-06-14 22:56:34 +02:00
fe75b93ec7
Fix logical or operator
2020-06-14 20:26:32 +02:00
ab157bfb5a
Fix empty line
2020-06-14 19:15:02 +02:00
f0bf10d91d
use correct LED for error blinking
2020-06-14 19:13:50 +02:00
cbd28f9a12
Add safety management in PID handler and main loop
2020-06-14 19:10:09 +02:00
a33154b2d0
Move shadow buffer of LCD to CCMRAM
2020-06-14 18:02:45 +02:00
828b47f3be
Fix error in power handling of LCD FSM
2020-06-14 17:52:27 +02:00
7b426c93c9
About GUI menu: Improve rotary handling
2020-06-14 16:26:32 +02:00
20fd7b41e6
Edit about menu: Add new entry for serial number and compile info
2020-06-14 16:19:42 +02:00
f60545f664
make convenience pointer to global structs const
2020-06-14 14:50:27 +02:00
679d4534cb
Add formatted prinbt function for LCD menu and use systick vonversion in uptime shell command
2020-06-14 14:45:58 +02:00
372be53471
make uptime in LCD UI use systick function for converting uptime
2020-06-14 14:16:12 +02:00
0cdc7448e4
Systick: Add function to calculate uptime in days, hours, minutes, and seconds from global tick
2020-06-14 13:35:47 +02:00
43b4fd1e77
Changes for menu
...
* Make Systick a 100us Timer. Millisecond ticks are still untouched.
* LCD now has a 100us resolution tick
* LCD uses 500us delay for waitstate
* Make 'About' menu verbose:
* Add 3 page menu
* 1st page: Generic info
* 2nd page: Version info
* 3rd page: Uptime in seconds
2020-06-14 13:25:47 +02:00
d178910594
Fix last change to make controller WFI in LCD_FMS_NOP state
2020-06-14 01:34:42 +02:00
6f4363e021
Change return value of reflow_menu_handle
2020-06-14 01:31:44 +02:00
0fca4c6c20
LCD Timing changes
2020-06-14 01:04:21 +02:00
7595e6ced8
Fix smaller code mistake in LCD FSM
2020-06-13 23:37:04 +02:00
2547c134f2
Add PID controller to oven driver module
2020-06-13 23:23:59 +02:00
a6dc4f9b46
Add about command to menu and restructure code. Delete preliminary code from mainloop. Better code will follow
2020-06-13 22:47:45 +02:00
e627cb67a5
fix smaller bugs in Menu code and implement first test of main menu with one functional sunbmenu for the safety parameters
2020-06-12 01:35:37 +02:00
d6e489bb61
Add defines for special LCD characters
2020-06-11 23:58:51 +02:00
3b2d8c14c3
Change division to multiplication in floating point operation
2020-06-09 23:01:04 +02:00
949d16cd03
Add display buffer to ccm ram
2020-06-09 22:53:13 +02:00
917497e7e4
implement display update function for lcd menu
2020-06-09 22:50:20 +02:00
7db5f02067
implemnt scrollable menu field. Not yet tested
2020-06-09 22:43:00 +02:00
70730fd0f0
Add qtproejct target to Makefile which generates a usable qtcreator project folder
2020-06-09 21:50:37 +02:00