aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Embedded_SW/Embedded/Modules
diff options
context:
space:
mode:
authorShlomo Hecht <shlomo@twine-s.com>2019-04-14 14:35:03 +0300
committerShlomo Hecht <shlomo@twine-s.com>2019-04-14 14:35:03 +0300
commit26478fa65170a64c9de9604ffec1ca005c842348 (patch)
treecd68719f28e60b70defb8e93c5e5054cbe3091b2 /Software/Embedded_SW/Embedded/Modules
parente8c5d02db6b9a92b1ff378c1606b6cef6ce69141 (diff)
downloadTango-26478fa65170a64c9de9604ffec1ca005c842348.tar.gz
Tango-26478fa65170a64c9de9604ffec1ca005c842348.zip
Version 1.3.8.49 dispenser data request, added config params (support pending). improvements in heating control, automatic refill at the end of job
Diffstat (limited to 'Software/Embedded_SW/Embedded/Modules')
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c2
-rw-r--r--Software/Embedded_SW/Embedded/Modules/IDS/IDS_dispenser.c20
-rw-r--r--Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c4
3 files changed, 23 insertions, 3 deletions
diff --git a/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c b/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c
index b373f0670..c177b9b06 100644
--- a/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c
+++ b/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c
@@ -547,7 +547,7 @@ uint32_t PrepareHeater(int HeaterId, uint32_t SetTemperatue)
HeaterPIDConfig[HeaterId].m_preError = 0;
HeaterPIDConfig[HeaterId].m_SetParam = SetTemperatue*100;//need to update SetParams on presegment stage
- int band = 6;
+ int band = 8;
/*if (HeaterControl[HeaterId].outputproportionalband)
{
band = HeaterControl[HeaterId].outputproportionalband;
diff --git a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_dispenser.c b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_dispenser.c
index 868ddca9c..13142ad5f 100644
--- a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_dispenser.c
+++ b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_dispenser.c
@@ -13,6 +13,7 @@
#include "drivers/valves/valve.h"
#include "PMR/EmbeddedParameters/DispenserRunningData.pb-c.h"
#include "PMR/EmbeddedParameters/DispenserData.pb-c.h"
+#include "PMR/EmbeddedParameters/DispenserDataResponse.pb-c.h"
#include "Common/SWUpdate/FileSystem.h"
#include "drivers/Flash_Memory/fatfs/ff.h"
@@ -323,4 +324,23 @@ void IDS_Dispenser_MovingDirection (char DispenserId, bool direction)
}
//Report("IDS_Dispenser_MovingDirection",__FILE__,__LINE__,(int)DispenserId,RpWarning,(int)direction,0);
}
+void DispenserDataRequestFunc(MessageContainer* requestContainer)
+{
+ MessageContainer responseContainer;
+
+ //DisconnectRequest* request = disconnect_request__unpack(NULL, requestContainer->data.len, requestContainer->data.data);
+ DispenserDataResponse response = DISPENSER_DATA_RESPONSE__INIT;
+
+
+ response.n_dispenserinfo = MAX_SYSTEM_DISPENSERS;
+ response.dispenserinfo = dispenserdata;
+ responseContainer = createContainer(MESSAGE_TYPE__DispenserDataResponse, requestContainer->token, true, &response, &dispenser_data_response__pack, &dispenser_data_response__get_packed_size);
+
+ //-------------------------------------------------------------------------------------------
+ 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((char*)container_buffer, container_size);
+
+}
diff --git a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c
index 729b2bfa0..e2ebcfcd9 100644
--- a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c
+++ b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c
@@ -502,9 +502,9 @@ c. Go to step 2.a x Segment.BrushStopsCount.
//IDS_MapDispenserUsedinJob(JobDetails);
for (i = 0; i < MAX_SYSTEM_DISPENSERS; i++)
{
+ IDS_StopHomeDispenser(i);
if (DispenserUsedInJob[i] == true) //we actually should check for all dispensers
{
- //IDS_StopHomeDispenser(i);
DispenserReady[i] = false;
IDS_Dispenser_Build_Pressure(i, IDS_PrepareReady);
REPORT_MSG(i,"Dispenser prepare called");
@@ -1017,7 +1017,7 @@ uint32_t IDSSegmentState(void *SegmentDetails, int SegmentId)
//TimerMotors_t HW_Motor_Id = DispenserIdToMotorId[deviceID];
//REPORT_MSG(deviceID,"Dispenser End called");
//MotorStop(HW_Motor_Id,Hard_Hiz);
- //IDS_HomeDispenser (deviceID, 800 , NULL);
+ IDS_HomeDispenser (deviceID, 800 , NULL);
return OK;
}