af555aba21
Issue #20 : Move stack checker to safety folder
2020-09-07 21:56:04 +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
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
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
ea26f56545
Issue #18 : Check error memory entries at safety ram init
2020-09-05 17:37: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
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
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
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
bdfaa67070
Fix typo
2020-08-17 22:26:05 +02:00
4e9b28ce15
Improve SDIO handling
2020-08-17 22:10:04 +02:00
e06c9f7ddc
Remove toml. Write calibration to dat files. Implement first draft for reading function
2020-08-16 19:37:41 +02:00
42ca1a01b5
Merge branch 'issue/1-shell-function-save-calibration-data' into dev
2020-08-16 12:53:47 +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
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
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
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
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
da96daa767
Reworked measurement ADC to use safety controller
2020-07-27 22:15:01 +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
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
49927a25cf
Add Omega as unit for Ohm in LCD menu
2020-06-16 20:05:32 +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
cbd28f9a12
Add safety management in PID handler and main loop
2020-06-14 19:10:09 +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
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
6f4363e021
Change return value of reflow_menu_handle
2020-06-14 01:31:44 +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
7db5f02067
implemnt scrollable menu field. Not yet tested
2020-06-09 22:43:00 +02:00
c63986e271
Add further testing code for rotary encoder and lcd
2020-06-09 19:03:33 +02:00
9615fdb39d
Further menu implementations
2020-06-04 21:53:00 +02:00
fc2372f754
Fix possible error in menu implementation
2020-06-04 21:47:31 +02:00
25bb341fa4
Implement preliminary menu functions
2020-06-04 21:20:59 +02:00
76f5a4e9be
Fix error in safety ADC
2020-06-01 22:59:27 +02:00
f493b823b3
Add lcd-menu module as specific implementation module for the menu on the LCD
2020-06-01 21:45:36 +02:00
d508402aa8
Add basic definitions for menu entries
2020-06-01 21:42:31 +02:00
6477950eea
Merge branch 'dev' into ui
2020-06-01 20:53:43 +02:00
5819a0736c
Add defines for safety adc conversions
2020-06-01 20:53:28 +02:00
f956968cb4
Make reading the global ms tick atomic in order to prevent glitches
2020-06-01 20:45:27 +02:00
e659c6d097
make PID controller mathemtaically correct
2020-05-25 01:56:54 +02:00
355e81ba44
Add multitone support for loudspeaker
2020-05-24 23:35:17 +02:00
c18acba48b
Merge branch 'dev' into ui
2020-05-16 21:08:24 +02:00
e97092042b
Add preliminary safety ADC which measures the Controller temperature and checks the reference voltage against the STM's internal reference voltage
2020-05-16 21:00:55 +02:00
dc8beefb63
Move PT1000 Measurement from ADC1 to ADC3 in order to make ADC1 free for Safety ADC implementation
2020-05-16 20:59:51 +02:00
6c013d5aa3
Merge branch 'dev' into ui
2020-05-11 21:59:25 +02:00
2614cea431
Make claibration routine non blocking
2020-05-11 21:59:08 +02:00
b9857745b1
Fix parentheses in macros
2020-05-11 21:52:11 +02:00
0b83125ab5
Merge branch 'dev' into ui
2020-05-10 23:13:47 +02:00
8d6c81441d
Add oven PWM controller
2020-05-10 23:13:03 +02:00
5fcb5305f8
Implement dummy for calibration save function
2020-05-09 20:51:30 +02:00
8a0572d698
Move main loop implementation torwards target
2020-05-05 18:55:55 +02:00
2187c1a712
Write a few doxygen headers
2020-05-05 18:19:49 +02:00
df82f14206
Make LCD code working. Add FSM for LCD in order to write it in mainloop
2020-05-02 19:10:20 +02:00
e237776810
Fix parenthesis in macros
2020-05-02 19:09:17 +02:00
88062dc8e4
Add systick function that checks for passed ticks with correct wrap around
2020-05-02 19:06:42 +02:00
3834bd404c
Fix button module and adjust long keypress time to a sane value
2020-04-27 20:18:12 +02:00
eb3b0eb459
Merge branch 'dev' into ui
2020-04-27 19:28:32 +02:00
4df68880f0
Add correct handling of sd card, add reset command, add ls command
2020-04-26 21:23:25 +02:00
6e07a363f4
Add settings module
2020-04-26 20:22:00 +02:00
2d3b61550b
Fix ADC Watchdog handling
2020-04-26 19:53:06 +02:00
5ae31a1705
Increase ADC_PT1000_WATCHDOG_SAMPLE_COUNT to 50
2020-04-26 19:20:45 +02:00
ffe195d7b2
ADC Measurment: Introduce ADC_PT1000_WATCHDOG_SAMPLE_COUNT in order to filter out false Watchdog errors produces by EMI problems"
2020-04-26 18:09:39 +02:00
b9a38549dc
Add stack_check_collision() function
2020-04-23 00:09:44 +02:00
8df0a6c774
Fix license header
2020-04-20 21:30:00 +02:00
7fca0fc31d
Merge branch 'dev' into ui
2020-04-20 21:17:46 +02:00
d0fa0cf39c
Fix typo in comment
2020-04-20 21:17:24 +02:00
c419ca7bcb
Add PID controller and oven driver module
2020-04-20 21:16:39 +02:00
9311d0b515
Write button code
2020-02-25 21:01:34 +01:00
0bc341c0aa
Merge branch 'dev' into ui
2020-02-25 20:24:12 +01:00
a338831d69
Add FatFS hello world. Will be removed but shows, that device is functional
2020-02-25 20:05:48 +01:00
4487f854cd
Merge branch 'dev' into ui
2020-02-25 19:49:14 +01:00
a39fe09de4
Remove files for onewire sensor. Will add them when necessary.
2020-02-25 19:48:14 +01:00
0ddaef01c8
Start onewire interface. But probably won't finish it
2020-02-25 19:34:50 +01:00
c923fb3e12
Add baudrate change function to uart driver
2020-02-24 22:09:58 +01:00
49835d9213
Merge branch 'dev' into ui
2020-02-24 20:03:57 +01:00
1ef7713351
Start implementation of onewire temperature sensor interface
2020-02-24 20:02:45 +01:00
26b8ad852e
Add static module for onewire temperature sensors
2020-02-24 19:21:29 +01:00
f09877921a
start onewire interface
2020-02-24 19:16:46 +01:00
5012b726cd
Make Uart driver universal
2020-02-24 18:50:09 +01:00
4bc85d474f
c
2020-02-24 18:48:26 +01:00
fcbd1ae05e
Init Button. Interrupt still missing
2020-02-23 21:48:52 +01:00
6700b0ea81
Add pupdr macros
2020-02-23 21:48:30 +01:00
6965882435
Add temporary LCD code
2020-02-23 21:22:38 +01:00
c35c80ce24
Add files for user interface via rotaryencoder/button and LCD
2020-02-23 21:06:42 +01:00
30aa1149a3
Merge branch 'ui' into dev
2020-02-21 23:08:38 +01:00
68fc473372
Add stack checking functions
2020-02-21 23:01:04 +01:00
b5d4bf5528
Add stack checker module andf fix all license headers
2020-02-21 21:22:01 +01:00
532262f670
Fix rotary encoder relative change function
2020-02-16 18:17:19 +01:00
f8076920fe
Start doxygen documentation
2020-02-16 17:35:41 +01:00
a35f66f2cd
Add code for rotary encoder
2020-02-16 16:38:31 +01:00
6fa071e1d1
Add rotary encoder module
2020-02-16 14:25:49 +01:00
7ade829a70
Make ring buffers volatile
2020-02-16 11:42:18 +01:00
c3be39b4e5
Add license header to all files
2020-02-15 22:09:55 +01:00
7df97831be
Add conversion function for resistance to temperature conversion and add it to thept command of the shell
2020-02-15 20:31:38 +01:00
b13b3b4377
Add script for generating PT1000 lookup dat and generate first header file
2020-02-15 17:54:45 +01:00
c568b95cf2
Add calibration routine from shell
2020-02-15 17:54:13 +01:00
5a00950589
Add deactivated PT1000 measurement as error flag, startcode for calibration routine
2020-02-15 01:04:40 +01:00
723afd9f56
Fix arm math header
2020-02-15 01:03:19 +01:00
0da3ebed6f
Add unique ID as serial number to version output
2020-02-12 22:24:26 +01:00
26f8e7ae99
Document DMA ring buffer
2020-02-12 21:49:28 +01:00
bb898adfac
Move include files out of uart folder
2020-02-12 21:06:52 +01:00
f04a5c7930
Restructure include hierarchy
2020-02-12 21:00:35 +01:00
673e651910
Add ring buffer for uart TX
2020-02-11 22:49:47 +01:00
69c00ff3d3
* Improve uart dma ring buffer. Sending dma still missing
...
* Add digio module for controlling LEDs, Loudspeaker, and the Digital IOs
* General code improvements
2020-02-10 22:40:37 +01:00
8bbc2e60f8
Update Firmware with features:
...
* Shellmatta implemented using UART
* Version string implemented
* Increased heap size
* Add shellmatta printf support
2020-02-09 19:13:37 +01:00
3ac252db69
Add DMA ring buffer file for UART, Improve calculation of PT1000 resistance
2020-02-05 23:09:23 +01:00
1e678c3ce8
Fix bug in clock manager and remove DMA sampling from ADC code. Will be rewritten in a different way
2020-02-03 19:40:59 +01:00
5f9bc29701
Add untested version of clock enable manager
2020-02-03 19:21:50 +01:00
850d84140e
ADC PT1000 Measurement progress
2020-02-02 20:24:44 +01:00
02a673546e
Start implementation of PT1000 ADC measurement
2020-02-02 01:49:37 +01:00
f9eb3c676b
delete duplicate arm_math.h and fix doxygen docu for adc_meas
2020-02-02 00:46:12 +01:00
e091ccf19c
start firmware: Function definitions for ADC
2020-02-02 00:01:08 +01:00