From bc7ff1e623e3625b2a6f13bc9ac0dc96d1014409 Mon Sep 17 00:00:00 2001 From: Oskar Weigl Date: Mon, 2 Apr 2018 22:08:32 -0700 Subject: [PATCH 1/2] Update README.md --- Firmware/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Firmware/README.md b/Firmware/README.md index ad9cbf2c..214afe68 100644 --- a/Firmware/README.md +++ b/Firmware/README.md @@ -118,7 +118,7 @@ the device during upgrade. Otherwise, if something goes wrong, you need an exter programmer to recover the device. This will be fixed in the future. ### Flashing the firmware (external Programmer) -* **Make sure you have [configured the parameters first](#configuring-parameters)** +* **Make sure you have [configured the build first](#configuring-the-build)** * Connect `GND`, `SWD`, and `SWC` on connector J2 to the programmer. Note: Always plug in `GND` first! * You need to power the board by only **ONE** of the following: VCC(3.3v), 5V, or the main power connection (the DC bus). The USB port (J1) does not power the board. * Run `make flash` in the `Firmware` directory. From 9430851791f2cc91941d80f5ba1f4488adfa13ed Mon Sep 17 00:00:00 2001 From: Samuel Sadok Date: Fri, 6 Apr 2018 21:19:24 -0700 Subject: [PATCH 2/2] set usb task pump priority to osPriorityAboveNormal osPriorityNormal is the same priority as the communication task. If the USB pump task runs on the same priority, it sometimes fails to respond to the host in time, causing spurious halt conditions. --- Firmware/Board/v3/Src/freertos.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Firmware/Board/v3/Src/freertos.c b/Firmware/Board/v3/Src/freertos.c index 9439fd97..f370b539 100644 --- a/Firmware/Board/v3/Src/freertos.c +++ b/Firmware/Board/v3/Src/freertos.c @@ -166,7 +166,7 @@ void StartDefaultTask(void const * argument) thread_cmd_parse = osThreadCreate(osThread(task_cmd_parse), NULL); // Start USB interrupt handler thread - osThreadDef(task_usb_pump, usb_update_thread, osPriorityNormal, 0, 512); + osThreadDef(task_usb_pump, usb_update_thread, osPriorityAboveNormal, 0, 512); thread_usb_pump = osThreadCreate(osThread(task_usb_pump), NULL); //If we get to here, then the default task is done.