aboutsummaryrefslogtreecommitdiffstats
path: root/Software
diff options
context:
space:
mode:
authorShlomo Hecht <shlomo@twine-s.com>2020-02-06 13:51:20 +0200
committerShlomo Hecht <shlomo@twine-s.com>2020-02-06 13:51:20 +0200
commit5bf44be1121abf9dd36c948c19ca0650f5571c3e (patch)
treef43950bfe7f660efb7fc2dd6afa904037af46e33 /Software
parentb3589be05166fdd15692a9a835262d6e04e56bd2 (diff)
downloadTango-5bf44be1121abf9dd36c948c19ca0650f5571c3e.tar.gz
Tango-5bf44be1121abf9dd36c948c19ca0650f5571c3e.zip
fix job bug and I2C_Task for LP machines
Diffstat (limited to 'Software')
-rw-r--r--Software/Embedded_SW/Embedded/Common/SWUpdate/FirmwareUpgrade.c33
-rw-r--r--Software/Embedded_SW/Embedded/Drivers/I2C_Communication/I2C_Task.c2
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Control/control.c4
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Diagnostics/DiagnosticsHoming.c2
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Thread/Thread_init.c4
-rw-r--r--Software/Embedded_SW/Embedded/StateMachines/Printing/JobSTM.c5
6 files changed, 23 insertions, 27 deletions
diff --git a/Software/Embedded_SW/Embedded/Common/SWUpdate/FirmwareUpgrade.c b/Software/Embedded_SW/Embedded/Common/SWUpdate/FirmwareUpgrade.c
index 79bbb4df8..bf1151d6e 100644
--- a/Software/Embedded_SW/Embedded/Common/SWUpdate/FirmwareUpgrade.c
+++ b/Software/Embedded_SW/Embedded/Common/SWUpdate/FirmwareUpgrade.c
@@ -53,6 +53,7 @@ uint32_t ActivateVersionCallBackFunction(uint32_t IfIndex, uint32_t BusyFlag)
{
ActivateVersionResponse response = ACTIVATE_VERSION_RESPONSE__INIT;
MessageContainer responseContainer;
+ bool last = true;
usnprintf(activateString, 1000, "file %d of %d bytes %d of %d",CurrentRunningFile,NumberOfFiles,vme_index,CurrentFileSize);
@@ -60,16 +61,9 @@ uint32_t ActivateVersionCallBackFunction(uint32_t IfIndex, uint32_t BusyFlag)
if (CurrentRunningFile<NumberOfFiles)
{
- responseContainer = createContainer(MESSAGE_TYPE__ActivateVersionResponse, ActivateToken, false, &response, &activate_version_response__pack, &activate_version_response__get_packed_size);
- responseContainer.has_continuous = true;
- responseContainer.continuous = true;
- uint8_t* container_buffer = my_malloc(message_container__get_packed_size(&responseContainer));
- size_t container_size = message_container__pack(&responseContainer, container_buffer);
- my_free(responseContainer.data.data);
- SendChars(container_buffer, container_size);
- return OK;
+ last = false;
}
- responseContainer = createContainer(MESSAGE_TYPE__ActivateVersionResponse, ActivateToken, true, &response, &activate_version_response__pack, &activate_version_response__get_packed_size);
+ responseContainer = createContainer(MESSAGE_TYPE__ActivateVersionResponse, ActivateToken, last, &response, &activate_version_response__pack, &activate_version_response__get_packed_size);
responseContainer.has_continuous = true;
responseContainer.continuous = true;
uint8_t* container_buffer = my_malloc(message_container__get_packed_size(&responseContainer));
@@ -77,16 +71,19 @@ uint32_t ActivateVersionCallBackFunction(uint32_t IfIndex, uint32_t BusyFlag)
my_free(responseContainer.data.data);
SendChars(container_buffer, container_size);
- if (SafeRemoveControlCallback(ActivateVersionControlId, ActivateVersionCallBackFunction )==OK)
- ActivateVersionControlId = 0xFF;
- else
- LOG_ERROR(255,"ActivateVersionCallBackFunction");
-
- if (Reboot == true)
+ if (last == true)
{
- LOG_ERROR(255,"Update successful, Rebooting in 5 seconds");
- Task_sleep (eOneSecond*5);
- Power_Reset();
+ if (SafeRemoveControlCallback(ActivateVersionControlId, ActivateVersionCallBackFunction )==OK)
+ ActivateVersionControlId = 0xFF;
+ else
+ LOG_ERROR(255,"ActivateVersionCallBackFunction");
+
+ if (Reboot == true)
+ {
+ LOG_ERROR(255,"Update successful, Rebooting in 5 seconds");
+ Task_sleep (eOneSecond*5);
+ Power_Reset();
+ }
}
return OK;
diff --git a/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/I2C_Task.c b/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/I2C_Task.c
index 7bfd8612d..14850026e 100644
--- a/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/I2C_Task.c
+++ b/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/I2C_Task.c
@@ -396,7 +396,7 @@ void I2C_ReadingTask(UArg arg0, UArg arg1)
}
else
{
- if (Head_Type == HEAD_TYPE_UNKNOWN)
+ if (Head_Type < HEAD_TYPE_SYLKO)
continue;
Select_Main_Head_Mux_Channel();
}
diff --git a/Software/Embedded_SW/Embedded/Modules/Control/control.c b/Software/Embedded_SW/Embedded/Modules/Control/control.c
index 02a216ba6..bb3149b43 100644
--- a/Software/Embedded_SW/Embedded/Modules/Control/control.c
+++ b/Software/Embedded_SW/Embedded/Modules/Control/control.c
@@ -66,7 +66,7 @@
//#define CONTROL_DEBUG
-#define DURATION_LIMIT 5
+#define DURATION_LIMIT 6
/******************** Definitions ********************************************/
#define MAX_TANGO_CONTROL_DEVICES 100
/******************** STRUCTURES AND ENUMs ********************************************/
@@ -632,7 +632,7 @@ uint32_t ControlLowLoop(uint32_t tick)
dev = ControlLowDevice_i;
}
}
- Report(ControlArray[dev].Name,__FILE__,__LINE__,dev,RpWarning,max,0);
+ //Report(ControlArray[dev].Name,__FILE__,__LINE__,dev,RpWarning,max,0);
}
#endif
//ROM_IntMasterEnable();
diff --git a/Software/Embedded_SW/Embedded/Modules/Diagnostics/DiagnosticsHoming.c b/Software/Embedded_SW/Embedded/Modules/Diagnostics/DiagnosticsHoming.c
index 674135180..be8e84f3e 100644
--- a/Software/Embedded_SW/Embedded/Modules/Diagnostics/DiagnosticsHoming.c
+++ b/Software/Embedded_SW/Embedded/Modules/Diagnostics/DiagnosticsHoming.c
@@ -216,7 +216,7 @@ uint32_t DispenserHomingRequestFunc(MessageContainer* requestContainer)
responseContainer = createContainer(MESSAGE_TYPE__DispenserHomingResponse, requestContainer->token, false, &response, &dispenser_homing_response__pack, &dispenser_homing_response__get_packed_size);
responseContainer.has_continuous = true;
-responseContainer.continuous = true;
+ responseContainer.continuous = true;
uint8_t* container_buffer = my_malloc(message_container__get_packed_size(&responseContainer));
size_t container_size = message_container__pack(&responseContainer, container_buffer);
my_free(responseContainer.data.data);
diff --git a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_init.c b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_init.c
index fb3b78752..e53adabb7 100644
--- a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_init.c
+++ b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_init.c
@@ -73,14 +73,14 @@ uint32_t MotorsConfigMessage(HardwareConfiguration * HWrequest)
MotorsCfg[Motor_i].pulseperround = request->pulseperround;
MotorsCfg[Motor_i].pulleyradius = request->pulleyradius;
MotorsCfg[Motor_i].configword = request->configword;
- if(MotorDriverResponse[Motor_i].DriverType == CombinrdMotDriver)
+ /*if(MotorDriverResponse[Motor_i].DriverType == CombinrdMotDriver)
{
MotorsCfg[Motor_i].directionthreadwize = request->directionthreadwize ^ 1;//PowerSTEP01
}
else
{
MotorsCfg[Motor_i].directionthreadwize = request->directionthreadwize;//L6470 + L6472
- }
+ }*/
MotorsCfg[Motor_i].kvalhold = request->kvalhold;
MotorsCfg[Motor_i].kvalrun = request->kvalrun;
MotorsCfg[Motor_i].kvalacc = request->kvalacc;
diff --git a/Software/Embedded_SW/Embedded/StateMachines/Printing/JobSTM.c b/Software/Embedded_SW/Embedded/StateMachines/Printing/JobSTM.c
index d36de9bd7..a62d1b4b7 100644
--- a/Software/Embedded_SW/Embedded/StateMachines/Printing/JobSTM.c
+++ b/Software/Embedded_SW/Embedded/StateMachines/Printing/JobSTM.c
@@ -926,6 +926,8 @@ void SendJobProgress(double ProcessedLength, int SegmentId, bool done, char *Mes
//responseContainer = createContainer(MESSAGE_TYPE__JobResponse, JobToken, done, &JobResponseMsg, &job_response__pack, &job_response__get_packed_size);
responseContainer = createAllocatedContainer(MESSAGE_TYPE__JobResponse, JobToken, done, &JobResponseMsg, &job_response__pack, &job_response__get_packed_size,&JobStatusBuffer);
}
+ responseContainer.has_continuous = true;
+ responseContainer.continuous = true;
container_buffer = my_malloc(message_container__get_packed_size(&responseContainer));
if (done == true)
@@ -942,9 +944,6 @@ void SendJobProgress(double ProcessedLength, int SegmentId, bool done, char *Mes
responseContainer.error = ERROR_CODE__CONTINUOUS_RESPONSE_ABORTED;
}
}
- responseContainer.has_continuous = true;
- responseContainer.continuous = true;
-
if (container_buffer)
{
size_t container_size = message_container__pack(&responseContainer, container_buffer);