diff options
| author | Avi Levkovich <avi@twine-s.com> | 2020-10-15 17:03:53 +0300 |
|---|---|---|
| committer | Avi Levkovich <avi@twine-s.com> | 2020-10-15 17:03:53 +0300 |
| commit | fd4f2d63b097dc9e189c9d30682bd6d5cc584d48 (patch) | |
| tree | 8b911df6ec6f7c29ac85aa1dd8e331ed86f1e6bf /Software/Embedded_SW | |
| parent | 6a3361f3a9e08b63b39589add64f5802932022f3 (diff) | |
| parent | 1b2dfd51ae086f40bba2934e550d9d4b8cca9cce (diff) | |
| download | Tango-fd4f2d63b097dc9e189c9d30682bd6d5cc584d48.tar.gz Tango-fd4f2d63b097dc9e189c9d30682bd6d5cc584d48.zip | |
Merge branch 'master' of https://twinetfs.visualstudio.com/Tango/_git/Tango
Diffstat (limited to 'Software/Embedded_SW')
72 files changed, 2122 insertions, 1089 deletions
diff --git a/Software/Embedded_SW/Embedded/.cproject b/Software/Embedded_SW/Embedded/.cproject index 88f4e5215..ecfc74bc3 100644 --- a/Software/Embedded_SW/Embedded/.cproject +++ b/Software/Embedded_SW/Embedded/.cproject @@ -288,7 +288,7 @@ </extensions> </storageModule> <storageModule moduleId="cdtBuildSystem" version="4.0.0"> - <configuration artifactExtension="out" artifactName="${ProjName}" buildProperties="" cleanCommand="${CG_CLEAN_CMD}" description="builds also the PMR" errorParsers="org.eclipse.rtsc.xdctools.parsers.ErrorParser;com.ti.ccstudio.errorparser.CoffErrorParser;com.ti.ccstudio.errorparser.LinkErrorParser;com.ti.ccstudio.errorparser.AsmErrorParser;org.eclipse.cdt.core.GmakeErrorParser" id="com.ti.ccstudio.buildDefinitions.TMS470.Debug.87225697.838615887" name="debug_w_pmr" parent="com.ti.ccstudio.buildDefinitions.TMS470.Debug" postbuildStep=""${CCS_INSTALL_ROOT}/utils/tiobj2bin/tiobj2bin" "${BuildArtifactFileName}" "${BuildArtifactFileBaseName}.bin" "${CG_TOOL_ROOT}/bin/armofd" "${CG_TOOL_ROOT}/bin/armhex" "${CCS_INSTALL_ROOT}/utils/tiobj2bin/mkhex4bin";" prebuildStep=""../../../Visual_Studio/Build/utilities/Debug/proto-tc.exe" -m -i ../../../PMR/Messages -o ../Communication/PMR -l C -c"Common,Connection,Diagnostics,Hardware,Printing,Debugging,Stubs,IO,FirmwareUpgrade,EmbeddedParameters,MachineStatus,Power,ThreadLoading";"> + <configuration artifactExtension="out" artifactName="${ProjName}" buildProperties="" cleanCommand="${CG_CLEAN_CMD}" description="builds also the PMR" errorParsers="org.eclipse.rtsc.xdctools.parsers.ErrorParser;com.ti.ccstudio.errorparser.CoffErrorParser;com.ti.ccstudio.errorparser.LinkErrorParser;com.ti.ccstudio.errorparser.AsmErrorParser;org.eclipse.cdt.core.GmakeErrorParser" id="com.ti.ccstudio.buildDefinitions.TMS470.Debug.87225697.838615887" name="debug_w_pmr" parent="com.ti.ccstudio.buildDefinitions.TMS470.Debug" postbuildStep=""${CCS_INSTALL_ROOT}/utils/tiobj2bin/tiobj2bin" "${BuildArtifactFileName}" "${BuildArtifactFileBaseName}.bin" "${CG_TOOL_ROOT}/bin/armofd" "${CG_TOOL_ROOT}/bin/armhex" "${CCS_INSTALL_ROOT}/utils/tiobj2bin/mkhex4bin";" prebuildStep=""../../../Visual_Studio/Build/utilities/Debug/proto-tc.exe" -m -i ../../../PMR/Messages -o ../Communication/PMR -l C -c"Common,Connection,Diagnostics,Hardware,Printing,Debugging,Stubs,IO,FirmwareUpgrade,EmbeddedParameters,MachineStatus,Power,ThreadLoading,IFS";"> <folderInfo id="com.ti.ccstudio.buildDefinitions.TMS470.Debug.87225697.838615887." name="/" resourcePath=""> <toolChain id="com.ti.ccstudio.buildDefinitions.TMS470_16.9.exe.DebugToolchain.374121404" name="TI Build Tools" superClass="com.ti.ccstudio.buildDefinitions.TMS470_16.9.exe.DebugToolchain" targetTool="com.ti.ccstudio.buildDefinitions.TMS470_16.9.exe.linkerDebug.2015775392"> <option id="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS.1715586318" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS" valueType="stringList"> diff --git a/Software/Embedded_SW/Embedded/Common/Utilities/RFIDTagHandling.c b/Software/Embedded_SW/Embedded/Common/Utilities/RFIDTagHandling.c index f6bc50a7e..7bc1c2e54 100644 --- a/Software/Embedded_SW/Embedded/Common/Utilities/RFIDTagHandling.c +++ b/Software/Embedded_SW/Embedded/Common/Utilities/RFIDTagHandling.c @@ -18,6 +18,24 @@ #include "CartridgeTagContent.pb-c.h" #include "Cartridge.pb-c.h" +uint32_t LoadCartridgeData(PANEL_BUTTON_OR_CRAT_ID Cart,void *CartridgePtr) +{ + if (CartridgePtr == NULL) return ERROR; + if (Cart>CART_3) return ERROR; + Cartridge *Cartridge = CartridgePtr; + /* + ProtobufCMessage base; + protobuf_c_boolean has_slot; + CartridgeSlot slot; + CartridgeTagContent *tag; + protobuf_c_boolean has_index; + int32_t index; + * */ + Cartridge->has_slot = true; + Cartridge->slot = Cart-1; + //Cartridge->tag = NFCTag_Tag2PPC(NFC_TagRead[Cart-1].Struct); + return OK; +} /* typedef struct { @@ -152,56 +170,56 @@ CartridgeTagContent * NFCTag_Tag2PPC(NFCTag_t *Tag) cartridge_tag_content__init(PpcTag); - strncpy(PpcTag->taguniqueid , Tag->TagUniqueID,sizeof(Tag->TagUniqueID)); - strncpy(PpcTag->cartsn , Tag->CartSN,sizeof(Tag->CartSN)); - strncpy(PpcTag->workorder , Tag->WorkOrder,sizeof(Tag->WorkOrder)); - strncpy(PpcTag->colorname , Tag->ColorName,sizeof(Tag->ColorName)); - strncpy(PpcTag->inkbatchno , Tag->InkBatchNo,sizeof(Tag->InkBatchNo)); - strncpy(PpcTag->inkmfgdate , Tag->InkMFGDate,sizeof(Tag->InkMFGDate)); - strncpy(PpcTag->inkeoldate , Tag->InkEOLDate,sizeof(Tag->InkEOLDate)); + strncpy(PpcTag->taguniqueid , Tag->tagId,sizeof(Tag->tagId)); + strncpy(PpcTag->cartsn , Tag->Serial,sizeof(Tag->Serial)); + strncpy(PpcTag->workorder , Tag->workOrder,sizeof(Tag->workOrder)); + strncpy(PpcTag->colorname , Tag->colorName,sizeof(Tag->colorName)); + strncpy(PpcTag->inkbatchno , Tag->inkBatch,sizeof(Tag->inkBatch)); + strncpy(PpcTag->inkmfgdate , Tag->inkMfgDate,sizeof(Tag->inkMfgDate)); + strncpy(PpcTag->inkeoldate , Tag->inkEolDate,sizeof(Tag->inkEolDate)); strncpy(PpcTag->cartfilldate , Tag->CartFillDate,sizeof(Tag->CartFillDate)); strncpy(PpcTag->wastefilldate , Tag->WasteFillDate,sizeof(Tag->WasteFillDate)); - strncpy(PpcTag->machineidinl , Tag->MachineIdINL,sizeof(Tag->MachineIdINL)); - strncpy(PpcTag->machineidwst , Tag->MachineIdWST,sizeof(Tag->MachineIdWST)); - strncpy(PpcTag->spare , Tag->Spare,sizeof(Tag->Spare)); + strncpy(PpcTag->machineidinl , Tag->MachineIdInl,sizeof(Tag->MachineIdInl)); + strncpy(PpcTag->machineidwst , Tag->MachineIdWst,sizeof(Tag->MachineIdWst)); + strncpy(PpcTag->spare , Tag->reserved,sizeof(Tag->reserved)); strncpy(PpcTag->hashvalue , Tag->HashValue,sizeof(Tag->HashValue)); PpcTag->has_inkfactoryid = true; - PpcTag->inkfactoryid = Tag->InkFactoryID; + PpcTag->inkfactoryid = (uint32_t)Tag->factoryID; PpcTag->has_fillsysid = true; - PpcTag->fillsysid = Tag->FillSysID; + PpcTag->fillsysid = Tag->fillingSystem; PpcTag->has_inkcategory = true; - PpcTag->inkcategory = Tag->InkCategory; + PpcTag->inkcategory = Tag->catagory; PpcTag->has_type_rev = true; - PpcTag->type_rev = Tag->Type_Rev; + PpcTag->type_rev = Tag->type; PpcTag->has_cartridgesize = true; - PpcTag->cartridgesize = Tag->CartridgeSize; + PpcTag->cartridgesize = Tag->cartSize; PpcTag->has_filedinkvol = true; - PpcTag->filedinkvol = Tag->FiledInkVol; + PpcTag->filedinkvol = Tag->inkVolume; PpcTag->has_misc = true; PpcTag->misc = Tag->Misc; PpcTag->has_plugincounter = true; - PpcTag->plugincounter = Tag->PluginCounter; + PpcTag->plugincounter = Tag->pluginCounter; PpcTag->has_inkfillstatus = true; - PpcTag->inkfillstatus = Tag->InkFillStatus; + PpcTag->inkfillstatus = Tag->inkFill; PpcTag->has_inkusedstatus = true; - PpcTag->inkusedstatus = Tag->InkUsedStatus; + PpcTag->inkusedstatus = Tag->inkUsed; PpcTag->has_inkemptystatus = true; - PpcTag->inkemptystatus = Tag->InkEmptyStatus; + PpcTag->inkemptystatus = Tag->inkEmpty; PpcTag->has_inkemptystatus = true; - PpcTag->inkemptystatus = Tag->WasteEmptyStatus; + PpcTag->inkemptystatus = Tag->wasteEmpty; PpcTag->has_wastefillingstatus = true; - PpcTag->wastefillingstatus = Tag->WasteFillingStatus; + PpcTag->wastefillingstatus = Tag->wasteFilling; PpcTag->has_wastefullstatus = true; - PpcTag->wastefullstatus = Tag->WasteFullStatus; + PpcTag->wastefullstatus = Tag->wasteFull; PpcTag->has_blocked = true; - PpcTag->blocked = Tag->Blocked; + PpcTag->blocked = Tag->blocked; PpcTag->has_fail = true; - PpcTag->fail = Tag->Fail; + PpcTag->fail = Tag->fail; PpcTag->has_wastecounter = true; - PpcTag->wastecounter = Tag->WasteCounter; + PpcTag->wastecounter = Tag->counter; return PpcTag; } @@ -212,50 +230,50 @@ CartridgeTagContent * NFCTag_Tag2PPC(NFCTag_t *Tag) return NULL; memset (Tag,0,sizeof(Tag)); - strncpy(Tag->TagUniqueID , PpcTag->taguniqueid,sizeof(Tag->TagUniqueID)); - strncpy(Tag->CartSN , PpcTag->cartsn,sizeof(Tag->CartSN)); + strncpy(Tag->tagId , PpcTag->taguniqueid,sizeof(Tag->tagId)); + strncpy(Tag->Serial , PpcTag->cartsn,sizeof(Tag->Serial)); if (PpcTag->has_inkfactoryid == true) - Tag->InkFactoryID = PpcTag->inkfactoryid; + memcpy(Tag->factoryID,PpcTag->inkfactoryid,3); if (PpcTag->has_fillsysid == true) - Tag->FillSysID = PpcTag->fillsysid; - strncpy(Tag->ColorName , PpcTag->colorname,sizeof(Tag->ColorName)); - strncpy(Tag->WorkOrder , PpcTag->workorder ,sizeof(Tag->WorkOrder)); + Tag->fillingSystem = PpcTag->fillsysid; + strncpy(Tag->colorName , PpcTag->colorname,sizeof(Tag->colorName)); + strncpy(Tag->workOrder , PpcTag->workorder ,sizeof(Tag->workOrder)); if (PpcTag->has_inkcategory == true) - Tag->InkCategory = PpcTag->inkcategory; + memcpy( Tag->catagory, PpcTag->inkcategory,sizeof(Tag->catagory)); if (PpcTag->has_type_rev == true) - Tag->Type_Rev = PpcTag->type_rev; + Tag->type = PpcTag->type_rev; if (PpcTag->has_cartridgesize == true) - Tag->CartridgeSize = PpcTag->cartridgesize; + Tag->cartSize = PpcTag->cartridgesize; if (PpcTag->has_filedinkvol == true) - Tag->FiledInkVol = PpcTag->filedinkvol; - strncpy(Tag->InkBatchNo , PpcTag->inkbatchno,sizeof(Tag->InkBatchNo)); - strncpy(Tag->InkMFGDate , PpcTag->inkmfgdate,sizeof(Tag->InkMFGDate)); - strncpy(Tag->InkEOLDate , PpcTag->inkeoldate,sizeof(Tag->InkEOLDate)); + Tag->inkVolume = PpcTag->filedinkvol; + strncpy(Tag->inkBatch , PpcTag->inkbatchno,sizeof(Tag->inkBatch)); + strncpy(Tag->inkMfgDate , PpcTag->inkmfgdate,sizeof(Tag->inkMfgDate)); + strncpy(Tag->inkEolDate , PpcTag->inkeoldate,sizeof(Tag->inkEolDate)); strncpy(Tag->CartFillDate , PpcTag->cartfilldate,sizeof(Tag->CartFillDate)); strncpy(Tag->WasteFillDate , PpcTag->wastefilldate,sizeof(Tag->WasteFillDate)); if (PpcTag->has_plugincounter == true) - Tag->PluginCounter = PpcTag->plugincounter; + Tag->pluginCounter = PpcTag->plugincounter; if (PpcTag->has_inkfillstatus == true) - Tag->InkFillStatus = PpcTag->inkfillstatus; + Tag->inkFill = PpcTag->inkfillstatus; if (PpcTag->has_inkusedstatus == true) - Tag->InkUsedStatus = PpcTag->inkusedstatus; + Tag->inkUsed = PpcTag->inkusedstatus; if (PpcTag->has_inkemptystatus == true) - Tag->InkEmptyStatus = PpcTag->inkemptystatus; + Tag->inkEmpty = PpcTag->inkemptystatus; if (PpcTag->has_wasteemptystatus == true) - Tag->WasteEmptyStatus = PpcTag->wasteemptystatus; + Tag->wasteEmpty = PpcTag->wasteemptystatus; if (PpcTag->has_wastefillingstatus == true) - Tag->WasteFillingStatus = PpcTag->wastefillingstatus; + Tag->wasteFilling = PpcTag->wastefillingstatus; if (PpcTag->has_wastefullstatus == true) - Tag->WasteFullStatus = PpcTag->wastefullstatus; + Tag->wasteFull = PpcTag->wastefullstatus; if (PpcTag->has_blocked == true) - Tag->Blocked = PpcTag->blocked; + Tag->blocked = PpcTag->blocked; if (PpcTag->has_fail == true) - Tag->Fail = PpcTag->fail; + Tag->fail = PpcTag->fail; if (PpcTag->has_wastecounter == true) - Tag->WasteCounter = PpcTag->wastecounter; - strncpy(Tag->MachineIdINL , PpcTag->machineidinl,sizeof(Tag->MachineIdINL)); - strncpy(Tag->MachineIdWST , PpcTag->machineidwst,sizeof(Tag->MachineIdWST)); - strncpy(Tag->Spare,PpcTag->spare ,sizeof(Tag->Spare)); + Tag->wasteCounter = PpcTag->wastecounter; + strncpy(Tag->MachineIdInl , PpcTag->machineidinl,sizeof(Tag->MachineIdInl)); + strncpy(Tag->MachineIdWst , PpcTag->machineidwst,sizeof(Tag->MachineIdWst)); + strncpy(Tag->reserved,PpcTag->spare ,sizeof(Tag->reserved)); strncpy(Tag->HashValue,PpcTag->hashvalue ,sizeof(Tag->HashValue)); return Tag; diff --git a/Software/Embedded_SW/Embedded/Common/Utilities/RFIDTagHandling.h b/Software/Embedded_SW/Embedded/Common/Utilities/RFIDTagHandling.h index 496b1aae3..0eee787f4 100644 --- a/Software/Embedded_SW/Embedded/Common/Utilities/RFIDTagHandling.h +++ b/Software/Embedded_SW/Embedded/Common/Utilities/RFIDTagHandling.h @@ -11,4 +11,6 @@ CartridgeTagContent * NFCTag_Tag2PPC(NFCTag_t *Tag); NFCTag_t * NFCTag_PPC2Tag( CartridgeTagContent *PpcTag); + uint32_t LoadCartridgeData(PANEL_BUTTON_OR_CRAT_ID Cart,void *CartridgePtr); + diff --git a/Software/Embedded_SW/Embedded/Common/report/reportInit.c b/Software/Embedded_SW/Embedded/Common/report/reportInit.c index d466432b1..82c8b8099 100644 --- a/Software/Embedded_SW/Embedded/Common/report/reportInit.c +++ b/Software/Embedded_SW/Embedded/Common/report/reportInit.c @@ -64,6 +64,10 @@ PackageHandle FPGAFilter; PackageHandle LoadFilter; PackageHandle InitFilter; PackageHandle MaintFilter; +PackageHandle IFSFilter; +PackageHandle FilesFilter; +PackageHandle I2CFilter; +PackageHandle MotorFilter; char LogPath[50] = "0://ErrFile.txt"; @@ -498,6 +502,10 @@ STATUS ReportInit(ReportInitParams InitParams) LoadFilter = ReportAddFilterPackage("Load"); InitFilter = ReportAddFilterPackage("Init"); MaintFilter = ReportAddFilterPackage("Maint"); + IFSFilter = ReportAddFilterPackage("IFS"); + FilesFilter = ReportAddFilterPackage("Files"); + I2CFilter = ReportAddFilterPackage("I2C"); + MotorFilter = ReportAddFilterPackage("Motor"); // Filter = ReportAddFilterPackage(""); ReportSwitchPackageFilter(IDSFilter,REPORT_OFF); ReportSwitchPackageFilter(WasteFilter,REPORT_OFF); diff --git a/Software/Embedded_SW/Embedded/Communication/Container.c b/Software/Embedded_SW/Embedded/Communication/Container.c index 307e4eecb..aa7807d1b 100644 --- a/Software/Embedded_SW/Embedded/Communication/Container.c +++ b/Software/Embedded_SW/Embedded/Communication/Container.c @@ -42,6 +42,7 @@ #include "Modules/General/process.h" #include "Modules/Thread/Thread_ex.h" #include "Modules/Ids/Ids_ex.h" +#include "Modules/waste/waste_ex.h" #include "Modules/Ifs/Ifs.h" #include "Common/SWUpdate/FileSystem.h" @@ -460,15 +461,12 @@ void receive_callback(char* buffer, size_t length) case MESSAGE_TYPE__DispenserDataRequest: DispenserDataRequestFunc(requestContainer); break; - case MESSAGE_TYPE__StartCartridgesUpdateRequest: - LOG_ERROR (requestContainer->type,"MESSAGE_TYPE__StartCartridgesUpdateRequest"); - break; - case MESSAGE_TYPE__StopCartridgesUpdateRequest: - LOG_ERROR (requestContainer->type,"MESSAGE_TYPE__StopCartridgesUpdateRequest"); - break; case MESSAGE_TYPE__CartridgeValidationResponse: CartridgeValidationResponseFunc(requestContainer); break; + case MESSAGE_TYPE__StartInkFillingStatusRequest: + StartInkFillingStatusRequestFunc(requestContainer); + break; case MESSAGE_TYPE__MidTankDataSetupRequest: MidTankDataSetupFunc(requestContainer); break; diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Common/MessageType.pb-c.c b/Software/Embedded_SW/Embedded/Communication/PMR/Common/MessageType.pb-c.c index d6c0259e2..fc3d91279 100644 --- a/Software/Embedded_SW/Embedded/Communication/PMR/Common/MessageType.pb-c.c +++ b/Software/Embedded_SW/Embedded/Communication/PMR/Common/MessageType.pb-c.c @@ -121,6 +121,8 @@ static const ProtobufCEnumValue message_type__enum_values_by_number[263] = { "", "", 110 }, { "", "", 111 }, { "", "", 112 }, + { "", "", 113 }, + { "", "", 114 }, { "", "", 1000 }, { "", "", 1001 }, { "", "", 1002 }, @@ -182,10 +184,6 @@ static const ProtobufCEnumValue message_type__enum_values_by_number[263] = { "", "", 2037 }, { "", "", 2038 }, { "", "", 2039 }, - { "", "", 2040 }, - { "", "", 2041 }, - { "", "", 2042 }, - { "", "", 2043 }, { "", "", 2044 }, { "", "", 2045 }, { "", "", 3000 }, @@ -272,153 +270,153 @@ static const ProtobufCEnumValue message_type__enum_values_by_number[263] = { "", "", 11005 }, { "", "", 11006 }, { "", "", 11007 }, + { "", "", 12000 }, + { "", "", 12001 }, }; static const ProtobufCIntRange message_type__value_ranges[] = { -{0, 0},{3, 2},{1000, 112},{2000, 133},{3000, 179},{4000, 193},{5000, 201},{6000, 205},{7000, 211},{8000, 235},{9000, 243},{10000, 247},{11000, 255},{0, 263} +{0, 0},{3, 2},{1000, 114},{2000, 135},{2044, 175},{3000, 177},{4000, 191},{5000, 199},{6000, 203},{7000, 209},{8000, 233},{9000, 241},{10000, 245},{11000, 253},{12000, 261},{0, 263} }; static const ProtobufCEnumValueIndex message_type__enum_values_by_name[263] = { - { "", 191 }, - { "", 192 }, - { "", 181 }, - { "", 182 }, - { "", 249 }, - { "", 250 }, - { "", 253 }, - { "", 254 }, - { "", 233 }, - { "", 234 }, + { "", 189 }, + { "", 190 }, + { "", 179 }, + { "", 180 }, + { "", 247 }, + { "", 248 }, + { "", 251 }, + { "", 252 }, + { "", 231 }, + { "", 232 }, { "", 2 }, { "", 3 }, - { "", 177 }, - { "", 178 }, - { "", 125 }, - { "", 126 }, - { "", 131 }, - { "", 132 }, - { "", 207 }, - { "", 208 }, - { "", 257 }, - { "", 258 }, + { "", 175 }, + { "", 176 }, + { "", 127 }, + { "", 128 }, + { "", 133 }, + { "", 134 }, + { "", 205 }, + { "", 206 }, + { "", 255 }, + { "", 256 }, + { "", 217 }, + { "", 218 }, + { "", 183 }, + { "", 184 }, { "", 219 }, { "", 220 }, - { "", 185 }, - { "", 186 }, - { "", 221 }, - { "", 222 }, - { "", 117 }, - { "", 118 }, - { "", 209 }, - { "", 210 }, - { "", 143 }, - { "", 144 }, - { "", 149 }, - { "", 150 }, - { "", 235 }, - { "", 236 }, + { "", 119 }, + { "", 120 }, + { "", 207 }, + { "", 208 }, { "", 145 }, { "", 146 }, + { "", 151 }, + { "", 152 }, + { "", 233 }, + { "", 234 }, { "", 147 }, { "", 148 }, + { "", 149 }, + { "", 150 }, { "", 1 }, - { "", 215 }, - { "", 216 }, - { "", 113 }, - { "", 114 }, - { "", 115 }, - { "", 116 }, - { "", 112 }, - { "", 229 }, - { "", 230 }, { "", 213 }, { "", 214 }, + { "", 115 }, + { "", 116 }, + { "", 117 }, + { "", 118 }, + { "", 114 }, { "", 227 }, { "", 228 }, { "", 211 }, { "", 212 }, - { "", 129 }, - { "", 130 }, { "", 225 }, { "", 226 }, + { "", 209 }, + { "", 210 }, + { "", 131 }, + { "", 132 }, { "", 223 }, { "", 224 }, - { "", 179 }, - { "", 180 }, - { "", 205 }, - { "", 206 }, - { "", 217 }, - { "", 218 }, - { "", 239 }, - { "", 240 }, - { "", 241 }, - { "", 242 }, + { "", 221 }, + { "", 222 }, + { "", 177 }, + { "", 178 }, + { "", 203 }, + { "", 204 }, + { "", 215 }, + { "", 216 }, { "", 237 }, { "", 238 }, - { "", 135 }, - { "", 136 }, - { "", 141 }, - { "", 142 }, + { "", 239 }, + { "", 240 }, + { "", 235 }, + { "", 236 }, { "", 137 }, { "", 138 }, + { "", 143 }, + { "", 144 }, { "", 139 }, { "", 140 }, + { "", 141 }, + { "", 142 }, { "", 0 }, - { "", 119 }, - { "", 120 }, + { "", 121 }, + { "", 122 }, { "", 4 }, { "", 5 }, + { "", 161 }, + { "", 162 }, + { "", 185 }, + { "", 186 }, + { "", 171 }, + { "", 172 }, { "", 159 }, { "", 160 }, - { "", 187 }, - { "", 188 }, + { "", 195 }, + { "", 196 }, + { "", 153 }, + { "", 154 }, { "", 169 }, { "", 170 }, - { "", 157 }, - { "", 158 }, - { "", 197 }, - { "", 198 }, - { "", 151 }, - { "", 152 }, - { "", 167 }, - { "", 168 }, - { "", 171 }, - { "", 172 }, - { "", 199 }, - { "", 200 }, - { "", 121 }, - { "", 122 }, { "", 173 }, { "", 174 }, - { "", 193 }, - { "", 194 }, - { "", 133 }, - { "", 134 }, - { "", 163 }, - { "", 164 }, - { "", 189 }, - { "", 190 }, - { "", 243 }, - { "", 244 }, - { "", 247 }, - { "", 248 }, - { "", 251 }, - { "", 252 }, - { "", 255 }, - { "", 256 }, + { "", 197 }, + { "", 198 }, { "", 123 }, { "", 124 }, - { "", 175 }, - { "", 176 }, - { "", 195 }, - { "", 196 }, - { "", 161 }, - { "", 162 }, + { "", 191 }, + { "", 192 }, + { "", 135 }, + { "", 136 }, { "", 165 }, { "", 166 }, + { "", 187 }, + { "", 188 }, + { "", 261 }, + { "", 262 }, + { "", 241 }, + { "", 242 }, { "", 245 }, { "", 246 }, - { "", 259 }, - { "", 260 }, + { "", 249 }, + { "", 250 }, + { "", 253 }, + { "", 254 }, + { "", 125 }, + { "", 126 }, + { "", 193 }, + { "", 194 }, + { "", 163 }, + { "", 164 }, + { "", 167 }, + { "", 168 }, + { "", 243 }, + { "", 244 }, + { "", 257 }, + { "", 258 }, { "", 100 }, { "", 101 }, { "", 6 }, @@ -461,6 +459,8 @@ static const ProtobufCEnumValueIndex message_type__enum_values_by_name[263] = { "", 21 }, { "", 56 }, { "", 57 }, + { "", 112 }, + { "", 113 }, { "", 22 }, { "", 23 }, { "", 62 }, @@ -525,22 +525,22 @@ static const ProtobufCEnumValueIndex message_type__enum_values_by_name[263] = { "", 31 }, { "", 106 }, { "", 107 }, - { "", 203 }, - { "", 204 }, - { "", 155 }, - { "", 156 }, - { "", 153 }, - { "", 154 }, - { "", 261 }, - { "", 262 }, - { "", 127 }, - { "", 128 }, { "", 201 }, { "", 202 }, - { "", 183 }, - { "", 184 }, - { "", 231 }, - { "", 232 }, + { "", 157 }, + { "", 158 }, + { "", 155 }, + { "", 156 }, + { "", 259 }, + { "", 260 }, + { "", 129 }, + { "", 130 }, + { "", 199 }, + { "", 200 }, + { "", 181 }, + { "", 182 }, + { "", 229 }, + { "", 230 }, }; const ProtobufCEnumDescriptor message_type__descriptor = { @@ -553,7 +553,7 @@ const ProtobufCEnumDescriptor message_type__descriptor = message_type__enum_values_by_number, 263, message_type__enum_values_by_name, - 13, + 15, message_type__value_ranges, NULL,NULL,NULL,NULL /* reserved[1234] */ }; diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Common/MessageType.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Common/MessageType.pb-c.h index 58bd2112c..a9dd51ca9 100644 --- a/Software/Embedded_SW/Embedded/Communication/PMR/Common/MessageType.pb-c.h +++ b/Software/Embedded_SW/Embedded/Communication/PMR/Common/MessageType.pb-c.h @@ -132,6 +132,8 @@ typedef enum _MessageType { MESSAGE_TYPE__StubMainCardEEpromReadResponse = 110, MESSAGE_TYPE__StubMainCardEEpromWriteRequest = 111, MESSAGE_TYPE__StubMainCardEEpromWriteResponse = 112, + MESSAGE_TYPE__StubHeadEEpromRequest = 113, + MESSAGE_TYPE__StubHeadEEpromResponse = 114, MESSAGE_TYPE__ExternalBridgeUdpDiscoveryPacket = 1000, MESSAGE_TYPE__ExternalBridgeLoginRequest = 1001, MESSAGE_TYPE__ExternalBridgeLoginResponse = 1002, @@ -193,10 +195,6 @@ typedef enum _MessageType { MESSAGE_TYPE__SetBlowerStateResponse = 2037, MESSAGE_TYPE__SetValveStateRequest = 2038, MESSAGE_TYPE__SetValveStateResponse = 2039, - MESSAGE_TYPE__StartCartridgesUpdateRequest = 2040, - MESSAGE_TYPE__StartCartridgesUpdateResponse = 2041, - MESSAGE_TYPE__StopCartridgesUpdateRequest = 2042, - MESSAGE_TYPE__StopCartridgesUpdateResponse = 2043, MESSAGE_TYPE__CartridgeValidationRequest = 2044, MESSAGE_TYPE__CartridgeValidationResponse = 2045, MESSAGE_TYPE__JobRequest = 3000, @@ -282,7 +280,9 @@ typedef enum _MessageType { MESSAGE_TYPE__StopThreadLoadingRequest = 11004, MESSAGE_TYPE__StopThreadLoadingResponse = 11005, MESSAGE_TYPE__TryThreadLoadingRequest = 11006, - MESSAGE_TYPE__TryThreadLoadingResponse = 11007 + MESSAGE_TYPE__TryThreadLoadingResponse = 11007, + MESSAGE_TYPE__StartInkFillingStatusRequest = 12000, + MESSAGE_TYPE__StartInkFillingStatusResponse = 12001 PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(MESSAGE_TYPE) } MessageType; diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Debugging/StartDebugLogResponse.pb-c.c b/Software/Embedded_SW/Embedded/Communication/PMR/Debugging/StartDebugLogResponse.pb-c.c index 855480fa4..2640767b6 100644 --- a/Software/Embedded_SW/Embedded/Communication/PMR/Debugging/StartDebugLogResponse.pb-c.c +++ b/Software/Embedded_SW/Embedded/Communication/PMR/Debugging/StartDebugLogResponse.pb-c.c @@ -82,7 +82,7 @@ static const ProtobufCFieldDescriptor start_debug_log_response__field_descriptor "", 3, PROTOBUF_C_LABEL_OPTIONAL, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_INT32, offsetof(StartDebugLogResponse, has_linenumber), offsetof(StartDebugLogResponse, linenumber), NULL, @@ -94,7 +94,7 @@ static const ProtobufCFieldDescriptor start_debug_log_response__field_descriptor "", 4, PROTOBUF_C_LABEL_OPTIONAL, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_INT32, offsetof(StartDebugLogResponse, has_filter), offsetof(StartDebugLogResponse, filter), NULL, @@ -118,7 +118,7 @@ static const ProtobufCFieldDescriptor start_debug_log_response__field_descriptor "", 6, PROTOBUF_C_LABEL_OPTIONAL, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_INT32, offsetof(StartDebugLogResponse, has_moduleid), offsetof(StartDebugLogResponse, moduleid), NULL, @@ -130,7 +130,7 @@ static const ProtobufCFieldDescriptor start_debug_log_response__field_descriptor "", 7, PROTOBUF_C_LABEL_OPTIONAL, - PROTOBUF_C_TYPE_UINT32, + PROTOBUF_C_TYPE_INT32, offsetof(StartDebugLogResponse, has_parameter), offsetof(StartDebugLogResponse, parameter), NULL, diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Debugging/StartDebugLogResponse.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Debugging/StartDebugLogResponse.pb-c.h index ec58375ac..5a58da7ea 100644 --- a/Software/Embedded_SW/Embedded/Communication/PMR/Debugging/StartDebugLogResponse.pb-c.h +++ b/Software/Embedded_SW/Embedded/Communication/PMR/Debugging/StartDebugLogResponse.pb-c.h @@ -31,14 +31,14 @@ struct _StartDebugLogResponse DebugLogCategory category; char *filename; protobuf_c_boolean has_linenumber; - uint32_t linenumber; + int32_t linenumber; protobuf_c_boolean has_filter; - uint32_t filter; + int32_t filter; char *message; protobuf_c_boolean has_moduleid; - uint32_t moduleid; + int32_t moduleid; protobuf_c_boolean has_parameter; - uint32_t parameter; + int32_t parameter; }; #define START_DEBUG_LOG_RESPONSE__INIT \ { PROTOBUF_C_MESSAGE_INIT (&start_debug_log_response__descriptor) \ diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StartCartridgesUpdateRequest.pb-c.c b/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StartCartridgesUpdateRequest.pb-c.c deleted file mode 100644 index f6b0cfdee..000000000 --- a/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StartCartridgesUpdateRequest.pb-c.c +++ /dev/null @@ -1,72 +0,0 @@ -/* Generated by the protocol buffer compiler. DO NOT EDIT! */ -/* Generated from: StartCartridgesUpdateRequest.proto */ - -/* Do not generate deprecated warnings for self */ -#ifndef PROTOBUF_C__NO_DEPRECATED -#define PROTOBUF_C__NO_DEPRECATED -#endif - -#include "StartCartridgesUpdateRequest.pb-c.h" -void start_cartridges_update_request__init - (StartCartridgesUpdateRequest *message) -{ - static const StartCartridgesUpdateRequest init_value = START_CARTRIDGES_UPDATE_REQUEST__INIT; - *message = init_value; -} -size_t start_cartridges_update_request__get_packed_size - (const StartCartridgesUpdateRequest *message) -{ - assert(message->base.descriptor == &start_cartridges_update_request__descriptor); - return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); -} -size_t start_cartridges_update_request__pack - (const StartCartridgesUpdateRequest *message, - uint8_t *out) -{ - assert(message->base.descriptor == &start_cartridges_update_request__descriptor); - return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); -} -size_t start_cartridges_update_request__pack_to_buffer - (const StartCartridgesUpdateRequest *message, - ProtobufCBuffer *buffer) -{ - assert(message->base.descriptor == &start_cartridges_update_request__descriptor); - return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); -} -StartCartridgesUpdateRequest * - start_cartridges_update_request__unpack - (ProtobufCAllocator *allocator, - size_t len, - const uint8_t *data) -{ - return (StartCartridgesUpdateRequest *) - protobuf_c_message_unpack (&start_cartridges_update_request__descriptor, - allocator, len, data); -} -void start_cartridges_update_request__free_unpacked - (StartCartridgesUpdateRequest *message, - ProtobufCAllocator *allocator) -{ - if(!message) - return; - assert(message->base.descriptor == &start_cartridges_update_request__descriptor); - protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); -} -#define start_cartridges_update_request__field_descriptors NULL -#define start_cartridges_update_request__field_indices_by_name NULL -#define start_cartridges_update_request__number_ranges NULL -const ProtobufCMessageDescriptor start_cartridges_update_request__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "", - "", - "", - "", - sizeof(StartCartridgesUpdateRequest), - 0, - start_cartridges_update_request__field_descriptors, - start_cartridges_update_request__field_indices_by_name, - 0, start_cartridges_update_request__number_ranges, - (ProtobufCMessageInit) start_cartridges_update_request__init, - NULL,NULL,NULL /* reserved[123] */ -}; diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StartCartridgesUpdateRequest.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StartCartridgesUpdateRequest.pb-c.h deleted file mode 100644 index f8f2dcf3b..000000000 --- a/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StartCartridgesUpdateRequest.pb-c.h +++ /dev/null @@ -1,70 +0,0 @@ -/* Generated by the protocol buffer compiler. DO NOT EDIT! */ -/* Generated from: StartCartridgesUpdateRequest.proto */ - -#ifndef PROTOBUF_C_StartCartridgesUpdateRequest_2eproto__INCLUDED -#define PROTOBUF_C_StartCartridgesUpdateRequest_2eproto__INCLUDED - -#include <protobuf-c/protobuf-c.h> - -PROTOBUF_C__BEGIN_DECLS - -#if PROTOBUF_C_VERSION_NUMBER < 1003000 -# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers. -#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION -# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c. -#endif - - -typedef struct _StartCartridgesUpdateRequest StartCartridgesUpdateRequest; - - -/* --- enums --- */ - - -/* --- messages --- */ - -struct _StartCartridgesUpdateRequest -{ - ProtobufCMessage base; -}; -#define START_CARTRIDGES_UPDATE_REQUEST__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&start_cartridges_update_request__descriptor) \ - } - - -/* StartCartridgesUpdateRequest methods */ -void start_cartridges_update_request__init - (StartCartridgesUpdateRequest *message); -size_t start_cartridges_update_request__get_packed_size - (const StartCartridgesUpdateRequest *message); -size_t start_cartridges_update_request__pack - (const StartCartridgesUpdateRequest *message, - uint8_t *out); -size_t start_cartridges_update_request__pack_to_buffer - (const StartCartridgesUpdateRequest *message, - ProtobufCBuffer *buffer); -StartCartridgesUpdateRequest * - start_cartridges_update_request__unpack - (ProtobufCAllocator *allocator, - size_t len, - const uint8_t *data); -void start_cartridges_update_request__free_unpacked - (StartCartridgesUpdateRequest *message, - ProtobufCAllocator *allocator); -/* --- per-message closures --- */ - -typedef void (*StartCartridgesUpdateRequest_Closure) - (const StartCartridgesUpdateRequest *message, - void *closure_data); - -/* --- services --- */ - - -/* --- descriptors --- */ - -extern const ProtobufCMessageDescriptor start_cartridges_update_request__descriptor; - -PROTOBUF_C__END_DECLS - - -#endif /* PROTOBUF_C_StartCartridgesUpdateRequest_2eproto__INCLUDED */ diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StartCartridgesUpdateResponse.pb-c.c b/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StartCartridgesUpdateResponse.pb-c.c deleted file mode 100644 index 0aa54e7ab..000000000 --- a/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StartCartridgesUpdateResponse.pb-c.c +++ /dev/null @@ -1,105 +0,0 @@ -/* Generated by the protocol buffer compiler. DO NOT EDIT! */ -/* Generated from: StartCartridgesUpdateResponse.proto */ - -/* Do not generate deprecated warnings for self */ -#ifndef PROTOBUF_C__NO_DEPRECATED -#define PROTOBUF_C__NO_DEPRECATED -#endif - -#include "StartCartridgesUpdateResponse.pb-c.h" -void start_cartridges_update_response__init - (StartCartridgesUpdateResponse *message) -{ - static const StartCartridgesUpdateResponse init_value = START_CARTRIDGES_UPDATE_RESPONSE__INIT; - *message = init_value; -} -size_t start_cartridges_update_response__get_packed_size - (const StartCartridgesUpdateResponse *message) -{ - assert(message->base.descriptor == &start_cartridges_update_response__descriptor); - return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); -} -size_t start_cartridges_update_response__pack - (const StartCartridgesUpdateResponse *message, - uint8_t *out) -{ - assert(message->base.descriptor == &start_cartridges_update_response__descriptor); - return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); -} -size_t start_cartridges_update_response__pack_to_buffer - (const StartCartridgesUpdateResponse *message, - ProtobufCBuffer *buffer) -{ - assert(message->base.descriptor == &start_cartridges_update_response__descriptor); - return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); -} -StartCartridgesUpdateResponse * - start_cartridges_update_response__unpack - (ProtobufCAllocator *allocator, - size_t len, - const uint8_t *data) -{ - return (StartCartridgesUpdateResponse *) - protobuf_c_message_unpack (&start_cartridges_update_response__descriptor, - allocator, len, data); -} -void start_cartridges_update_response__free_unpacked - (StartCartridgesUpdateResponse *message, - ProtobufCAllocator *allocator) -{ - if(!message) - return; - assert(message->base.descriptor == &start_cartridges_update_response__descriptor); - protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); -} -static const ProtobufCFieldDescriptor start_cartridges_update_response__field_descriptors[2] = -{ - { - "", - 1, - PROTOBUF_C_LABEL_OPTIONAL, - PROTOBUF_C_TYPE_MESSAGE, - 0, /* quantifier_offset */ - offsetof(StartCartridgesUpdateResponse, cartridge), - &cartridge__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "", - 2, - PROTOBUF_C_LABEL_OPTIONAL, - PROTOBUF_C_TYPE_ENUM, - offsetof(StartCartridgesUpdateResponse, has_action), - offsetof(StartCartridgesUpdateResponse, action), - &cartridge_action__descriptor, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, -}; -static const unsigned start_cartridges_update_response__field_indices_by_name[] = { - 1, /* field[1] = Action */ - 0, /* field[0] = Cartridge */ -}; -static const ProtobufCIntRange start_cartridges_update_response__number_ranges[1 + 1] = -{ - { 1, 0 }, - { 0, 2 } -}; -const ProtobufCMessageDescriptor start_cartridges_update_response__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "", - "", - "", - "", - sizeof(StartCartridgesUpdateResponse), - 2, - start_cartridges_update_response__field_descriptors, - start_cartridges_update_response__field_indices_by_name, - 1, start_cartridges_update_response__number_ranges, - (ProtobufCMessageInit) start_cartridges_update_response__init, - NULL,NULL,NULL /* reserved[123] */ -}; diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StartCartridgesUpdateResponse.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StartCartridgesUpdateResponse.pb-c.h deleted file mode 100644 index 409c8ff3f..000000000 --- a/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StartCartridgesUpdateResponse.pb-c.h +++ /dev/null @@ -1,75 +0,0 @@ -/* Generated by the protocol buffer compiler. DO NOT EDIT! */ -/* Generated from: StartCartridgesUpdateResponse.proto */ - -#ifndef PROTOBUF_C_StartCartridgesUpdateResponse_2eproto__INCLUDED -#define PROTOBUF_C_StartCartridgesUpdateResponse_2eproto__INCLUDED - -#include <protobuf-c/protobuf-c.h> - -PROTOBUF_C__BEGIN_DECLS - -#if PROTOBUF_C_VERSION_NUMBER < 1003000 -# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers. -#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION -# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c. -#endif - -#include "Cartridge.pb-c.h" -#include "CartridgeAction.pb-c.h" - -typedef struct _StartCartridgesUpdateResponse StartCartridgesUpdateResponse; - - -/* --- enums --- */ - - -/* --- messages --- */ - -struct _StartCartridgesUpdateResponse -{ - ProtobufCMessage base; - Cartridge *cartridge; - protobuf_c_boolean has_action; - CartridgeAction action; -}; -#define START_CARTRIDGES_UPDATE_RESPONSE__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&start_cartridges_update_response__descriptor) \ - , NULL, 0, CARTRIDGE_ACTION__Inserted } - - -/* StartCartridgesUpdateResponse methods */ -void start_cartridges_update_response__init - (StartCartridgesUpdateResponse *message); -size_t start_cartridges_update_response__get_packed_size - (const StartCartridgesUpdateResponse *message); -size_t start_cartridges_update_response__pack - (const StartCartridgesUpdateResponse *message, - uint8_t *out); -size_t start_cartridges_update_response__pack_to_buffer - (const StartCartridgesUpdateResponse *message, - ProtobufCBuffer *buffer); -StartCartridgesUpdateResponse * - start_cartridges_update_response__unpack - (ProtobufCAllocator *allocator, - size_t len, - const uint8_t *data); -void start_cartridges_update_response__free_unpacked - (StartCartridgesUpdateResponse *message, - ProtobufCAllocator *allocator); -/* --- per-message closures --- */ - -typedef void (*StartCartridgesUpdateResponse_Closure) - (const StartCartridgesUpdateResponse *message, - void *closure_data); - -/* --- services --- */ - - -/* --- descriptors --- */ - -extern const ProtobufCMessageDescriptor start_cartridges_update_response__descriptor; - -PROTOBUF_C__END_DECLS - - -#endif /* PROTOBUF_C_StartCartridgesUpdateResponse_2eproto__INCLUDED */ diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StopCartridgesUpdateRequest.pb-c.c b/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StopCartridgesUpdateRequest.pb-c.c deleted file mode 100644 index 729dd6298..000000000 --- a/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StopCartridgesUpdateRequest.pb-c.c +++ /dev/null @@ -1,72 +0,0 @@ -/* Generated by the protocol buffer compiler. DO NOT EDIT! */ -/* Generated from: StopCartridgesUpdateRequest.proto */ - -/* Do not generate deprecated warnings for self */ -#ifndef PROTOBUF_C__NO_DEPRECATED -#define PROTOBUF_C__NO_DEPRECATED -#endif - -#include "StopCartridgesUpdateRequest.pb-c.h" -void stop_cartridges_update_request__init - (StopCartridgesUpdateRequest *message) -{ - static const StopCartridgesUpdateRequest init_value = STOP_CARTRIDGES_UPDATE_REQUEST__INIT; - *message = init_value; -} -size_t stop_cartridges_update_request__get_packed_size - (const StopCartridgesUpdateRequest *message) -{ - assert(message->base.descriptor == &stop_cartridges_update_request__descriptor); - return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); -} -size_t stop_cartridges_update_request__pack - (const StopCartridgesUpdateRequest *message, - uint8_t *out) -{ - assert(message->base.descriptor == &stop_cartridges_update_request__descriptor); - return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); -} -size_t stop_cartridges_update_request__pack_to_buffer - (const StopCartridgesUpdateRequest *message, - ProtobufCBuffer *buffer) -{ - assert(message->base.descriptor == &stop_cartridges_update_request__descriptor); - return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); -} -StopCartridgesUpdateRequest * - stop_cartridges_update_request__unpack - (ProtobufCAllocator *allocator, - size_t len, - const uint8_t *data) -{ - return (StopCartridgesUpdateRequest *) - protobuf_c_message_unpack (&stop_cartridges_update_request__descriptor, - allocator, len, data); -} -void stop_cartridges_update_request__free_unpacked - (StopCartridgesUpdateRequest *message, - ProtobufCAllocator *allocator) -{ - if(!message) - return; - assert(message->base.descriptor == &stop_cartridges_update_request__descriptor); - protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); -} -#define stop_cartridges_update_request__field_descriptors NULL -#define stop_cartridges_update_request__field_indices_by_name NULL -#define stop_cartridges_update_request__number_ranges NULL -const ProtobufCMessageDescriptor stop_cartridges_update_request__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "", - "", - "", - "", - sizeof(StopCartridgesUpdateRequest), - 0, - stop_cartridges_update_request__field_descriptors, - stop_cartridges_update_request__field_indices_by_name, - 0, stop_cartridges_update_request__number_ranges, - (ProtobufCMessageInit) stop_cartridges_update_request__init, - NULL,NULL,NULL /* reserved[123] */ -}; diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StopCartridgesUpdateRequest.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StopCartridgesUpdateRequest.pb-c.h deleted file mode 100644 index 5a1b486c9..000000000 --- a/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StopCartridgesUpdateRequest.pb-c.h +++ /dev/null @@ -1,70 +0,0 @@ -/* Generated by the protocol buffer compiler. DO NOT EDIT! */ -/* Generated from: StopCartridgesUpdateRequest.proto */ - -#ifndef PROTOBUF_C_StopCartridgesUpdateRequest_2eproto__INCLUDED -#define PROTOBUF_C_StopCartridgesUpdateRequest_2eproto__INCLUDED - -#include <protobuf-c/protobuf-c.h> - -PROTOBUF_C__BEGIN_DECLS - -#if PROTOBUF_C_VERSION_NUMBER < 1003000 -# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers. -#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION -# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c. -#endif - - -typedef struct _StopCartridgesUpdateRequest StopCartridgesUpdateRequest; - - -/* --- enums --- */ - - -/* --- messages --- */ - -struct _StopCartridgesUpdateRequest -{ - ProtobufCMessage base; -}; -#define STOP_CARTRIDGES_UPDATE_REQUEST__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&stop_cartridges_update_request__descriptor) \ - } - - -/* StopCartridgesUpdateRequest methods */ -void stop_cartridges_update_request__init - (StopCartridgesUpdateRequest *message); -size_t stop_cartridges_update_request__get_packed_size - (const StopCartridgesUpdateRequest *message); -size_t stop_cartridges_update_request__pack - (const StopCartridgesUpdateRequest *message, - uint8_t *out); -size_t stop_cartridges_update_request__pack_to_buffer - (const StopCartridgesUpdateRequest *message, - ProtobufCBuffer *buffer); -StopCartridgesUpdateRequest * - stop_cartridges_update_request__unpack - (ProtobufCAllocator *allocator, - size_t len, - const uint8_t *data); -void stop_cartridges_update_request__free_unpacked - (StopCartridgesUpdateRequest *message, - ProtobufCAllocator *allocator); -/* --- per-message closures --- */ - -typedef void (*StopCartridgesUpdateRequest_Closure) - (const StopCartridgesUpdateRequest *message, - void *closure_data); - -/* --- services --- */ - - -/* --- descriptors --- */ - -extern const ProtobufCMessageDescriptor stop_cartridges_update_request__descriptor; - -PROTOBUF_C__END_DECLS - - -#endif /* PROTOBUF_C_StopCartridgesUpdateRequest_2eproto__INCLUDED */ diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StopCartridgesUpdateResponse.pb-c.c b/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StopCartridgesUpdateResponse.pb-c.c deleted file mode 100644 index fc499aa79..000000000 --- a/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StopCartridgesUpdateResponse.pb-c.c +++ /dev/null @@ -1,72 +0,0 @@ -/* Generated by the protocol buffer compiler. DO NOT EDIT! */ -/* Generated from: StopCartridgesUpdateResponse.proto */ - -/* Do not generate deprecated warnings for self */ -#ifndef PROTOBUF_C__NO_DEPRECATED -#define PROTOBUF_C__NO_DEPRECATED -#endif - -#include "StopCartridgesUpdateResponse.pb-c.h" -void stop_cartridges_update_response__init - (StopCartridgesUpdateResponse *message) -{ - static const StopCartridgesUpdateResponse init_value = STOP_CARTRIDGES_UPDATE_RESPONSE__INIT; - *message = init_value; -} -size_t stop_cartridges_update_response__get_packed_size - (const StopCartridgesUpdateResponse *message) -{ - assert(message->base.descriptor == &stop_cartridges_update_response__descriptor); - return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); -} -size_t stop_cartridges_update_response__pack - (const StopCartridgesUpdateResponse *message, - uint8_t *out) -{ - assert(message->base.descriptor == &stop_cartridges_update_response__descriptor); - return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); -} -size_t stop_cartridges_update_response__pack_to_buffer - (const StopCartridgesUpdateResponse *message, - ProtobufCBuffer *buffer) -{ - assert(message->base.descriptor == &stop_cartridges_update_response__descriptor); - return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); -} -StopCartridgesUpdateResponse * - stop_cartridges_update_response__unpack - (ProtobufCAllocator *allocator, - size_t len, - const uint8_t *data) -{ - return (StopCartridgesUpdateResponse *) - protobuf_c_message_unpack (&stop_cartridges_update_response__descriptor, - allocator, len, data); -} -void stop_cartridges_update_response__free_unpacked - (StopCartridgesUpdateResponse *message, - ProtobufCAllocator *allocator) -{ - if(!message) - return; - assert(message->base.descriptor == &stop_cartridges_update_response__descriptor); - protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); -} -#define stop_cartridges_update_response__field_descriptors NULL -#define stop_cartridges_update_response__field_indices_by_name NULL -#define stop_cartridges_update_response__number_ranges NULL -const ProtobufCMessageDescriptor stop_cartridges_update_response__descriptor = -{ - PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, - "", - "", - "", - "", - sizeof(StopCartridgesUpdateResponse), - 0, - stop_cartridges_update_response__field_descriptors, - stop_cartridges_update_response__field_indices_by_name, - 0, stop_cartridges_update_response__number_ranges, - (ProtobufCMessageInit) stop_cartridges_update_response__init, - NULL,NULL,NULL /* reserved[123] */ -}; diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StopCartridgesUpdateResponse.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StopCartridgesUpdateResponse.pb-c.h deleted file mode 100644 index f173eaa69..000000000 --- a/Software/Embedded_SW/Embedded/Communication/PMR/Diagnostics/StopCartridgesUpdateResponse.pb-c.h +++ /dev/null @@ -1,70 +0,0 @@ -/* Generated by the protocol buffer compiler. DO NOT EDIT! */ -/* Generated from: StopCartridgesUpdateResponse.proto */ - -#ifndef PROTOBUF_C_StopCartridgesUpdateResponse_2eproto__INCLUDED -#define PROTOBUF_C_StopCartridgesUpdateResponse_2eproto__INCLUDED - -#include <protobuf-c/protobuf-c.h> - -PROTOBUF_C__BEGIN_DECLS - -#if PROTOBUF_C_VERSION_NUMBER < 1003000 -# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers. -#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION -# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c. -#endif - - -typedef struct _StopCartridgesUpdateResponse StopCartridgesUpdateResponse; - - -/* --- enums --- */ - - -/* --- messages --- */ - -struct _StopCartridgesUpdateResponse -{ - ProtobufCMessage base; -}; -#define STOP_CARTRIDGES_UPDATE_RESPONSE__INIT \ - { PROTOBUF_C_MESSAGE_INIT (&stop_cartridges_update_response__descriptor) \ - } - - -/* StopCartridgesUpdateResponse methods */ -void stop_cartridges_update_response__init - (StopCartridgesUpdateResponse *message); -size_t stop_cartridges_update_response__get_packed_size - (const StopCartridgesUpdateResponse *message); -size_t stop_cartridges_update_response__pack - (const StopCartridgesUpdateResponse *message, - uint8_t *out); -size_t stop_cartridges_update_response__pack_to_buffer - (const StopCartridgesUpdateResponse *message, - ProtobufCBuffer *buffer); -StopCartridgesUpdateResponse * - stop_cartridges_update_response__unpack - (ProtobufCAllocator *allocator, - size_t len, - const uint8_t *data); -void stop_cartridges_update_response__free_unpacked - (StopCartridgesUpdateResponse *message, - ProtobufCAllocator *allocator); -/* --- per-message closures --- */ - -typedef void (*StopCartridgesUpdateResponse_Closure) - (const StopCartridgesUpdateResponse *message, - void *closure_data); - -/* --- services --- */ - - -/* --- descriptors --- */ - -extern const ProtobufCMessageDescriptor stop_cartridges_update_response__descriptor; - -PROTOBUF_C__END_DECLS - - -#endif /* PROTOBUF_C_StopCartridgesUpdateResponse_2eproto__INCLUDED */ diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/IFS/CartridgeState.pb-c.c b/Software/Embedded_SW/Embedded/Communication/PMR/IFS/CartridgeState.pb-c.c new file mode 100644 index 000000000..2c68013f3 --- /dev/null +++ b/Software/Embedded_SW/Embedded/Communication/PMR/IFS/CartridgeState.pb-c.c @@ -0,0 +1,59 @@ +/* Generated by the protocol buffer compiler. DO NOT EDIT! */ +/* Generated from: CartridgeState.proto */ + +/* Do not generate deprecated warnings for self */ +#ifndef PROTOBUF_C__NO_DEPRECATED +#define PROTOBUF_C__NO_DEPRECATED +#endif + +#include "CartridgeState.pb-c.h" +static const ProtobufCEnumValue cartridge_state__enum_values_by_number[13] = +{ + { "", "", 0 }, + { "", "", 1 }, + { "", "", 2 }, + { "", "", 3 }, + { "", "", 4 }, + { "", "", 5 }, + { "", "", 6 }, + { "", "", 10 }, + { "", "", 11 }, + { "", "", 12 }, + { "", "", 20 }, + { "", "", 21 }, + { "", "", 22 }, +}; +static const ProtobufCIntRange cartridge_state__value_ranges[] = { +{0, 0},{10, 7},{20, 10},{0, 13} +}; +static const ProtobufCEnumValueIndex cartridge_state__enum_values_by_name[13] = +{ + { "", 1 }, + { "", 4 }, + { "", 10 }, + { "", 11 }, + { "", 12 }, + { "", 6 }, + { "", 7 }, + { "", 8 }, + { "", 9 }, + { "", 5 }, + { "", 3 }, + { "", 0 }, + { "", 2 }, +}; +const ProtobufCEnumDescriptor cartridge_state__descriptor = +{ + PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC, + "", + "", + "", + "", + 13, + cartridge_state__enum_values_by_number, + 13, + cartridge_state__enum_values_by_name, + 3, + cartridge_state__value_ranges, + NULL,NULL,NULL,NULL /* reserved[1234] */ +}; diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/IFS/CartridgeState.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/IFS/CartridgeState.pb-c.h new file mode 100644 index 000000000..381762161 --- /dev/null +++ b/Software/Embedded_SW/Embedded/Communication/PMR/IFS/CartridgeState.pb-c.h @@ -0,0 +1,54 @@ +/* Generated by the protocol buffer compiler. DO NOT EDIT! */ +/* Generated from: CartridgeState.proto */ + +#ifndef PROTOBUF_C_CartridgeState_2eproto__INCLUDED +#define PROTOBUF_C_CartridgeState_2eproto__INCLUDED + +#include <protobuf-c/protobuf-c.h> + +PROTOBUF_C__BEGIN_DECLS + +#if PROTOBUF_C_VERSION_NUMBER < 1003000 +# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers. +#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION +# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c. +#endif + + + + +/* --- enums --- */ + +typedef enum _CartridgeState { + CARTRIDGE_STATE__None = 0, + CARTRIDGE_STATE__Absent = 1, + CARTRIDGE_STATE__Present = 2, + CARTRIDGE_STATE__Inserted = 3, + CARTRIDGE_STATE__Empty = 4, + CARTRIDGE_STATE__Full = 5, + CARTRIDGE_STATE__Error = 6, + CARTRIDGE_STATE__Filling = 10, + CARTRIDGE_STATE__FillingCompleted = 11, + CARTRIDGE_STATE__FillingFailed = 12, + CARTRIDGE_STATE__Emptying = 20, + CARTRIDGE_STATE__EmptyingCompleted = 21, + CARTRIDGE_STATE__EmpyingFailed = 22 + PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(CARTRIDGE_STATE) +} CartridgeState; + +/* --- messages --- */ + +/* --- per-message closures --- */ + + +/* --- services --- */ + + +/* --- descriptors --- */ + +extern const ProtobufCEnumDescriptor cartridge_state__descriptor; + +PROTOBUF_C__END_DECLS + + +#endif /* PROTOBUF_C_CartridgeState_2eproto__INCLUDED */ diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/IFS/CartridgeStatus.pb-c.c b/Software/Embedded_SW/Embedded/Communication/PMR/IFS/CartridgeStatus.pb-c.c new file mode 100644 index 000000000..4c4e67fb6 --- /dev/null +++ b/Software/Embedded_SW/Embedded/Communication/PMR/IFS/CartridgeStatus.pb-c.c @@ -0,0 +1,131 @@ +/* Generated by the protocol buffer compiler. DO NOT EDIT! */ +/* Generated from: CartridgeStatus.proto */ + +/* Do not generate deprecated warnings for self */ +#ifndef PROTOBUF_C__NO_DEPRECATED +#define PROTOBUF_C__NO_DEPRECATED +#endif + +#include "CartridgeStatus.pb-c.h" +void cartridge_status__init + (CartridgeStatus *message) +{ + static const CartridgeStatus init_value = CARTRIDGE_STATUS__INIT; + *message = init_value; +} +size_t cartridge_status__get_packed_size + (const CartridgeStatus *message) +{ + assert(message->base.descriptor == &cartridge_status__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t cartridge_status__pack + (const CartridgeStatus *message, + uint8_t *out) +{ + assert(message->base.descriptor == &cartridge_status__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t cartridge_status__pack_to_buffer + (const CartridgeStatus *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &cartridge_status__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +CartridgeStatus * + cartridge_status__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (CartridgeStatus *) + protobuf_c_message_unpack (&cartridge_status__descriptor, + allocator, len, data); +} +void cartridge_status__free_unpacked + (CartridgeStatus *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &cartridge_status__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +static const ProtobufCFieldDescriptor cartridge_status__field_descriptors[4] = +{ + { + "", + 1, + PROTOBUF_C_LABEL_OPTIONAL, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(CartridgeStatus, cartridge), + &cartridge__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "", + 2, + PROTOBUF_C_LABEL_OPTIONAL, + PROTOBUF_C_TYPE_ENUM, + offsetof(CartridgeStatus, has_state), + offsetof(CartridgeStatus, state), + &cartridge_state__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "", + 3, + PROTOBUF_C_LABEL_OPTIONAL, + PROTOBUF_C_TYPE_DOUBLE, + offsetof(CartridgeStatus, has_progresspercentage), + offsetof(CartridgeStatus, progresspercentage), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "", + 4, + PROTOBUF_C_LABEL_OPTIONAL, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(CartridgeStatus, message), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned cartridge_status__field_indices_by_name[] = { + 0, /* field[0] = Cartridge */ + 3, /* field[3] = Message */ + 2, /* field[2] = ProgressPercentage */ + 1, /* field[1] = State */ +}; +static const ProtobufCIntRange cartridge_status__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 4 } +}; +const ProtobufCMessageDescriptor cartridge_status__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "", + "", + "", + "", + sizeof(CartridgeStatus), + 4, + cartridge_status__field_descriptors, + cartridge_status__field_indices_by_name, + 1, cartridge_status__number_ranges, + (ProtobufCMessageInit) cartridge_status__init, + NULL,NULL,NULL /* reserved[123] */ +}; diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/IFS/CartridgeStatus.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/IFS/CartridgeStatus.pb-c.h new file mode 100644 index 000000000..e3e511e13 --- /dev/null +++ b/Software/Embedded_SW/Embedded/Communication/PMR/IFS/CartridgeStatus.pb-c.h @@ -0,0 +1,78 @@ +/* Generated by the protocol buffer compiler. DO NOT EDIT! */ +/* Generated from: CartridgeStatus.proto */ + +#ifndef PROTOBUF_C_CartridgeStatus_2eproto__INCLUDED +#define PROTOBUF_C_CartridgeStatus_2eproto__INCLUDED + +#include <protobuf-c/protobuf-c.h> + +PROTOBUF_C__BEGIN_DECLS + +#if PROTOBUF_C_VERSION_NUMBER < 1003000 +# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers. +#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION +# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c. +#endif + +#include "Cartridge.pb-c.h" +#include "CartridgeState.pb-c.h" + +typedef struct _CartridgeStatus CartridgeStatus; + + +/* --- enums --- */ + + +/* --- messages --- */ + +struct _CartridgeStatus +{ + ProtobufCMessage base; + Cartridge *cartridge; + protobuf_c_boolean has_state; + CartridgeState state; + protobuf_c_boolean has_progresspercentage; + double progresspercentage; + char *message; +}; +#define CARTRIDGE_STATUS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&cartridge_status__descriptor) \ + , NULL, 0, CARTRIDGE_STATE__None, 0, 0, NULL } + + +/* CartridgeStatus methods */ +void cartridge_status__init + (CartridgeStatus *message); +size_t cartridge_status__get_packed_size + (const CartridgeStatus *message); +size_t cartridge_status__pack + (const CartridgeStatus *message, + uint8_t *out); +size_t cartridge_status__pack_to_buffer + (const CartridgeStatus *message, + ProtobufCBuffer *buffer); +CartridgeStatus * + cartridge_status__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void cartridge_status__free_unpacked + (CartridgeStatus *message, + ProtobufCAllocator *allocator); +/* --- per-message closures --- */ + +typedef void (*CartridgeStatus_Closure) + (const CartridgeStatus *message, + void *closure_data); + +/* --- services --- */ + + +/* --- descriptors --- */ + +extern const ProtobufCMessageDescriptor cartridge_status__descriptor; + +PROTOBUF_C__END_DECLS + + +#endif /* PROTOBUF_C_CartridgeStatus_2eproto__INCLUDED */ diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/IFS/InkFillingStatus.pb-c.c b/Software/Embedded_SW/Embedded/Communication/PMR/IFS/InkFillingStatus.pb-c.c new file mode 100644 index 000000000..0054a4146 --- /dev/null +++ b/Software/Embedded_SW/Embedded/Communication/PMR/IFS/InkFillingStatus.pb-c.c @@ -0,0 +1,92 @@ +/* Generated by the protocol buffer compiler. DO NOT EDIT! */ +/* Generated from: InkFillingStatus.proto */ + +/* Do not generate deprecated warnings for self */ +#ifndef PROTOBUF_C__NO_DEPRECATED +#define PROTOBUF_C__NO_DEPRECATED +#endif + +#include "InkFillingStatus.pb-c.h" +void ink_filling_status__init + (InkFillingStatus *message) +{ + static const InkFillingStatus init_value = INK_FILLING_STATUS__INIT; + *message = init_value; +} +size_t ink_filling_status__get_packed_size + (const InkFillingStatus *message) +{ + assert(message->base.descriptor == &ink_filling_status__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t ink_filling_status__pack + (const InkFillingStatus *message, + uint8_t *out) +{ + assert(message->base.descriptor == &ink_filling_status__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t ink_filling_status__pack_to_buffer + (const InkFillingStatus *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &ink_filling_status__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +InkFillingStatus * + ink_filling_status__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (InkFillingStatus *) + protobuf_c_message_unpack (&ink_filling_status__descriptor, + allocator, len, data); +} +void ink_filling_status__free_unpacked + (InkFillingStatus *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &ink_filling_status__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +static const ProtobufCFieldDescriptor ink_filling_status__field_descriptors[1] = +{ + { + "", + 1, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(InkFillingStatus, n_cartridgesstatuses), + offsetof(InkFillingStatus, cartridgesstatuses), + &cartridge_status__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned ink_filling_status__field_indices_by_name[] = { + 0, /* field[0] = CartridgesStatuses */ +}; +static const ProtobufCIntRange ink_filling_status__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor ink_filling_status__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "", + "", + "", + "", + sizeof(InkFillingStatus), + 1, + ink_filling_status__field_descriptors, + ink_filling_status__field_indices_by_name, + 1, ink_filling_status__number_ranges, + (ProtobufCMessageInit) ink_filling_status__init, + NULL,NULL,NULL /* reserved[123] */ +}; diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/IFS/InkFillingStatus.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/IFS/InkFillingStatus.pb-c.h new file mode 100644 index 000000000..61e9317a5 --- /dev/null +++ b/Software/Embedded_SW/Embedded/Communication/PMR/IFS/InkFillingStatus.pb-c.h @@ -0,0 +1,73 @@ +/* Generated by the protocol buffer compiler. DO NOT EDIT! */ +/* Generated from: InkFillingStatus.proto */ + +#ifndef PROTOBUF_C_InkFillingStatus_2eproto__INCLUDED +#define PROTOBUF_C_InkFillingStatus_2eproto__INCLUDED + +#include <protobuf-c/protobuf-c.h> + +PROTOBUF_C__BEGIN_DECLS + +#if PROTOBUF_C_VERSION_NUMBER < 1003000 +# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers. +#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION +# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c. +#endif + +#include "CartridgeStatus.pb-c.h" + +typedef struct _InkFillingStatus InkFillingStatus; + + +/* --- enums --- */ + + +/* --- messages --- */ + +struct _InkFillingStatus +{ + ProtobufCMessage base; + size_t n_cartridgesstatuses; + CartridgeStatus **cartridgesstatuses; +}; +#define INK_FILLING_STATUS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&ink_filling_status__descriptor) \ + , 0,NULL } + + +/* InkFillingStatus methods */ +void ink_filling_status__init + (InkFillingStatus *message); +size_t ink_filling_status__get_packed_size + (const InkFillingStatus *message); +size_t ink_filling_status__pack + (const InkFillingStatus *message, + uint8_t *out); +size_t ink_filling_status__pack_to_buffer + (const InkFillingStatus *message, + ProtobufCBuffer *buffer); +InkFillingStatus * + ink_filling_status__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void ink_filling_status__free_unpacked + (InkFillingStatus *message, + ProtobufCAllocator *allocator); +/* --- per-message closures --- */ + +typedef void (*InkFillingStatus_Closure) + (const InkFillingStatus *message, + void *closure_data); + +/* --- services --- */ + + +/* --- descriptors --- */ + +extern const ProtobufCMessageDescriptor ink_filling_status__descriptor; + +PROTOBUF_C__END_DECLS + + +#endif /* PROTOBUF_C_InkFillingStatus_2eproto__INCLUDED */ diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/IFS/StartInkFillingStatusRequest.pb-c.c b/Software/Embedded_SW/Embedded/Communication/PMR/IFS/StartInkFillingStatusRequest.pb-c.c new file mode 100644 index 000000000..f0d651073 --- /dev/null +++ b/Software/Embedded_SW/Embedded/Communication/PMR/IFS/StartInkFillingStatusRequest.pb-c.c @@ -0,0 +1,72 @@ +/* Generated by the protocol buffer compiler. DO NOT EDIT! */ +/* Generated from: StartInkFillingStatusRequest.proto */ + +/* Do not generate deprecated warnings for self */ +#ifndef PROTOBUF_C__NO_DEPRECATED +#define PROTOBUF_C__NO_DEPRECATED +#endif + +#include "StartInkFillingStatusRequest.pb-c.h" +void start_ink_filling_status_request__init + (StartInkFillingStatusRequest *message) +{ + static const StartInkFillingStatusRequest init_value = START_INK_FILLING_STATUS_REQUEST__INIT; + *message = init_value; +} +size_t start_ink_filling_status_request__get_packed_size + (const StartInkFillingStatusRequest *message) +{ + assert(message->base.descriptor == &start_ink_filling_status_request__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t start_ink_filling_status_request__pack + (const StartInkFillingStatusRequest *message, + uint8_t *out) +{ + assert(message->base.descriptor == &start_ink_filling_status_request__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t start_ink_filling_status_request__pack_to_buffer + (const StartInkFillingStatusRequest *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &start_ink_filling_status_request__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +StartInkFillingStatusRequest * + start_ink_filling_status_request__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (StartInkFillingStatusRequest *) + protobuf_c_message_unpack (&start_ink_filling_status_request__descriptor, + allocator, len, data); +} +void start_ink_filling_status_request__free_unpacked + (StartInkFillingStatusRequest *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &start_ink_filling_status_request__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +#define start_ink_filling_status_request__field_descriptors NULL +#define start_ink_filling_status_request__field_indices_by_name NULL +#define start_ink_filling_status_request__number_ranges NULL +const ProtobufCMessageDescriptor start_ink_filling_status_request__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "", + "", + "", + "", + sizeof(StartInkFillingStatusRequest), + 0, + start_ink_filling_status_request__field_descriptors, + start_ink_filling_status_request__field_indices_by_name, + 0, start_ink_filling_status_request__number_ranges, + (ProtobufCMessageInit) start_ink_filling_status_request__init, + NULL,NULL,NULL /* reserved[123] */ +}; diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/IFS/StartInkFillingStatusRequest.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/IFS/StartInkFillingStatusRequest.pb-c.h new file mode 100644 index 000000000..863a8df2f --- /dev/null +++ b/Software/Embedded_SW/Embedded/Communication/PMR/IFS/StartInkFillingStatusRequest.pb-c.h @@ -0,0 +1,70 @@ +/* Generated by the protocol buffer compiler. DO NOT EDIT! */ +/* Generated from: StartInkFillingStatusRequest.proto */ + +#ifndef PROTOBUF_C_StartInkFillingStatusRequest_2eproto__INCLUDED +#define PROTOBUF_C_StartInkFillingStatusRequest_2eproto__INCLUDED + +#include <protobuf-c/protobuf-c.h> + +PROTOBUF_C__BEGIN_DECLS + +#if PROTOBUF_C_VERSION_NUMBER < 1003000 +# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers. +#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION +# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c. +#endif + + +typedef struct _StartInkFillingStatusRequest StartInkFillingStatusRequest; + + +/* --- enums --- */ + + +/* --- messages --- */ + +struct _StartInkFillingStatusRequest +{ + ProtobufCMessage base; +}; +#define START_INK_FILLING_STATUS_REQUEST__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&start_ink_filling_status_request__descriptor) \ + } + + +/* StartInkFillingStatusRequest methods */ +void start_ink_filling_status_request__init + (StartInkFillingStatusRequest *message); +size_t start_ink_filling_status_request__get_packed_size + (const StartInkFillingStatusRequest *message); +size_t start_ink_filling_status_request__pack + (const StartInkFillingStatusRequest *message, + uint8_t *out); +size_t start_ink_filling_status_request__pack_to_buffer + (const StartInkFillingStatusRequest *message, + ProtobufCBuffer *buffer); +StartInkFillingStatusRequest * + start_ink_filling_status_request__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void start_ink_filling_status_request__free_unpacked + (StartInkFillingStatusRequest *message, + ProtobufCAllocator *allocator); +/* --- per-message closures --- */ + +typedef void (*StartInkFillingStatusRequest_Closure) + (const StartInkFillingStatusRequest *message, + void *closure_data); + +/* --- services --- */ + + +/* --- descriptors --- */ + +extern const ProtobufCMessageDescriptor start_ink_filling_status_request__descriptor; + +PROTOBUF_C__END_DECLS + + +#endif /* PROTOBUF_C_StartInkFillingStatusRequest_2eproto__INCLUDED */ diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/IFS/StartInkFillingStatusResponse.pb-c.c b/Software/Embedded_SW/Embedded/Communication/PMR/IFS/StartInkFillingStatusResponse.pb-c.c new file mode 100644 index 000000000..e5d5c2303 --- /dev/null +++ b/Software/Embedded_SW/Embedded/Communication/PMR/IFS/StartInkFillingStatusResponse.pb-c.c @@ -0,0 +1,92 @@ +/* Generated by the protocol buffer compiler. DO NOT EDIT! */ +/* Generated from: StartInkFillingStatusResponse.proto */ + +/* Do not generate deprecated warnings for self */ +#ifndef PROTOBUF_C__NO_DEPRECATED +#define PROTOBUF_C__NO_DEPRECATED +#endif + +#include "StartInkFillingStatusResponse.pb-c.h" +void start_ink_filling_status_response__init + (StartInkFillingStatusResponse *message) +{ + static const StartInkFillingStatusResponse init_value = START_INK_FILLING_STATUS_RESPONSE__INIT; + *message = init_value; +} +size_t start_ink_filling_status_response__get_packed_size + (const StartInkFillingStatusResponse *message) +{ + assert(message->base.descriptor == &start_ink_filling_status_response__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t start_ink_filling_status_response__pack + (const StartInkFillingStatusResponse *message, + uint8_t *out) +{ + assert(message->base.descriptor == &start_ink_filling_status_response__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t start_ink_filling_status_response__pack_to_buffer + (const StartInkFillingStatusResponse *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &start_ink_filling_status_response__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +StartInkFillingStatusResponse * + start_ink_filling_status_response__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (StartInkFillingStatusResponse *) + protobuf_c_message_unpack (&start_ink_filling_status_response__descriptor, + allocator, len, data); +} +void start_ink_filling_status_response__free_unpacked + (StartInkFillingStatusResponse *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &start_ink_filling_status_response__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +static const ProtobufCFieldDescriptor start_ink_filling_status_response__field_descriptors[1] = +{ + { + "", + 1, + PROTOBUF_C_LABEL_OPTIONAL, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(StartInkFillingStatusResponse, status), + &ink_filling_status__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned start_ink_filling_status_response__field_indices_by_name[] = { + 0, /* field[0] = Status */ +}; +static const ProtobufCIntRange start_ink_filling_status_response__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor start_ink_filling_status_response__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "", + "", + "", + "", + sizeof(StartInkFillingStatusResponse), + 1, + start_ink_filling_status_response__field_descriptors, + start_ink_filling_status_response__field_indices_by_name, + 1, start_ink_filling_status_response__number_ranges, + (ProtobufCMessageInit) start_ink_filling_status_response__init, + NULL,NULL,NULL /* reserved[123] */ +}; diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/IFS/StartInkFillingStatusResponse.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/IFS/StartInkFillingStatusResponse.pb-c.h new file mode 100644 index 000000000..f81547859 --- /dev/null +++ b/Software/Embedded_SW/Embedded/Communication/PMR/IFS/StartInkFillingStatusResponse.pb-c.h @@ -0,0 +1,72 @@ +/* Generated by the protocol buffer compiler. DO NOT EDIT! */ +/* Generated from: StartInkFillingStatusResponse.proto */ + +#ifndef PROTOBUF_C_StartInkFillingStatusResponse_2eproto__INCLUDED +#define PROTOBUF_C_StartInkFillingStatusResponse_2eproto__INCLUDED + +#include <protobuf-c/protobuf-c.h> + +PROTOBUF_C__BEGIN_DECLS + +#if PROTOBUF_C_VERSION_NUMBER < 1003000 +# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers. +#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION +# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c. +#endif + +#include "InkFillingStatus.pb-c.h" + +typedef struct _StartInkFillingStatusResponse StartInkFillingStatusResponse; + + +/* --- enums --- */ + + +/* --- messages --- */ + +struct _StartInkFillingStatusResponse +{ + ProtobufCMessage base; + InkFillingStatus *status; +}; +#define START_INK_FILLING_STATUS_RESPONSE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&start_ink_filling_status_response__descriptor) \ + , NULL } + + +/* StartInkFillingStatusResponse methods */ +void start_ink_filling_status_response__init + (StartInkFillingStatusResponse *message); +size_t start_ink_filling_status_response__get_packed_size + (const StartInkFillingStatusResponse *message); +size_t start_ink_filling_status_response__pack + (const StartInkFillingStatusResponse *message, + uint8_t *out); +size_t start_ink_filling_status_response__pack_to_buffer + (const StartInkFillingStatusResponse *message, + ProtobufCBuffer *buffer); +StartInkFillingStatusResponse * + start_ink_filling_status_response__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void start_ink_filling_status_response__free_unpacked + (StartInkFillingStatusResponse *message, + ProtobufCAllocator *allocator); +/* --- per-message closures --- */ + +typedef void (*StartInkFillingStatusResponse_Closure) + (const StartInkFillingStatusResponse *message, + void *closure_data); + +/* --- services --- */ + + +/* --- descriptors --- */ + +extern const ProtobufCMessageDescriptor start_ink_filling_status_response__descriptor; + +PROTOBUF_C__END_DECLS + + +#endif /* PROTOBUF_C_StartInkFillingStatusResponse_2eproto__INCLUDED */ diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Printing/ProcessParameters.pb-c.c b/Software/Embedded_SW/Embedded/Communication/PMR/Printing/ProcessParameters.pb-c.c index a27a2202e..44acaa3ad 100644 --- a/Software/Embedded_SW/Embedded/Communication/PMR/Printing/ProcessParameters.pb-c.c +++ b/Software/Embedded_SW/Embedded/Communication/PMR/Printing/ProcessParameters.pb-c.c @@ -52,7 +52,7 @@ void process_parameters__free_unpacked assert(message->base.descriptor == &process_parameters__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -static const ProtobufCFieldDescriptor process_parameters__field_descriptors[31] = +static const ProtobufCFieldDescriptor process_parameters__field_descriptors[32] = { { "", @@ -426,8 +426,21 @@ static const ProtobufCFieldDescriptor process_parameters__field_descriptors[31] 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, + { + "", + 32, + PROTOBUF_C_LABEL_OPTIONAL, + PROTOBUF_C_TYPE_DOUBLE, + offsetof(ProcessParameters, has_archeadcleaningmotorspeed), + offsetof(ProcessParameters, archeadcleaningmotorspeed), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, }; static const unsigned process_parameters__field_indices_by_name[] = { + 31, /* field[31] = ArcHeadCleaningMotorSpeed */ 13, /* field[13] = DryerAirFlow */ 17, /* field[17] = DryerBufferLength */ 14, /* field[14] = DryerZone1Temp */ @@ -463,7 +476,7 @@ static const unsigned process_parameters__field_indices_by_name[] = { static const ProtobufCIntRange process_parameters__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 31 } + { 0, 32 } }; const ProtobufCMessageDescriptor process_parameters__descriptor = { @@ -473,7 +486,7 @@ const ProtobufCMessageDescriptor process_parameters__descriptor = "", "", sizeof(ProcessParameters), - 31, + 32, process_parameters__field_descriptors, process_parameters__field_indices_by_name, 1, process_parameters__number_ranges, diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Printing/ProcessParameters.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Printing/ProcessParameters.pb-c.h index 9a6453221..aa762a3d6 100644 --- a/Software/Embedded_SW/Embedded/Communication/PMR/Printing/ProcessParameters.pb-c.h +++ b/Software/Embedded_SW/Embedded/Communication/PMR/Printing/ProcessParameters.pb-c.h @@ -88,10 +88,12 @@ struct _ProcessParameters double lblowertemp; protobuf_c_boolean has_pressurebuildup; double pressurebuildup; + protobuf_c_boolean has_archeadcleaningmotorspeed; + double archeadcleaningmotorspeed; }; #define PROCESS_PARAMETERS__INIT \ { PROTOBUF_C_MESSAGE_INIT (&process_parameters__descriptor) \ - , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } + , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } /* ProcessParameters methods */ diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/ProgressRequest.pb-c.c b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/ProgressRequest.pb-c.c index 3a3aadd3b..b151bea09 100644 --- a/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/ProgressRequest.pb-c.c +++ b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/ProgressRequest.pb-c.c @@ -52,7 +52,7 @@ void progress_request__free_unpacked assert(message->base.descriptor == &progress_request__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -static const ProtobufCFieldDescriptor progress_request__field_descriptors[5] = +static const ProtobufCFieldDescriptor progress_request__field_descriptors[2] = { { "", @@ -78,54 +78,15 @@ static const ProtobufCFieldDescriptor progress_request__field_descriptors[5] = 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, - { - "", - 3, - PROTOBUF_C_LABEL_OPTIONAL, - PROTOBUF_C_TYPE_UINT32, - offsetof(ProgressRequest, has_param1), - offsetof(ProgressRequest, param1), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "", - 4, - PROTOBUF_C_LABEL_OPTIONAL, - PROTOBUF_C_TYPE_UINT32, - offsetof(ProgressRequest, has_param2), - offsetof(ProgressRequest, param2), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, - { - "", - 5, - PROTOBUF_C_LABEL_OPTIONAL, - PROTOBUF_C_TYPE_UINT32, - offsetof(ProgressRequest, has_param3), - offsetof(ProgressRequest, param3), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, }; static const unsigned progress_request__field_indices_by_name[] = { 0, /* field[0] = Amount */ 1, /* field[1] = Delay */ - 2, /* field[2] = Param1 */ - 3, /* field[3] = Param2 */ - 4, /* field[4] = Param3 */ }; static const ProtobufCIntRange progress_request__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 5 } + { 0, 2 } }; const ProtobufCMessageDescriptor progress_request__descriptor = { @@ -135,7 +96,7 @@ const ProtobufCMessageDescriptor progress_request__descriptor = "", "", sizeof(ProgressRequest), - 5, + 2, progress_request__field_descriptors, progress_request__field_indices_by_name, 1, progress_request__number_ranges, diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/ProgressRequest.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/ProgressRequest.pb-c.h index da8eac4f1..1ce2b6d6b 100644 --- a/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/ProgressRequest.pb-c.h +++ b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/ProgressRequest.pb-c.h @@ -30,16 +30,10 @@ struct _ProgressRequest int32_t amount; protobuf_c_boolean has_delay; int32_t delay; - protobuf_c_boolean has_param1; - uint32_t param1; - protobuf_c_boolean has_param2; - uint32_t param2; - protobuf_c_boolean has_param3; - uint32_t param3; }; #define PROGRESS_REQUEST__INIT \ { PROTOBUF_C_MESSAGE_INIT (&progress_request__descriptor) \ - , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } + , 0, 0, 0, 0 } /* ProgressRequest methods */ diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/ProgressResponse.pb-c.c b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/ProgressResponse.pb-c.c index ff0667e61..537f8e763 100644 --- a/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/ProgressResponse.pb-c.c +++ b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/ProgressResponse.pb-c.c @@ -52,7 +52,7 @@ void progress_response__free_unpacked assert(message->base.descriptor == &progress_response__descriptor); protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); } -static const ProtobufCFieldDescriptor progress_response__field_descriptors[2] = +static const ProtobufCFieldDescriptor progress_response__field_descriptors[1] = { { "", @@ -66,27 +66,14 @@ static const ProtobufCFieldDescriptor progress_response__field_descriptors[2] = 0, /* flags */ 0,NULL,NULL /* reserved1,reserved2, etc */ }, - { - "", - 2, - PROTOBUF_C_LABEL_OPTIONAL, - PROTOBUF_C_TYPE_UINT32, - offsetof(ProgressResponse, has_info), - offsetof(ProgressResponse, info), - NULL, - NULL, - 0, /* flags */ - 0,NULL,NULL /* reserved1,reserved2, etc */ - }, }; static const unsigned progress_response__field_indices_by_name[] = { - 1, /* field[1] = Info */ 0, /* field[0] = Progress */ }; static const ProtobufCIntRange progress_response__number_ranges[1 + 1] = { { 1, 0 }, - { 0, 2 } + { 0, 1 } }; const ProtobufCMessageDescriptor progress_response__descriptor = { @@ -96,7 +83,7 @@ const ProtobufCMessageDescriptor progress_response__descriptor = "", "", sizeof(ProgressResponse), - 2, + 1, progress_response__field_descriptors, progress_response__field_indices_by_name, 1, progress_response__number_ranges, diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/ProgressResponse.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/ProgressResponse.pb-c.h index bd1a3141a..de5201ee5 100644 --- a/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/ProgressResponse.pb-c.h +++ b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/ProgressResponse.pb-c.h @@ -28,12 +28,10 @@ struct _ProgressResponse ProtobufCMessage base; protobuf_c_boolean has_progress; double progress; - protobuf_c_boolean has_info; - uint32_t info; }; #define PROGRESS_RESPONSE__INIT \ { PROTOBUF_C_MESSAGE_INIT (&progress_response__descriptor) \ - , 0, 0, 0, 0 } + , 0, 0 } /* ProgressResponse methods */ diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubAllHardwareRequest.pb-c.c b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubAllHardwareRequest.pb-c.c new file mode 100644 index 000000000..5334c1193 --- /dev/null +++ b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubAllHardwareRequest.pb-c.c @@ -0,0 +1,72 @@ +/* Generated by the protocol buffer compiler. DO NOT EDIT! */ +/* Generated from: StubAllHardwareRequest.proto */ + +/* Do not generate deprecated warnings for self */ +#ifndef PROTOBUF_C__NO_DEPRECATED +#define PROTOBUF_C__NO_DEPRECATED +#endif + +#include "StubAllHardwareRequest.pb-c.h" +void stub_all_hardware_request__init + (StubAllHardwareRequest *message) +{ + static const StubAllHardwareRequest init_value = STUB_ALL_HARDWARE_REQUEST__INIT; + *message = init_value; +} +size_t stub_all_hardware_request__get_packed_size + (const StubAllHardwareRequest *message) +{ + assert(message->base.descriptor == &stub_all_hardware_request__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t stub_all_hardware_request__pack + (const StubAllHardwareRequest *message, + uint8_t *out) +{ + assert(message->base.descriptor == &stub_all_hardware_request__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t stub_all_hardware_request__pack_to_buffer + (const StubAllHardwareRequest *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &stub_all_hardware_request__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +StubAllHardwareRequest * + stub_all_hardware_request__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (StubAllHardwareRequest *) + protobuf_c_message_unpack (&stub_all_hardware_request__descriptor, + allocator, len, data); +} +void stub_all_hardware_request__free_unpacked + (StubAllHardwareRequest *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &stub_all_hardware_request__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +#define stub_all_hardware_request__field_descriptors NULL +#define stub_all_hardware_request__field_indices_by_name NULL +#define stub_all_hardware_request__number_ranges NULL +const ProtobufCMessageDescriptor stub_all_hardware_request__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "", + "", + "", + "", + sizeof(StubAllHardwareRequest), + 0, + stub_all_hardware_request__field_descriptors, + stub_all_hardware_request__field_indices_by_name, + 0, stub_all_hardware_request__number_ranges, + (ProtobufCMessageInit) stub_all_hardware_request__init, + NULL,NULL,NULL /* reserved[123] */ +}; diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubAllHardwareRequest.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubAllHardwareRequest.pb-c.h new file mode 100644 index 000000000..d22bddaaf --- /dev/null +++ b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubAllHardwareRequest.pb-c.h @@ -0,0 +1,70 @@ +/* Generated by the protocol buffer compiler. DO NOT EDIT! */ +/* Generated from: StubAllHardwareRequest.proto */ + +#ifndef PROTOBUF_C_StubAllHardwareRequest_2eproto__INCLUDED +#define PROTOBUF_C_StubAllHardwareRequest_2eproto__INCLUDED + +#include <protobuf-c/protobuf-c.h> + +PROTOBUF_C__BEGIN_DECLS + +#if PROTOBUF_C_VERSION_NUMBER < 1003000 +# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers. +#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION +# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c. +#endif + + +typedef struct _StubAllHardwareRequest StubAllHardwareRequest; + + +/* --- enums --- */ + + +/* --- messages --- */ + +struct _StubAllHardwareRequest +{ + ProtobufCMessage base; +}; +#define STUB_ALL_HARDWARE_REQUEST__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&stub_all_hardware_request__descriptor) \ + } + + +/* StubAllHardwareRequest methods */ +void stub_all_hardware_request__init + (StubAllHardwareRequest *message); +size_t stub_all_hardware_request__get_packed_size + (const StubAllHardwareRequest *message); +size_t stub_all_hardware_request__pack + (const StubAllHardwareRequest *message, + uint8_t *out); +size_t stub_all_hardware_request__pack_to_buffer + (const StubAllHardwareRequest *message, + ProtobufCBuffer *buffer); +StubAllHardwareRequest * + stub_all_hardware_request__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void stub_all_hardware_request__free_unpacked + (StubAllHardwareRequest *message, + ProtobufCAllocator *allocator); +/* --- per-message closures --- */ + +typedef void (*StubAllHardwareRequest_Closure) + (const StubAllHardwareRequest *message, + void *closure_data); + +/* --- services --- */ + + +/* --- descriptors --- */ + +extern const ProtobufCMessageDescriptor stub_all_hardware_request__descriptor; + +PROTOBUF_C__END_DECLS + + +#endif /* PROTOBUF_C_StubAllHardwareRequest_2eproto__INCLUDED */ diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubAllHardwareResponse.pb-c.c b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubAllHardwareResponse.pb-c.c new file mode 100644 index 000000000..898aea50b --- /dev/null +++ b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubAllHardwareResponse.pb-c.c @@ -0,0 +1,144 @@ +/* Generated by the protocol buffer compiler. DO NOT EDIT! */ +/* Generated from: StubAllHardwareResponse.proto */ + +/* Do not generate deprecated warnings for self */ +#ifndef PROTOBUF_C__NO_DEPRECATED +#define PROTOBUF_C__NO_DEPRECATED +#endif + +#include "StubAllHardwareResponse.pb-c.h" +void stub_all_hardware_response__init + (StubAllHardwareResponse *message) +{ + static const StubAllHardwareResponse init_value = STUB_ALL_HARDWARE_RESPONSE__INIT; + *message = init_value; +} +size_t stub_all_hardware_response__get_packed_size + (const StubAllHardwareResponse *message) +{ + assert(message->base.descriptor == &stub_all_hardware_response__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t stub_all_hardware_response__pack + (const StubAllHardwareResponse *message, + uint8_t *out) +{ + assert(message->base.descriptor == &stub_all_hardware_response__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t stub_all_hardware_response__pack_to_buffer + (const StubAllHardwareResponse *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &stub_all_hardware_response__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +StubAllHardwareResponse * + stub_all_hardware_response__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (StubAllHardwareResponse *) + protobuf_c_message_unpack (&stub_all_hardware_response__descriptor, + allocator, len, data); +} +void stub_all_hardware_response__free_unpacked + (StubAllHardwareResponse *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &stub_all_hardware_response__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +static const ProtobufCFieldDescriptor stub_all_hardware_response__field_descriptors[5] = +{ + { + "", + 1, + PROTOBUF_C_LABEL_OPTIONAL, + PROTOBUF_C_TYPE_STRING, + 0, /* quantifier_offset */ + offsetof(StubAllHardwareResponse, mcu_serial), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "", + 2, + PROTOBUF_C_LABEL_OPTIONAL, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(StubAllHardwareResponse, headeeprom), + &stub_head_eeprom_data__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "", + 3, + PROTOBUF_C_LABEL_OPTIONAL, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(StubAllHardwareResponse, whseeprom), + &stub_whs_eeprom_data__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "", + 4, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(StubAllHardwareResponse, n_maincardeepromdata), + offsetof(StubAllHardwareResponse, maincardeepromdata), + &stub_main_card_eeprom_read_response__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "", + 5, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(StubAllHardwareResponse, n_dispensereepromdata), + offsetof(StubAllHardwareResponse, dispensereepromdata), + &stub_dispenser_eeprom_response__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned stub_all_hardware_response__field_indices_by_name[] = { + 4, /* field[4] = DispenserEEpromData */ + 1, /* field[1] = HeadEEprom */ + 0, /* field[0] = MCU_Serial */ + 3, /* field[3] = MainCardEEpromData */ + 2, /* field[2] = WhsEEprom */ +}; +static const ProtobufCIntRange stub_all_hardware_response__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 5 } +}; +const ProtobufCMessageDescriptor stub_all_hardware_response__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "", + "", + "", + "", + sizeof(StubAllHardwareResponse), + 5, + stub_all_hardware_response__field_descriptors, + stub_all_hardware_response__field_indices_by_name, + 1, stub_all_hardware_response__number_ranges, + (ProtobufCMessageInit) stub_all_hardware_response__init, + NULL,NULL,NULL /* reserved[123] */ +}; diff --git a/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubAllHardwareResponse.pb-c.h b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubAllHardwareResponse.pb-c.h new file mode 100644 index 000000000..2678952fa --- /dev/null +++ b/Software/Embedded_SW/Embedded/Communication/PMR/Stubs/StubAllHardwareResponse.pb-c.h @@ -0,0 +1,81 @@ +/* Generated by the protocol buffer compiler. DO NOT EDIT! */ +/* Generated from: StubAllHardwareResponse.proto */ + +#ifndef PROTOBUF_C_StubAllHardwareResponse_2eproto__INCLUDED +#define PROTOBUF_C_StubAllHardwareResponse_2eproto__INCLUDED + +#include <protobuf-c/protobuf-c.h> + +PROTOBUF_C__BEGIN_DECLS + +#if PROTOBUF_C_VERSION_NUMBER < 1003000 +# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers. +#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION +# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c. +#endif + +#include "StubHeadEEpromData.pb-c.h" +#include "StubWhsEEpromData.pb-c.h" +#include "StubDispenserEEpromResponse.pb-c.h" +#include "StubMainCardEEpromReadResponse.pb-c.h" + +typedef struct _StubAllHardwareResponse StubAllHardwareResponse; + + +/* --- enums --- */ + + +/* --- messages --- */ + +struct _StubAllHardwareResponse +{ + ProtobufCMessage base; + char *mcu_serial; + StubHeadEEpromData *headeeprom; + StubWhsEEpromData *whseeprom; + size_t n_maincardeepromdata; + StubMainCardEEpromReadResponse **maincardeepromdata; + size_t n_dispensereepromdata; + StubDispenserEEpromResponse **dispensereepromdata; +}; +#define STUB_ALL_HARDWARE_RESPONSE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&stub_all_hardware_response__descriptor) \ + , NULL, NULL, NULL, 0,NULL, 0,NULL } + + +/* StubAllHardwareResponse methods */ +void stub_all_hardware_response__init + (StubAllHardwareResponse *message); +size_t stub_all_hardware_response__get_packed_size + (const StubAllHardwareResponse *message); +size_t stub_all_hardware_response__pack + (const StubAllHardwareResponse *message, + uint8_t *out); +size_t stub_all_hardware_response__pack_to_buffer + (const StubAllHardwareResponse *message, + ProtobufCBuffer *buffer); +StubAllHardwareResponse * + stub_all_hardware_response__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void stub_all_hardware_response__free_unpacked + (StubAllHardwareResponse *message, + ProtobufCAllocator *allocator); +/* --- per-message closures --- */ + +typedef void (*StubAllHardwareResponse_Closure) + (const StubAllHardwareResponse *message, + void *closure_data); + +/* --- services --- */ + + +/* --- descriptors --- */ + +extern const ProtobufCMessageDescriptor stub_all_hardware_response__descriptor; + +PROTOBUF_C__END_DECLS + + +#endif /* PROTOBUF_C_StubAllHardwareResponse_2eproto__INCLUDED */ diff --git a/Software/Embedded_SW/Embedded/DataDef.h b/Software/Embedded_SW/Embedded/DataDef.h index 400f981bb..8a97b0001 100644 --- a/Software/Embedded_SW/Embedded/DataDef.h +++ b/Software/Embedded_SW/Embedded/DataDef.h @@ -25,13 +25,15 @@ //#define FPGA_WATCHDOG_DISABLE //#define FOUR_WINDERS - +#ifdef FOUR_WINDERS +#define BTSR_NO_TFU +#endif //#define USE_POWERSTEP01 -NA //#define EMC_FORCE_MOT_CLOCK_INTERNAL //#define VAC_TEST - +//#define DISPENSER_VALVES_OPEN //#define USE_TUNNEL_PT100 //#define SPECIAL_DISPENSERS @@ -41,6 +43,7 @@ extern bool Special_Dispensers; #define USE_OLD_HEAD_EEPROM +//#define USE_RFID //#define USE_VOC_BUZZER_ALARM #define I2C_2_Data_Transfer_Rate_400kbps @@ -68,6 +71,13 @@ enum VERIFIED = 255 }; +typedef enum Status_Enum +{ + S_NA, + S_SUCCEEDED, + S_FAILED +}STATUS_ENUM; + #define OK 0 #define ERROR 1 diff --git a/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA.c b/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA.c index 21056e162..95651eba2 100644 --- a/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA.c +++ b/Software/Embedded_SW/Embedded/Drivers/FPGA/FPGA.c @@ -434,7 +434,6 @@ uint32_t Read_Speed_Sensor_TypeII()//must be delay between Set_Speed_Sensor_Type temp1/=F1_Prescaler1_reg6; Speed_Hz = temp1; #endif - #warning change the speed from Hz to Cm/Sec return Speed_Hz; } diff --git a/Software/Embedded_SW/Embedded/Drivers/Flash_Memory/FATFS/ff.c b/Software/Embedded_SW/Embedded/Drivers/Flash_Memory/FATFS/ff.c index 3247e7960..00cc64c94 100644 --- a/Software/Embedded_SW/Embedded/Drivers/Flash_Memory/FATFS/ff.c +++ b/Software/Embedded_SW/Embedded/Drivers/Flash_Memory/FATFS/ff.c @@ -111,7 +111,10 @@ #error Wrong include file (ff.h). #endif - +#ifdef _USE_LFN +#undef _USE_LFN +#define _USE_LFN 2 +#endif /* Definitions on sector size */ #if _MAX_SS != 512 && _MAX_SS != 1024 && _MAX_SS != 2048 && _MAX_SS != 4096 #error Wrong sector size. @@ -4033,6 +4036,7 @@ FRESULT f_mkfs ( return (disk_ioctl(pdrv, CTRL_SYNC, 0) == RES_OK) ? FR_OK : FR_DISK_ERR; } +#ifdef 0 #if _MULTI_PARTITION /*-----------------------------------------------------------------------*/ @@ -4326,6 +4330,6 @@ int f_printf ( va_end(arp); return (cc == EOF) ? cc : res; } - +#endif #endif /* !_FS_READONLY */ #endif /* _USE_STRFUNC */ diff --git a/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/RFID_NFC/RFIDTagInfo.h b/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/RFID_NFC/RFIDTagInfo.h index 1df9f3949..70e82cb39 100644 --- a/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/RFID_NFC/RFIDTagInfo.h +++ b/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/RFID_NFC/RFIDTagInfo.h @@ -10,45 +10,74 @@ typedef struct { - char TagUniqueID[8]; //RFID Tag unique ID - char CartSN[16]; //Cartridge serial number - uint32_t InkFactoryID:24; //Ink factory ID - uint32_t FillSysID:16; //Filling system ID number - char WorkOrder[10]; //Color description / ID - char ColorName[12]; //Color description / ID - uint32_t InkCategory:16; //Ink category (TBD) - uint32_t Type_Rev; //TBD – can be formulation # - uint32_t CartridgeSize; //Size in cc - uint32_t FiledInkVol; //Size in cc - char InkBatchNo[10]; //MFG batch No’ - char InkMFGDate[8]; //Date Ink was manufactured (20L container bar-code) - char InkEOLDate[8]; //Ink end of life date - char CartFillDate[8]; //Date cartridge was filled with ink (CFS) - char WasteFillDate[8]; //Date cartridge was filled with waste (Machine) - uint32_t Misc; - uint32_t PluginCounter:16; //Number of times cartridge was plugged in INK Slot - char InkFillStatus; //State indicator - successful state change when starting to fill mid. tank - char InkUsedStatus; - char InkEmptyStatus; - char WasteEmptyStatus; - char WasteFillingStatus; - char WasteFullStatus; - char Blocked; - char Fail; - uint32_t WasteCounter:16; - char MachineIdINL[16]; - char MachineIdWST[16]; - char Spare[13]; - uint32_t Counter; - char TagValid; - char HashValue[32]; - uint32_t Checksum_CRC16:16; + uint8_t tagId[8]; //RFID Tag unique ID + uint8_t Serial[16]; //Cartridge serial number + uint8_t factoryID[3]; //Ink factory ID + uint8_t Padding_1_8bit; //** NA ** Union Padding for 32 bit + //---------------------- + uint16_t fillingSystem; //Filling system ID number + uint8_t workOrder[10]; //Color description / ID + //---------------------- + uint8_t colorName[12]; //Color description / ID + //---------------------- + uint8_t catagory[2]; //Ink category (TBD) + uint16_t Paddind_1_16bit; //** NA ** Union Padding for 32 bit + //---------------------- + uint32_t type; //TBD – can be formulation # + //---------------------- + uint32_t cartSize; //Size in cc + //---------------------- + uint32_t inkVolume; //Size in cc + //---------------------- + uint8_t inkBatch[10]; //MFG batch No’ + uint16_t Paddind_2_16bit; //** NA ** Union Padding for 32 bit + //---------------------- + uint8_t inkMfgDate[8]; //Date Ink was manufactured (20L container bar-code) + //---------------------- + uint8_t inkEolDate[8]; //Ink end of life date + //---------------------- + uint8_t CartFillDate[8]; //Date cartridge was filled with ink (CFS) + //---------------------- + uint8_t WasteFillDate[8];//Date cartridge was filled with waste (Machine) + //---------------------- + uint32_t Misc; + //---------------------- + uint16_t pluginCounter; //Number of times cartridge was plugged in INK Slot + uint8_t inkFill; //State indicator - successful state change when starting to fill mid. tank + uint8_t inkUsed; + //---------------------- + uint8_t inkEmpty; + uint8_t wasteEmpty; + uint8_t wasteFilling; + uint8_t wasteFull; + //---------------------- + uint8_t blocked; + uint8_t fail; + uint16_t wasteCounter; + //---------------------- + uint8_t MachineIdInl[16]; + //---------------------- + uint8_t MachineIdWst[16]; + //---------------------- + uint8_t reserved[13]; + uint8_t Paddind_2_8bit; //** NA ** Union Padding for 32 bit + uint16_t Paddind_3_16bit; //** NA ** Union Padding for 32 bit + //---------------------- + uint32_t counter; + //---------------------- + uint8_t tagValid; + uint8_t Paddind_3_8bit; //** NA ** Union Padding for 32 bit + uint16_t Paddind_4_16bit; //** NA ** Union Padding for 32 bit + //---------------------- + uint8_t HashValue[16]; + //---------------------- + uint64_t Checksum_CRC16; //16 bit? }NFCTag_t; typedef union { NFCTag_t Struct; - char Buf[sizeof(NFCTag_t)]; + uint8_t Buf[sizeof(NFCTag_t)]; }NFC_Tag; #endif /* DRIVERS_I2C_COMMUNICATION_RFID_NFC_RFIDTAGINFO_H_ */ diff --git a/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/WHS_Card/D_MAX11614_ADC/WHS_MAX11614_A2D.c b/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/WHS_Card/D_MAX11614_ADC/WHS_MAX11614_A2D.c index f7253a2e2..fff11f493 100644 --- a/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/WHS_Card/D_MAX11614_ADC/WHS_MAX11614_A2D.c +++ b/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/WHS_Card/D_MAX11614_ADC/WHS_MAX11614_A2D.c @@ -396,8 +396,6 @@ double GetWHSAirFlow(uint8_t OR_Id) //------------------------------ waste volume measurement ------------------------------ -#warning need to update low and high limits and to read the eeprom on the initialization - double DefaultCoefficient = 10.5;//Coefficient is 10.5mV/mm for TI (not water). 9.72//TBD double Coefficient_LowLimit = 0;//TBD double Coefficient_HighLimit = 255;//TBD diff --git a/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/WHS_Card/D_Max5805_ADC_Blower/WHS_Blower.c b/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/WHS_Card/D_Max5805_ADC_Blower/WHS_Blower.c index 764ef0d44..4484f1932 100644 --- a/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/WHS_Card/D_Max5805_ADC_Blower/WHS_Blower.c +++ b/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/WHS_Card/D_Max5805_ADC_Blower/WHS_Blower.c @@ -175,7 +175,6 @@ bool WHS_init_Blower() bool LDACn_value = true; bool AUXn_value = true; bool update = 0; - int i; /* ---- config the WHS card 9555 configuration ----*/ @@ -391,6 +390,8 @@ bool IFS_Clearing_Suction = false; bool IFS_Clearing_SuctionWaiting = false; int midtank_cleared = NUM_OF_MIDTANKS; +bool JobEndSuction = false; + void WHS_Set_IFS_Clearing_Suction (int midtank) { if (JobIsActive()) @@ -405,6 +406,12 @@ void WHS_Set_IFS_Clearing_Suction (int midtank) } Report("------------ WHS_Set_IFS_Clearing_Suction :-----------------", __FILE__,__LINE__, (int) IFS_Clearing_Suction, RpMessage, (int)JobIsActive(), 0); } +#define JobEndSuctionTime 30 +void WHS_Set_JobEndSuction (void) +{ + JobEndSuction = true; + Report("------------ WHS_Set_JobEndSuction :-----------------", __FILE__,__LINE__, (int) JobEndSuction, RpMessage, (int)JobIsActive(), 0); +} #define MAX_ALLOWED_BLOWER_VOLTAGE 4300 #define MIN_ALLOWED_BLOWER_VOLTAGE 2400 @@ -482,6 +489,14 @@ bool WHS_Set_Blower_Control_Closed_Loop(double Q_value) } } + if (JobEndSuction == true) + { + JobEndSuction = false; + Report("------------ Job end Clearing Suction -----------------", __FILE__,__LINE__, (int)4000, RpMessage, (int)JobEndSuctionTime, 0); + Control_Voltage_To_Blower(4000); + close_loop_time = JobEndSuctionTime; + return OK; + } volt = getBlowerState(); WHS_Pid_Testing_Func(Q_value,current_dying_head_flow_Q); //close_loop_time = 1; @@ -614,7 +629,7 @@ uint32_t WHS_Pid_Testing_Func(double setParam,double measuredParam) { float calculated_speed; //float avreageSampleValue = 0; - int i; + //int i; /*WhsBlowerSamples[WhsBlowerSamplesPointer] = measuredParam;//(-1 * TranslatedReadValue); WhsBlowerSamplesPointer++; diff --git a/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/WHS_Card/D_Max5805_ADC_Blower/WHS_Blower.h b/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/WHS_Card/D_Max5805_ADC_Blower/WHS_Blower.h index f5bc52858..3033d6d06 100644 --- a/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/WHS_Card/D_Max5805_ADC_Blower/WHS_Blower.h +++ b/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/WHS_Card/D_Max5805_ADC_Blower/WHS_Blower.h @@ -28,6 +28,8 @@ double get_average_Q(WHS_Flow_Meter ORF_id); bool WHS_Set_Blower_Control_Closed_Loop(double Q_value); void WHS_Start_Blower_Control_Closed_Loop (void); void WHS_Set_IFS_Clearing_Suction (int midtank); +void WHS_Set_JobEndSuction (void); + double WHS_Get_Blower_Control_Closed_Loop_SetPoint(void); void WHS_Set_SetPoint_Q_value(double value); void WHS_enable_control_loop(bool value); diff --git a/Software/Embedded_SW/Embedded/Drivers/Valves/Valve.c b/Software/Embedded_SW/Embedded/Drivers/Valves/Valve.c index 2ae3da453..f5c9c09b5 100644 --- a/Software/Embedded_SW/Embedded/Drivers/Valves/Valve.c +++ b/Software/Embedded_SW/Embedded/Drivers/Valves/Valve.c @@ -111,7 +111,7 @@ bool Validate_Valve(Valves_t Valve_Id) return true; } bool IgnoreMidTank = false; - +#ifdef 0 bool MidTankMitigation = false; int MidTankMitigationOn = 20,MidTankMitigationOff = 10; uint32_t MidtankMitigationControlId[NUM_OF_VALVES] = {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF}; @@ -148,8 +148,9 @@ uint32_t ValveCallback(uint32_t deviceID, uint32_t ReadValue) MidtankMitigationCounter[deviceID] = 0; } } + return OK; } - +#endif void Valve_Command(Valves_t Valve_Id) //1 - OPEN, 0 - CLOSE { if (Validate_Valve(Valve_Id) == false) @@ -421,6 +422,7 @@ void Valve_Set(Valves_t Valve_Id, bool Direction) Report("Mid Tank Valve command ignored - bypass",__FILE__,__LINE__,(int)Valve_Id,RpWarning,Direction,0); return; } +#ifdef 0 if (MidTankMitigation == true) { Report("Mid Tank Valve command mitigation",__FILE__,Valve_Id,(int)Valve_Id,RpWarning,Direction,0); @@ -438,8 +440,8 @@ void Valve_Set(Valves_t Valve_Id, bool Direction) MidtankMitigationControlId[Valve_Id] = 0xFF; } } +#endif } - ValveRequest[Valve_Id].Direction = Direction; Valve_Command( Valve_Id); #endif diff --git a/Software/Embedded_SW/Embedded/Drivers/flash_ram/MCU_E2Prom.h b/Software/Embedded_SW/Embedded/Drivers/flash_ram/MCU_E2Prom.h index bb171dda4..12598ed07 100644 --- a/Software/Embedded_SW/Embedded/Drivers/flash_ram/MCU_E2Prom.h +++ b/Software/Embedded_SW/Embedded/Drivers/flash_ram/MCU_E2Prom.h @@ -33,7 +33,7 @@ typedef enum { EEPROM_STORAGE_MIDTANK_8_B, //EEPROM_STORAGE_SERIAL_NUM, //EEPROM_STORAGE_MAC_ADDR, - EEPROM_STORAGE_DRYER_BACKLASH, + EEPROM_STORAGE_WINDER_CALIBRATION, EEPROM_STORAGE_EMBEDDED_VERSION, EEPROM_ALARM_SUPPORT, EEPROM_ORIFICE1_ZERO_VALUE, diff --git a/Software/Embedded_SW/Embedded/Embedded.cfg b/Software/Embedded_SW/Embedded/Embedded.cfg index f41e56966..f79d85b99 100644 --- a/Software/Embedded_SW/Embedded/Embedded.cfg +++ b/Software/Embedded_SW/Embedded/Embedded.cfg @@ -171,7 +171,7 @@ Program.global.Diagnostics = Task.create("&DiagnosticsTask", DiagnosticsTaskPara var MillisecLowTaskParams = new Task.Params(); MillisecLowTaskParams.instance.name = "MilliSecondLow"; -MillisecLowTaskParams.stackSize = 2048; +MillisecLowTaskParams.stackSize = 4096; MillisecLowTaskParams.priority = 3; Program.global.millisecLow = Task.create("&MillisecLowTask", MillisecLowTaskParams); diff --git a/Software/Embedded_SW/Embedded/Modules/AlarmHandling/AlarmHandling.c b/Software/Embedded_SW/Embedded/Modules/AlarmHandling/AlarmHandling.c index ca6c4d51f..990465fb1 100644 --- a/Software/Embedded_SW/Embedded/Modules/AlarmHandling/AlarmHandling.c +++ b/Software/Embedded_SW/Embedded/Modules/AlarmHandling/AlarmHandling.c @@ -29,12 +29,15 @@ #include "drivers/I2C_Communication/Dispenser_Card/IO_Ports/Dispenser_IO.h" #include <Drivers/I2C_Communication/WHS_Card/D_EMC2302_Fan/WHS_Fan.h> #include "drivers/I2C_Communication/Head_Card/ADC/Head_ADC.h" +#include <Drivers/I2C_Communication/RFID_NFC/I2C_IFS_Mux.h> #include "Common/SWUpdate/FileSystem.h" #include "drivers/Flash_ram/MCU_E2Prom.h" #include "modules/thread/thread_ex.h" #include "modules/heaters/heaters_ex.h" #include "modules/ids/ids_ex.h" +#include "modules/waste/waste_ex.h" +#include "modules/General/process.h" #include <PMR/Diagnostics/Event.pb-c.h> #include <PMR/Diagnostics/EventType.pb-c.h> #include <PMR/Diagnostics/StartEventsNotificationRequest.pb-c.h> @@ -970,9 +973,9 @@ JobEndReasonEnum AlarmHandlingPrepareJob(void *CurrentJob) } } } - if (Configured[Module_Waste]) + if ((IFS_Availability[1] == IFS_RECOGNIZED_INIT_PASSED)&&(IFS_Availability[2] == IFS_RECOGNIZED_INIT_PASSED)) //ifs installed -check cartridges { - FoundReason = Waste_Prepare(); + FoundReason = Waste_CheckState(); } if ((AlarmState[Alarm_i].Status == true)&&(FoundReason == JOB_OK)) { @@ -1005,7 +1008,10 @@ JobEndReasonEnum AlarmHandlingPrepareJob(void *CurrentJob) { JobEndReason = getEndReason(AlarmId); if (JobEndReason!=FoundReason) + { ReportWithPackageFilter(AlarmFilter,"end reason mismatch!!!", __FILE__,AlarmId,JobEndReason, RpMessage, FoundReason, 0); + JobEndReason=FoundReason; + } //AbortJob(AlarmReasonStr); //PrepareReady(Module_Alarms,ModuleFail); ReportWithPackageFilter(AlarmFilter,AlarmReasonStr, __FILE__,__LINE__,AlarmId, RpMessage, DEBUG_LOG_CATEGORY__Error, 0); @@ -1324,7 +1330,7 @@ uint32_t AlarmHandlingLoop(uint32_t tick) case ALARM_SOURCE_TYPE__MotorAlarm: if (CheckMotorAlarms) { - if (FPGA_WD_Occurred == true) + if ((FPGA_WD_Occurred == true)||(MachineReadyForHeating == false)) { Status = false; } diff --git a/Software/Embedded_SW/Embedded/Modules/Diagnostics/DiagnosticsHoming.c b/Software/Embedded_SW/Embedded/Modules/Diagnostics/DiagnosticsHoming.c index 4cd91443b..091df1a3f 100644 --- a/Software/Embedded_SW/Embedded/Modules/Diagnostics/DiagnosticsHoming.c +++ b/Software/Embedded_SW/Embedded/Modules/Diagnostics/DiagnosticsHoming.c @@ -578,6 +578,13 @@ uint32_t Diagnostics_Dryer_MovetoEncoderPosition_Callback(uint32_t MotorId, uint { MessageContainer responseContainer; MotorHomingResponse response = MOTOR_HOMING_RESPONSE__INIT; + ReportWithPackageFilter(DiagnosticsFilter,"Diagnostics_Dryer_MovetoEncoderPosition_Callback time",__FILE__,__LINE__,msec_millisecondCounter,RpMessage,0,0); + if (HomingControlId[MotorId] != 0xff) + { + ReportWithPackageFilter(DiagnosticsFilter,"MotorHomingProgressReport stopped",__FILE__,__LINE__,MotorId,RpMessage,HomingCounter[MotorId],0); + RemoveControlCallback(HomingControlId[MotorId],MotorHomingProgressReport); + HomingControlId[MotorId] = 0xff; + } ReportWithPackageFilter(DiagnosticsFilter,"Store angle of arm drier - ended",__FILE__,__LINE__,(int)(Calculate_Arm_Angle(Drier_Center_read,ReadValue)*360),RpMessage,D_numberOfCycles,0); //ReportWithPackageFilter(DiagnosticsFilter,"Diagnostics_Dryer_MovetoEncoderPosition_Callback",__FILE__,__LINE__,0,RpMessage,CallbackCounter,0); @@ -624,6 +631,7 @@ uint32_t Diagnostics_Dryer_Loading_Callback(uint32_t MotorId, uint32_t ReadValue ReportWithPackageFilter(DiagnosticsFilter,"Loading drier - halted",__FILE__,__LINE__,D_numberOfCycles,RpMessage,LoadArmRounds,0); ReportWithPackageFilter(DiagnosticsFilter,"Store angle of arm drier - halted",__FILE__,__LINE__,(int)(Calculate_Arm_Angle(Drier_Center_read,ReadValue)*360),RpMessage,D_numberOfCycles,0); MotorSetMaxSpeed (HARDWARE_MOTOR_TYPE__MOTO_DRYER_LOADARM, 200); + Diagnostics_Dryer_MovetoEncoderPosition_Callback(HARDWARE_MOTOR_TYPE__MOTO_DRYER_LOADARM,0); } return OK; } @@ -631,7 +639,6 @@ uint32_t Diagnostics_Dryer_Loading_Callback(uint32_t MotorId, uint32_t ReadValue uint32_t Diagnostics_Dryer_Loading(void) { //float Calc_angle; -#warning assuming loading starts from 0 if (dryerbufferlength) LoadArmRounds = (int)dryerbufferlength; MCU_E2PromRead(EEPROM_STORAGE_DRYER_CENTER,&D_DrierPrevLocation); diff --git a/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c b/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c index 6f5b5fe23..774fd105b 100644 --- a/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c +++ b/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c @@ -243,7 +243,7 @@ void LoadConfigurationParameters(ConfigurationParameters *Params) EmbeddedParameters->has_startheatingoninitsequence = true; EmbeddedParameters->startheatingoninitsequence = true; //set to true shlomo 14/5/2019 - EmbeddedParameters->n_generalparameters = 8; + EmbeddedParameters->n_generalparameters = 9; EmbeddedParameters->generalparameters = malloc (sizeof(double)*10); if (EmbeddedParameters->generalparameters) { @@ -255,6 +255,7 @@ void LoadConfigurationParameters(ConfigurationParameters *Params) EmbeddedParameters->generalparameters[5] = 1000.0; //Dispenser initial pressure speed EmbeddedParameters->generalparameters[6] = Diagnostic_Extended_Mode; //Diagnostic Mode SetDiagnosticMode EmbeddedParameters->generalparameters[7] = AutoHoming_JobEnd_PowerOn_off; // + EmbeddedParameters->generalparameters[8] = false; // } EmbeddedParameters->has_currentalarmlowlimit = true; @@ -394,6 +395,11 @@ uint32_t EmbeddedParametersInit(void) else if (EmbeddedParameters->generalparameters[7]< 3.5) IDS_Dispenser_SetAutoHoming_Config(AutoHoming_JobEnd_PowerOn_off); else Report("SetAutoHoming_Config error", __FILE__,__LINE__,(int)(EmbeddedParameters->generalparameters[7]*100), RpMessage, 0, 0); } + if (EmbeddedParameters->n_generalparameters >= 9) + { + if (EmbeddedParameters->generalparameters[9]< 0.5) setPowerOffDisableCleaning(false); + else setPowerOffDisableCleaning(true); + } PowerIdleSetParameters(EmbeddedParameters->switchtoidletimeinseconds,EmbeddedParameters->idledriertemperature,EmbeddedParameters->idleheadtemperature,EmbeddedParameters->idlemixertemperature); return Fresult; @@ -837,10 +843,11 @@ void FlashInitAndLoad(void) uint32_t Bytes = 0; ConfigurationParameters *Params = NULL; - ProcessParameters* ProcessParams = NULL; - UploadProcessParametersRequest* request = NULL; + //ProcessParameters* ProcessParams = NULL; + //UploadProcessParametersRequest* request = NULL; + + //char ProcessParamsPath[50] = "0://SysInfo//ProcessP.cfg"; - char ProcessParamsPath[50] = "0://SysInfo//ProcessP.cfg"; #ifdef WATCHDOG ROM_WatchdogResetDisable(WATCHDOG0_BASE); uint32_t timeout = 0xFFFFFFFFU; diff --git a/Software/Embedded_SW/Embedded/Modules/General/MachineStatus.c b/Software/Embedded_SW/Embedded/Modules/General/MachineStatus.c index 9297d3bb8..4b3f555f4 100644 --- a/Software/Embedded_SW/Embedded/Modules/General/MachineStatus.c +++ b/Software/Embedded_SW/Embedded/Modules/General/MachineStatus.c @@ -20,6 +20,11 @@ #include "PMR/MachineStatus/MachineState.pb-c.h" #include "PMR/MachineStatus/IDSPackLevel.pb-c.h" +#include "PMR/IFS/CartridgeStatus.pb-c.h" +#include "PMR/IFS/InkFillingStatus.pb-c.h" +#include "PMR/IFS/StartInkFillingStatusRequest.pb-c.h" +#include "PMR/IFS/StartInkFillingStatusResponse.pb-c.h" + #include "drivers/I2C_Communication/ADC_MUX/ADC_MUX.h" #include "Drivers/Heater/TemperatureSensor.h" #include "drivers/Motors/Motor.h" @@ -27,8 +32,11 @@ #include "StateMachines/Initialization/InitSequence.h" #include "Modules/General/MachineStatus.h" +#include "Modules/AlarmHandling/AlarmHandling.h" #include "Modules/Control/MillisecTask.h" +#include "modules/waste/waste_ex.h" #include "modules/ids/ids_ex.h" +#include "modules/ifs/ifs.h" MachineState StoredMachineStatus = MACHINE_STATE__PowerUp; bool SetMAchineStateProblem = false; @@ -78,6 +86,7 @@ int MachineUpdateResponseFunc(void) int1valid = false; if((internaltemp2<=MINIMUM_HEATER_READ*100)||(MAXIMUM_HEATER_READ*100<=internaltemp2)) int2valid = false; + MachineStatus.has_overalltemperature = true; if ((int2valid == true)&&(int1valid == true)) { usetemp = (max(internaltemp1,internaltemp2))/100; @@ -89,17 +98,20 @@ int MachineUpdateResponseFunc(void) } else { - AlarmHandlingSetAlarm(EVENT_TYPE__TEMPERATURE_MEASUREMENT_ERROR, true); + //AlarmHandlingSetAlarm(EVENT_TYPE__TEMPERATURE_MEASUREMENT_ERROR, true); temp_measure_alarm = true; if ((int2valid == false)&&(int1valid == true)) usetemp = internaltemp1/100; else if ((int2valid == false)&&(int1valid == false)) + { + MachineStatus.has_overalltemperature = FALSE; usetemp = 0; + } else if ((int1valid == false)&&(int2valid == true)) usetemp = internaltemp2/100; } + MachineStatus.overalltemperature = usetemp; - MachineStatus.has_overalltemperature = true; if (FPGA_Read_limit_Switches(GPI_SW_SPOOL_EXISTS)==LIMIT) @@ -135,7 +147,6 @@ int MachineUpdateResponseFunc(void) return ERROR; - responseContainer = /*MachineUpdate*/createContainer(MESSAGE_TYPE__StartMachineStatusUpdateResponse, MachineUpdateToken, false, &response, &start_machine_status_update_response__pack, &start_machine_status_update_response__get_packed_size); responseContainer.has_continuous = true; responseContainer.continuous = true; @@ -204,4 +215,104 @@ uint32_t StopMachineUpdateFunc(MessageContainer* requestContainer) return OK; } +/*struct _Cartridge +{ + ProtobufCMessage base; + protobuf_c_boolean has_slot; + CartridgeSlot slot; + CartridgeTagContent *tag; + protobuf_c_boolean has_index; + int32_t index; +}; + typedef enum _CartridgeSlot { + CARTRIDGE_SLOT__Ink = 0, + CARTRIDGE_SLOT__WasteMiddle = 1, + CARTRIDGE_SLOT__WasteLower = 2 + PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(CARTRIDGE_SLOT) +} CartridgeSlot; + * */ + +char WasteEmptyingToken[36+1] = {0}; +uint32_t CartridgeStateUpdate(CartridgeSlot Slot,CartridgeState State) +{ + if (WasteEmptyingToken[0] == 0) + return ERROR; + uint32_t status = NOT_SUPPORTED,i; + MessageContainer responseContainer; + CartridgeStatus CartridgeStatus = CARTRIDGE_STATUS__INIT; + Cartridge CartData = CARTRIDGE__INIT; + StartInkFillingStatusResponse response = START_INK_FILLING_STATUS_RESPONSE__INIT; + response.status->n_cartridgesstatuses = MAX_CARTRIDGES; + response.status->cartridgesstatuses[0] = &CartridgeStatus; + CartridgeStatus.has_state = true; + CartridgeStatus.state = State; + CartridgeStatus.cartridge = &CartData; + CartData.has_slot = true; + CartData.slot = Slot; + + + + + /* +struct _CartridgeStatus +{ + ProtobufCMessage base; + Cartridge *cartridge; + protobuf_c_boolean has_state; + CartridgeState state; + protobuf_c_boolean has_progresspercentage; + double progresspercentage; + char *message; +}; + size_t n_cartridgesstatuses; + CartridgeStatus **cartridgesstatuses; +typedef enum _CartridgeState { + CARTRIDGE_STATE__None = 0, + CARTRIDGE_STATE__Absent = 1, + CARTRIDGE_STATE__Exists = 2, + CARTRIDGE_STATE__Inserted = 3, + CARTRIDGE_STATE__Filling = 4, + CARTRIDGE_STATE__FillingCompleted = 5, + CARTRIDGE_STATE__Emptying = 6, + CARTRIDGE_STATE__EmptyingCompleted = 7, + CARTRIDGE_STATE__Empty = 8, + CARTRIDGE_STATE__Full = 9, + CARTRIDGE_STATE__Error = 10 + PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(CARTRIDGE_STATE) +} CartridgeState; + */ + + responseContainer = createContainer(MESSAGE_TYPE__StartInkFillingStatusResponse, WasteEmptyingToken, false, &response, &start_ink_filling_status_response__pack, &start_ink_filling_status_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); + //USBCDCD_sendData(container_buffer, container_size,10); + + SendChars((char*)container_buffer, container_size); + //MessageContainer responseContainer; + + return status; +} + +uint32_t StartInkFillingStatusRequestFunc(MessageContainer* requestContainer) +{ + uint32_t status = NOT_SUPPORTED; + //MessageContainer responseContainer; + +// MachineUpdateInitParams InitParams; + + Report("StartInkFillingStatusRequestFunc",__FILE__,__LINE__,(int)0,RpWarning,(int)0,0); + StartInkFillingStatusRequest* request = start_ink_filling_status_request__unpack(NULL, requestContainer->data.len, requestContainer->data.data); + ustrncpy (WasteEmptyingToken, requestContainer->token,36); + + CartridgeStateUpdate(CARTRIDGE_SLOT__Ink,CARTRIDGE_STATE__None); + CartridgeStateUpdate(CARTRIDGE_SLOT__WasteMiddle,CARTRIDGE_STATE__None); + CartridgeStateUpdate(CARTRIDGE_SLOT__WasteLower,CARTRIDGE_STATE__None); + start_ink_filling_status_request__free_unpacked(request,NULL); + return status; +// case MESSAGE_TYPE__StartWasteEmptyingRequest: + +} diff --git a/Software/Embedded_SW/Embedded/Modules/General/MachineStatus.h b/Software/Embedded_SW/Embedded/Modules/General/MachineStatus.h index 489a8f638..b421785cc 100644 --- a/Software/Embedded_SW/Embedded/Modules/General/MachineStatus.h +++ b/Software/Embedded_SW/Embedded/Modules/General/MachineStatus.h @@ -9,11 +9,16 @@ #define MODULES_GENERAL_MACHINESTATUS_H_ #include <PMR/Common/MessageContainer.pb-c.h> #include "PMR/MachineStatus/MachineState.pb-c.h" +#include "PMR/IFS/CartridgeState.pb-c.h" +#include "PMR/Diagnostics/CartridgeSlot.pb-c.h" uint32_t MachineUpdateInitFunc(MessageContainer* requestContainer); uint32_t StopMachineUpdateFunc(MessageContainer* requestContainer); void SetMachineStatus (MachineState State); int MachineUpdateResponseFunc(void); +uint32_t StartInkFillingStatusRequestFunc(MessageContainer* requestContainer); + +uint32_t CartridgeStateUpdate(CartridgeSlot Slot,CartridgeState State); diff --git a/Software/Embedded_SW/Embedded/Modules/General/process.c b/Software/Embedded_SW/Embedded/Modules/General/process.c index e5595a965..4538d0336 100644 --- a/Software/Embedded_SW/Embedded/Modules/General/process.c +++ b/Software/Embedded_SW/Embedded/Modules/General/process.c @@ -42,6 +42,7 @@ double pressurebuildup = 0; double dryerzone1temp = 0; int32_t tableindex = 0; double headBlowersFlow[2] = {1.0,1.0}; +double ArcCleaningMotorSpeed = 0.0; double dryerbufferMeters = 0; double dryerbufferCentimeters = 0; @@ -149,6 +150,7 @@ uint32_t HandleProcessParameters(ProcessParameters* ProcessParams,bool saveData) dryerbufferCentimeters = dryerbufferlength*76+90; + mininkuptake = ProcessParams->mininkuptake; feedertension = ProcessParams->feedertension; pullertension = ProcessParams->pullertension; @@ -157,6 +159,7 @@ uint32_t HandleProcessParameters(ProcessParameters* ProcessParams,bool saveData) dryerairflow = ProcessParams->dryerairflow; pressurebuildup = ProcessParams->pressurebuildup; dryerzone1temp = ProcessParams->dryerzone1temp; + ArcCleaningMotorSpeed = ProcessParams->archeadcleaningmotorspeed; if (MachineReadyForHeating == false) { diff --git a/Software/Embedded_SW/Embedded/Modules/General/process.h b/Software/Embedded_SW/Embedded/Modules/General/process.h index f7f16d11e..4a1583aa8 100644 --- a/Software/Embedded_SW/Embedded/Modules/General/process.h +++ b/Software/Embedded_SW/Embedded/Modules/General/process.h @@ -20,6 +20,7 @@ extern double dryerairflow; extern double pressurebuildup; extern double dryerzone1temp; extern double headBlowersFlow[2]; +extern double ArcCleaningMotorSpeed; extern int32_t tableindex; diff --git a/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_ex.h b/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_ex.h index 6d50eb926..e85694c48 100644 --- a/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_ex.h +++ b/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_ex.h @@ -47,6 +47,7 @@ double PressureSensorGetPressure(uint8_t SensorId); int HeadBlowersGetRPM(uint8_t fanId); double PressureSensorInit(); void HeadBlowersInit(); +uint32_t HeadBlowerPidRequestMessage(void* request, int BlowerId); void HeadBlowersCfg(); void HeadBlowersControlLoop (); uint32_t HeadBlowerCommandRequestMessage(int blowerId, float flow); diff --git a/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c b/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c index 2abcc2b31..38379d094 100644 --- a/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c +++ b/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c @@ -55,6 +55,7 @@ #define UNDERHEAT_COUNT_LIMIT 3 #define MIN_ALLOWED_PWM 0 #define MAX_ALLOWED_PWM 255 +#define ARC_ALARM_LIMIT 3 int Overheat_Count_Limit = OVERHEAT_COUNT_LIMIT; int Underheat_Count_Limit = UNDERHEAT_COUNT_LIMIT; @@ -107,6 +108,7 @@ HeaterCommand HeaterCmd[HEATER_TYPE_MAX_HEATERS]; uint32_t ControlIdtoHeaterId [HEATER_TYPE_MAX_HEATERS] = {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF}; uint32_t ControlIdtoMaxHeaterId [HEATER_TYPE_MAX_HEATERS] = {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF}; uint32_t OverHeatCounter [HEATER_TYPE_MAX_HEATERS] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; +uint32_t BlowerOverHeatCounter[HEATER_TYPE_MAX_HEATERS] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; uint32_t UnderHeatCounter [HEATER_TYPE_MAX_HEATERS] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; uint32_t MainDryerHeaterMaxTempControl = 0xFF; uint32_t SecondDryerHeaterMaxTempControl = 0xFF; @@ -1110,12 +1112,12 @@ uint32_t HeaterMaxTempCBFunction(uint32_t IfIndex, uint32_t readValue) } return ERROR; } + uint32_t HeaterBlowerMaxTempCBFunction(uint32_t IfIndex, uint32_t readValue) { uint32_t BlowerPt100Read = 0; int index=HEATER_TYPE_MAX_HEATERS; - int32_t MaxreadValue; if (IfIndex>>8 != IfTypeHeaters) { @@ -1143,34 +1145,19 @@ uint32_t HeaterBlowerMaxTempCBFunction(uint32_t IfIndex, uint32_t readValue) } } - if ((BlowerPt100Read >= HeaterControl[index].sensormaxvalue) || (BlowerPt100Read > 25500)) + if (BlowerPt100Read > 25500) { - if(OverHeatCounter[index]++ >= Overheat_Count_Limit) + if(BlowerOverHeatCounter[index]++ >= Overheat_Count_Limit) { - OverHeatCounter[index] = Overheat_Count_Limit; - //?????HeaterReady[index] = false; - if (JobIsActive()&&(HeaterReady[index]==true)) + BlowerOverHeatCounter[index] = Overheat_Count_Limit; + + if ((HeaterReady[index]==false)&&(HeaterPreviousRead[index]>HeaterCmd[index].targettemperatue)) { - JobEndReason = JOB_TEMPERATURE_ALARM; - SendJobProgress(0.0,0,false, "Temperature Error"); - AbortJob("Over Temperature Error"); - //SegmentReady(Module_Heaters,ModuleFail); - ReportWithPackageFilter(HeatersFilter, "Temperature Error",__FILE__,__LINE__,index,RpError, 0,0); - return OK; + ReportWithPackageFilter(HeatersFilter,"DC Heater Over the max temperature, cooling off",__FILE__,index,HeaterPreviousRead[index],RpWarning, HeaterCmd[index].targettemperatue,0); } - //if (getIdleState() == false) - //not idle, not cooling to temp + else { - if ((HeaterReady[index]==false)&&(HeaterPreviousRead[index]>HeaterCmd[index].targettemperatue)) - { - ReportWithPackageFilter(HeatersFilter,"DC Heater Over the max temperature, cooling off",__FILE__,index,HeaterPreviousRead[index],RpWarning, HeaterCmd[index].targettemperatue,0); - } - else - { - ReportWithPackageFilter(HeatersFilter,"DC Heater Over the max temperature, turned off",__FILE__,index,HeaterPreviousRead[index],RpWarning, HeaterReady[index],0); - ReportWithPackageFilter(HeatersFilter,"Heater over the max temperature",__FILE__,index,OverHeatCounter[index],RpWarning,HeaterControl[index].sensormaxvalue, 0); - AlarmHandlingSetAlarm(HeaterEventType[index], true); - } + ReportWithPackageFilter(HeatersFilter,"DC Heater Over the max temperature, turned off",__FILE__,index,HeaterPreviousRead[index],RpWarning, HeaterReady[index],0); } } if (index == HEATER_TYPE__HeadCoverHeater1) @@ -1184,34 +1171,110 @@ uint32_t HeaterBlowerMaxTempCBFunction(uint32_t IfIndex, uint32_t readValue) HeaterRecalculateHeaterParams(HEATER_TYPE__HeadCoverHeater2,0); } HeaterMaxTempFlag[index] = true; - //ReportWithPackageFilter(HeatersFilter,(MinreadValue/100), "Heater Over the max temperature, turned off"); - return OK; - } - if (BlowerPt100Read <= (HeaterControl[index].sensormaxvalue-HeaterControl[index].sensorminvalue)) //was MinreadValue - { - if (HeaterControl[index].sensorminvalue > 0) + } else { + if (BlowerOverHeatCounter[index]) { - if (HeaterMaxTempFlag[index] == true) + if (BlowerPt100Read <= 25300) { - /* ActivateHeater(HEATER_TYPE__DryerMainHeater); - if (HeaterReady[HEATER_TYPE__DryerAirHeater]==false) + BlowerOverHeatCounter[index]--; + if (BlowerOverHeatCounter[index]==0) { - ActivateHeater(HEATER_TYPE__DryerSecondaryHeater); - }*/ - //ReportWithPackageFilter(HeatersFilter, "Heater Cooled Off max temperature, turned on",__FILE__,__LINE__,(MinreadValue/100),RpError, 0,0); + HeaterMaxTempFlag[index] = false; + } } - HeaterMaxTempFlag[index] = false; } - return OK; } + // alarm handling + if ((HeaterPreviousRead[index] >= HeaterControl[index].sensormaxvalue) && (HeaterCmd[index].targettemperatue)) + { + if(OverHeatCounter[index]++ >=Overheat_Count_Limit) + { + OverHeatCounter[index] = Overheat_Count_Limit; + if (JobIsActive()&&(HeaterReady[index]==true)) + { + JobEndReason = JOB_TEMPERATURE_ALARM; + SendJobProgress(0.0,0,false, "Temperature Error"); + AbortJob("Over Temperature Error"); + ReportWithPackageFilter(HeatersFilter, "Temperature Error",__FILE__,__LINE__,index,RpError, 0,0); + return OK; + } - return ERROR; + if ((HeaterReady[index]==false)&&(HeaterPreviousRead[index]>HeaterCmd[index].targettemperatue)) + { + ReportWithPackageFilter(HeatersFilter,"DC Heater Over the max temperature, cooling off",__FILE__,index,HeaterPreviousRead[index],RpWarning, HeaterCmd[index].targettemperatue,0); + } + else + { + ReportWithPackageFilter(HeatersFilter,"DC Heater Over the max temperature, turned off",__FILE__,index,HeaterPreviousRead[index],RpWarning, HeaterReady[index],0); + ReportWithPackageFilter(HeatersFilter,"Heater over the max temperature",__FILE__,index,OverHeatCounter[index],RpWarning,HeaterControl[index].sensormaxvalue, 0); + AlarmHandlingSetAlarm(HeaterEventType[index], true); + } + } + } + else if ((HeaterPreviousRead[index] < HeaterControl[index].sensormaxvalue) && (!HeaterCmd[index].targettemperatue)) + { + if(OverHeatCounter[index]++ >=Overheat_Count_Limit) + { + OverHeatCounter[index] = Overheat_Count_Limit; + AlarmHandlingSetAlarm(HeaterEventType[index], false); + } + } + else if ((HeaterPreviousRead[index]) < (HeaterControl[index].sensorminvalue)) + { + if (HeaterReady[index]==true) + { + ReportWithPackageFilter(HeatersFilter,"Heater under the min temperature",__FILE__,index,UnderHeatCounter[index],RpWarning,HeaterControl[index].sensorminvalue, 0); + ReportWithPackageFilter(HeatersFilter,"Heater under the min temperature more info",__FILE__,HeaterReady[index],GetHeaterState(index),RpWarning,HeaterPreviousRead[index], 0); + } + if(UnderHeatCounter[index]++ >= Underheat_Count_Limit) + { + UnderHeatCounter[index] = Underheat_Count_Limit; + if (JobIsActive()&&(HeaterReady[index]==true)) + { + JobEndReason = JOB_TEMPERATURE_ALARM; + SendJobProgress(0.0,0,false, "Temperature Error"); + AbortJob("Under Temperature Error"); + ReportWithPackageFilter(HeatersFilter, "Temperature Error",__FILE__,__LINE__,index,RpError, 0,0); + return OK; + } + if (HeaterReady[index]==false) + AlarmHandlingSetAlarm(HeaterUnderEventType[index], true); + else + AlarmHandlingSetAlarm(HeaterUnderEventType_B[index], true); + } + } + else //temperature within limits + { + if(UnderHeatCounter[index] ) + { + UnderHeatCounter[index]--; + if (UnderHeatCounter[index]==0) + { + if (HeaterReady[index]==false) + AlarmHandlingSetAlarm(HeaterUnderEventType[index], false); + else + AlarmHandlingSetAlarm(HeaterUnderEventType_B[index], false); + } + } + if(OverHeatCounter[index] ) + { + if ((HeaterPreviousRead[index]) <= (HeaterControl[index].sensormaxvalue-2)) + { + OverHeatCounter[index]--; + if (OverHeatCounter[index]==0) + { + AlarmHandlingSetAlarm(HeaterEventType[index], false); + } + } + } + } + return OK; } + uint32_t DcHeaterMaxTempCBFunction(uint32_t IfIndex, uint32_t readValue) { int index=HEATER_TYPE_MAX_HEATERS; - if (IfIndex>>8 != IfTypeHeaters) { ReportWithPackageFilter(HeatersFilter, "Wrong Interface type",__FILE__,__LINE__,IfIndex,RpError, 0,0); @@ -1221,7 +1284,53 @@ uint32_t DcHeaterMaxTempCBFunction(uint32_t IfIndex, uint32_t readValue) //int32_t readValue = MillisecGetTemperatures(HeaterId2PT100Id[index]); if (HeaterControl[index].sensormaxvalue == 0) return OK; - if ((HeaterPreviousRead[index]) < (HeaterControl[index].sensorminvalue)) + if ((HeaterPreviousRead[index]) >= HeaterControl[index].sensormaxvalue) + { + if(OverHeatCounter[index]++ >=Overheat_Count_Limit) + { + OverHeatCounter[index] = Overheat_Count_Limit; + //?????HeaterReady[index] = false; + if (JobIsActive()&&(HeaterReady[index]==true)) + { + JobEndReason = JOB_TEMPERATURE_ALARM; + SendJobProgress(0.0,0,false, "Temperature Error"); + AbortJob("Over Temperature Error"); + //SegmentReady(Module_Heaters,ModuleFail); + ReportWithPackageFilter(HeatersFilter, "Temperature Error",__FILE__,__LINE__,index,RpError, 0,0); + return OK; + } + //if (getIdleState() == false) + //not idle, not cooling to temp + { + if ((HeaterReady[index]==false)&&(HeaterPreviousRead[index]>HeaterCmd[index].targettemperatue)) + { + ReportWithPackageFilter(HeatersFilter,"DC Heater Over the max temperature, cooling off",__FILE__,index,HeaterPreviousRead[index],RpWarning, HeaterCmd[index].targettemperatue,0); + } + else + { + ReportWithPackageFilter(HeatersFilter,"DC Heater Over the max temperature, turned off",__FILE__,index,HeaterPreviousRead[index],RpWarning, HeaterReady[index],0); + ReportWithPackageFilter(HeatersFilter,"Heater over the max temperature",__FILE__,index,OverHeatCounter[index],RpWarning,HeaterControl[index].sensormaxvalue, 0); + AlarmHandlingSetAlarm(HeaterEventType[index], true); + } + } + } + if (index == HEATER_TYPE__DryerAirHeater) + { + DeActivateHeater(HEATER_TYPE__DryerMainHeater); + HeaterRecalculateSharedHeatersParams(HEATER_TYPE__DryerMainHeater,0); + DeActivateHeater(HEATER_TYPE__DryerSecondaryHeater); + HeaterRecalculateSharedHeatersParams(HEATER_TYPE__DryerSecondaryHeater,0); + } + else + { + DeActivateHeater(index); + HeaterRecalculateHeaterParams(index, 0); + } + HeaterMaxTempFlag[index] = true; + //ReportWithPackageFilter(HeatersFilter,(MinreadValue/100), "Heater Over the max temperature, turned off"); + return OK; + } + else if ((HeaterPreviousRead[index]) < (HeaterControl[index].sensorminvalue)) { if (HeaterReady[index]==true) { @@ -1276,7 +1385,7 @@ uint32_t DcHeaterMaxTempCBFunction(uint32_t IfIndex, uint32_t readValue) } return ERROR; } -bool IncreaseBlower = false; + uint32_t HeaterControlCBFunction(uint32_t IfIndex, uint32_t readValue) { int index=HEATER_TYPE_MAX_HEATERS; @@ -1437,30 +1546,17 @@ uint32_t HeaterControlCBFunction(uint32_t IfIndex, uint32_t readValue) ReportWithPackageFilter(HeatersFilter,"AC Ready",__FILE__,index,readValue,RpWarning,(HeaterCmd[index].targettemperatue), 0); HeaterAtTemp[index] = true; HeaterPrepareReady(); - IncreaseBlower = false; } } - if ( (readValue > (HeaterCmd[index].targettemperatue * ((100-HeaterControl[index].outputproportionalband+2)/100))) - && (readValue < (HeaterCmd[index].targettemperatue * ((100+HeaterControl[index].outputproportionalband)/100)))) + else { - if (IncreaseBlower == false) - { - IncreaseBlower = true; - if (BlowerCfg.enabled == true) + if ((readValue < (HeaterCmd[index].targettemperatue * AcHeatersLoweroperationLimit/1000))||(readValue > (HeaterCmd[index].targettemperatue * AcHeatersUpperoperationLimit/1000)))//read value within 0.5 percent from target { - if(Head_Type > HEAD_TYPE_FLAT_WITHOUT_CARD) - { - WHS_Set_SetPoint_Q_value(headairflow); - } - else - { - Turn_the_Blower_On();//Turn on with the Default_Voltage - if (BlowerCfg.voltage) - Control_Voltage_To_Blower(BlowerCfg.voltage); - } + //InitialHeating = false; + ReportWithPackageFilter(HeatersFilter,"AC NOT Ready",__FILE__,index,readValue,RpWarning,(HeaterCmd[index].targettemperatue), 0); + HeaterAtTemp[index] = false; + HeaterPrepareReady(); } - - } } if(HeaterPIDConfig[index].m_isEnabled && (HeaterPIDConfig[index].m_SetParam != 0)) { @@ -1606,7 +1702,8 @@ uint32_t DCHeaterControlCBFunction(uint32_t IfIndex, uint32_t readValue) } if (readValue < ((HeaterCmd[index].targettemperatue * (100-HeaterControl[index].outputproportionalband))/100)) { - ActivateHeater(index); + if (HeaterMaxTempFlag[index] == false) + ActivateHeater(index); //HeaterRecalculateHeaterParams(index, 100); //Heaters OFF until coming into the proportional band //ReportWithPackageFilter(HeatersFilter,"DC HEATER Under temperature ", __FILE__,__LINE__,index, RpMessage, readValue, 0); @@ -1643,6 +1740,15 @@ uint32_t DCHeaterControlCBFunction(uint32_t IfIndex, uint32_t readValue) HeaterPrepareReady(); } } + else + { + if ((readValue < (HeaterCmd[index].targettemperatue * DcHeatersLoweroperationLimit/1000))||(readValue > (HeaterCmd[index].targettemperatue * DcHeatersUpperoperationLimit/1000)))//read value within 0.5 percent from target + { + ReportWithPackageFilter(HeatersFilter,"DC NOT Ready",__FILE__,index,readValue,RpWarning,(HeaterCmd[index].targettemperatue), 0); + HeaterAtTemp[index] = false; + HeaterPrepareReady(); + } + } if(HeaterPIDConfig[index].m_isEnabled && (HeaterPIDConfig[index].m_SetParam != 0)) { @@ -2095,10 +2201,12 @@ uint32_t HeadBlowerPidFunc(double setParam,double measuredParam, int blowerId) HeadBlowersCloseLoopTime[blowerId] = HeadBlowerControl[blowerId].m_params.dt; if (calculatedPwm < MIN_ALLOWED_PWM) { + //ReportWithPackageFilter(HeatersFilter,"calculatedPwm < MIN_ALLOWED_PWM",__FILE__,__LINE__,calculatedPwm,RpError, MIN_ALLOWED_PWM,0); HeadBlowerControl[blowerId].m_integral = 0; calculatedPwm = MIN_ALLOWED_PWM; } if (calculatedPwm > MAX_ALLOWED_PWM) { + //ReportWithPackageFilter(HeatersFilter,"calculatedPwm > MAX_ALLOWED_PWM",__FILE__,__LINE__,calculatedPwm,RpError, MAX_ALLOWED_PWM,0); HeadBlowerControl[blowerId].m_integral = 0; calculatedPwm = MAX_ALLOWED_PWM; } @@ -2136,63 +2244,105 @@ uint32_t HeadBlowersOffGet() void ArcHeadAlarms(void) { double currentFlow = 0.0; + static int8_t count1 = 0, count2 = 0, count3 = 0, count4 = 0, count5 = 0; + static int8_t count6 = 0, count7 = 0, count8 = 0, count9 = 0, count10 = 0; if (FPGA_Read_limit_Switches(I2C_HEADCARD_COVER_LS_ARC) != LIMIT) { - AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_ARC_LID_IS_OPEN, true); + if (++count9 == ARC_ALARM_LIMIT) + AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_ARC_LID_IS_OPEN, true); + count9 = (count9 > ARC_ALARM_LIMIT)?(ARC_ALARM_LIMIT):(count9); } else { - AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_ARC_LID_IS_OPEN, false); + if (--count9 == 0) + AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_ARC_LID_IS_OPEN, false); + count9 = (count9 < 0)?(0):(count9); } if (FPGA_Read_limit_Switches(I2C_HEADCARD_COVER_LS_TUNNEL_ARC) != LIMIT) { - AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_TUNNEL_LID_IS_OPEN, true); + if (++count10 == ARC_ALARM_LIMIT) + AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_TUNNEL_LID_IS_OPEN, true); + count10 = (count10 > ARC_ALARM_LIMIT)?(ARC_ALARM_LIMIT):(count10); } else { - AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_TUNNEL_LID_IS_OPEN, false); + if (--count10 == 0) + AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_TUNNEL_LID_IS_OPEN, false); + count10 = (count10 < 0)?(0):(count10); } if (Head_Fan_Tach[0] == 0x1FFE) { - AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_1_FAN_STOPPED, true); + if (++count1 == ARC_ALARM_LIMIT) + AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_1_FAN_STOPPED, true); + count1 = (count1 > ARC_ALARM_LIMIT)?(ARC_ALARM_LIMIT):(count1); } else { - AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_1_FAN_STOPPED, false); + if (--count1 == 0) + AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_1_FAN_STOPPED, false); + count1 = (count1 < 0)?(0):(count1); } if (Head_Fan_Tach[1] == 0x1FFE) { - AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_2_FAN_STOPPED, true); + if (++count2 == ARC_ALARM_LIMIT) + AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_2_FAN_STOPPED, true); + count2 = (count2 > ARC_ALARM_LIMIT)?(ARC_ALARM_LIMIT):(count2); } else { - AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_2_FAN_STOPPED, false); + if (--count2 == 0) + AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_2_FAN_STOPPED, false); + count2 = (count2 < 0)?(0):(count2); } if (HeadBlowersGetRPM(0) < 2000) { - AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_1_FAN_RPM_TOO_LOW, true); + if (++count3 == ARC_ALARM_LIMIT) + AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_1_FAN_RPM_TOO_LOW, true); + count3 = (count3 > ARC_ALARM_LIMIT)?(ARC_ALARM_LIMIT):(count3); } else { - AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_1_FAN_RPM_TOO_LOW, false); + if (--count3 == 0) + AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_1_FAN_RPM_TOO_LOW, false); + count3 = (count3 < 0)?(0):(count3); } if (HeadBlowersGetRPM(1) < 2000) { - AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_2_FAN_RPM_TOO_LOW, true); + if (++count4 == ARC_ALARM_LIMIT) + AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_2_FAN_RPM_TOO_LOW, true); + count4 = (count4 > ARC_ALARM_LIMIT)?(ARC_ALARM_LIMIT):(count4); } else { - AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_2_FAN_RPM_TOO_LOW, false); + if (--count4 == 0) + AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_2_FAN_RPM_TOO_LOW, false); + count4 = (count4 < 0)?(0):(count4); } currentFlow = PressureSensorGetPressure(HEAD_PT100_ZONE_5_0X84_0); if (currentFlow > 5.0) { - AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_1_FLOW_TOO_HIGH, true); + if (++count5 == ARC_ALARM_LIMIT) + AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_1_FLOW_TOO_HIGH, true); + count5 = (count5 > ARC_ALARM_LIMIT)?(ARC_ALARM_LIMIT):(count5); } else { - AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_1_FLOW_TOO_HIGH, false); + if (--count5 == 0) + AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_1_FLOW_TOO_HIGH, false); + count5 = (count5 < 0)?(0):(count5); } if (currentFlow < 1.0) { - AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_1_FLOW_TOO_LOW, true); + if (++count6 == ARC_ALARM_LIMIT) + AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_1_FLOW_TOO_LOW, true); + count6 = (count6 > ARC_ALARM_LIMIT)?(ARC_ALARM_LIMIT):(count6); } else { - AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_1_FLOW_TOO_LOW, false); + if (--count6 == 0) + AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_1_FLOW_TOO_LOW, false); + count6 = (count6 < 0)?(0):(count6); } currentFlow = PressureSensorGetPressure(HEAD_PT100_ZONE_7_0X86_0); if (currentFlow > 5.0) { - AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_2_FLOW_TOO_HIGH, true); + if (++count7 == ARC_ALARM_LIMIT) + AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_2_FLOW_TOO_HIGH, true); + count7 = (count7 > ARC_ALARM_LIMIT)?(ARC_ALARM_LIMIT):(count7); } else { - AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_2_FLOW_TOO_HIGH, false); + if (--count7 == 0) + AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_2_FLOW_TOO_HIGH, false); + count7 = (count7 < 0)?(0):(count7); } if (currentFlow < 1.0) { - AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_2_FLOW_TOO_LOW, true); + if (++count8 == ARC_ALARM_LIMIT) + AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_2_FLOW_TOO_LOW, true); + count8 = (count8 > ARC_ALARM_LIMIT)?(ARC_ALARM_LIMIT):(count8); } else { - AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_2_FLOW_TOO_LOW, false); + if (--count8 == 0) + AlarmHandlingSetAlarm(EVENT_TYPE__DYEING_HEAD_BLOWER_2_FLOW_TOO_LOW, false); + count8 = (count8 < 0)?(0):(count8); } } diff --git a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_Cleaning.c b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_Cleaning.c index c06e79311..2e3d61f0c 100644 --- a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_Cleaning.c +++ b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_Cleaning.c @@ -8,6 +8,7 @@ #include "ids.h" #include "ids_ex.h" #include "../control/control.h" +#include "modules/General/process.h" #include "../control/pidalgo.h" #include "../thread/thread.h" #include "PMR/Hardware/Hardwaremotor.pb-c.h" @@ -96,8 +97,11 @@ uint32_t IDS_Cleaning_Move_Actuators() } } else { //arc if (CleaningStageCounter == 0) { - MotorSetSpeed(MotorId, 750); - ReportWithPackageFilter(IDSFilter,"IDS_Cleaning_Motor_Run", __FILE__, __LINE__, 1, RpWarning, CleaningStageCounter, 0); + if (ArcCleaningMotorSpeed>1) + MotorSetSpeed(MotorId, ArcCleaningMotorSpeed); + else + MotorSetSpeed(MotorId, 750); + ReportWithPackageFilter(IDSFilter,"IDS_Cleaning_Motor_Run", __FILE__, __LINE__, 750, RpWarning, (int)ArcCleaningMotorSpeed, 0); } } CleaningStageCounter++; diff --git a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_maint.c b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_maint.c index c55f10277..991f4ecc0 100644 --- a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_maint.c +++ b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_maint.c @@ -217,6 +217,10 @@ uint32_t IDS_HomeDispenserCallback(uint32_t motorId, uint32_t ReadValue) HomingActive[DispenserId]= false; PrimingActive[DispenserId]= false; Control_TCA9534ByPass(DispenserId,DISABLE);// use ENABLE or DISABLE +#ifdef DISPENSER_VALVES_OPEN + if (JobIsActive()==false) + Control3WayValvesWithCallback (DispenserId, Dispenser_Mixer, NULL); //direction: MidTank_Dispenser or Dispenser_Mixer +#endif //close dry air valve in the dispenser Valve_Set(IDS_Id_to_AirValve[DispenserId], Atm_MidTank_OFF); @@ -336,6 +340,10 @@ uint32_t IDS_StopHomeDispenser (uint32_t DispenserId) HomingActive[DispenserId] = false; PrimingActive[DispenserId] = false; Control_TCA9534ByPass(DispenserId,DISABLE);// use ENABLE or DISABLE +#ifdef DISPENSER_VALVES_OPEN + if (JobIsActive()==false) + Control3WayValvesWithCallback (DispenserId, Dispenser_Mixer, NULL); //direction: MidTank_Dispenser or Dispenser_Mixer +#endif if (Extended_Motor_Param[MotorId] == true) Power_Step_01_Dispenser_Mode(DispenserId,Voltage); //MotorSetMicroStep(MotorId, KeepMicrostep[DispenserId]); @@ -564,7 +572,11 @@ void IDS_Dispenser_Init(uint8_t DispenserId) HomingActive[DispenserId]= false; PrimingActive[DispenserId]= false; Valve_Set(IDS_Id_to_AirValve[DispenserId], Atm_MidTank_OFF); +#ifdef DISPENSER_VALVES_OPEN + Control3WayValvesWithCallback (DispenserId, Dispenser_Mixer, NULL); //direction: MidTank_Dispenser or Dispenser_Mixer +#else Control3WayValvesWithCallback ((Valves_t)DispenserId, MidTank_Dispenser, NULL); //direction: MidTank_Dispenser or Dispenser_Mixer +#endif //if (Special_Dispensers == true) { if (ControlIdtoInactiveDispenserId[DispenserId] == 0xFF) diff --git a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c index 0d81e5447..2ad8db9d6 100644 --- a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c +++ b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c @@ -142,7 +142,7 @@ void IDS_Dispenser_SetPreSegmentWFCFValues(double dispenserpresegmentwfcf, doubl uint32_t IDS_DispenserPidRequestMessage(HardwarePidControl* request) { - int Dispenser_i,i; + /*int Dispenser_i,i; //int temp; for (i=0;i<MAX_SYSTEM_DISPENSERS;i++) { @@ -177,7 +177,7 @@ uint32_t IDS_DispenserPidRequestMessage(HardwarePidControl* request) DispenserControlConfig[Dispenser_i].m_preError = 0; DispenserControlConfig[Dispenser_i].m_SetParam = DispensersCtrl[Dispenser_i].outputproportionalcycletime;//need to update SetParams on presegment stage - + */ return OK; } uint32_t DispenserPidControlId[MAX_SYSTEM_DISPENSERS] = {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF}; @@ -558,7 +558,6 @@ bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,doubl int i; int NumofReadyDispensers = 0; TimerMotors_t HW_Motor_Id; - float updatedSpeed,tempSpeed; JobDispenser **Dispensers; //set the speed only before the first segment, speed is constant accros job int Dispenser_i,n_dispensers; @@ -790,29 +789,29 @@ bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,doubl for (Motor_i = 0;Motor_i < MAX_SYSTEM_DISPENSERS;Motor_i++) { TimerMotors_t HW_Motor_Id = DispenserIdToMotorId[Motor_i]; - Pid_Id = Motor_i;/*IDSMotorIdToControlId[Motor_i];*/ - DispenserControlConfig[Motor_i].m_params.MAX = 1; - DispenserControlConfig[Motor_i].m_params.MIN = DispensersControl[Pid_Id].outputproportionalpowerlimit*-1; - DispenserControlConfig[Motor_i].m_params.Kd = DispensersControl[Pid_Id].derivativetime; - DispenserControlConfig[Motor_i].m_params.Kp = DispensersControl[Pid_Id].proportionalgain; - DispenserControlConfig[Motor_i].m_params.Ki = DispensersControl[Pid_Id].integraltime; - DispenserControlConfig[Motor_i].m_params.epsilon = 0.01; - DispenserControlConfig[Motor_i].m_params.dt = eHundredMillisecond; - DispenserControlConfig[Motor_i].m_calculatedError = 0; - DispenserControlConfig[Motor_i].m_integral = 0; - DispenserControlConfig[Motor_i].m_isEnabled = true; - DispenserControlConfig[Motor_i].m_isReady = true; - DispenserControlConfig[Motor_i].m_mesuredParam = 0; - DispenserControlConfig[Motor_i].m_preError = 0; - DispenserControlConfig[Motor_i].m_SetParam = 0;//need to update SetParams on presegment stage - - MotorSetDirection((TimerMotors_t)HW_Motor_Id,MotorsCfg[HW_Motor_Id].directionthreadwize); //set the dispenser to the - /*Start the dispensers to build initial pressure - * check different handling for dispensers that participate in the first segment and idle dispensers - * start control for initial pressure - * - */ - //ValveCommand (Enable,MixerDirection); + /*Pid_Id = Motor_i;//IDSMotorIdToControlId[Motor_i]; + DispenserControlConfig[Motor_i].m_params.MAX = 1; + DispenserControlConfig[Motor_i].m_params.MIN = DispensersControl[Pid_Id].outputproportionalpowerlimit*-1; + DispenserControlConfig[Motor_i].m_params.Kd = DispensersControl[Pid_Id].derivativetime; + DispenserControlConfig[Motor_i].m_params.Kp = DispensersControl[Pid_Id].proportionalgain; + DispenserControlConfig[Motor_i].m_params.Ki = DispensersControl[Pid_Id].integraltime; + DispenserControlConfig[Motor_i].m_params.epsilon = 0.01; + DispenserControlConfig[Motor_i].m_params.dt = eHundredMillisecond; + DispenserControlConfig[Motor_i].m_calculatedError = 0; + DispenserControlConfig[Motor_i].m_integral = 0; + DispenserControlConfig[Motor_i].m_isEnabled = true; + DispenserControlConfig[Motor_i].m_isReady = true; + DispenserControlConfig[Motor_i].m_mesuredParam = 0; + DispenserControlConfig[Motor_i].m_preError = 0; + DispenserControlConfig[Motor_i].m_SetParam = 0;//need to update SetParams on presegment stage + */ + MotorSetDirection((TimerMotors_t)HW_Motor_Id,MotorsCfg[HW_Motor_Id].directionthreadwize); //set the dispenser to the + /*Start the dispensers to build initial pressure + * check different handling for dispensers that participate in the first segment and idle dispensers + * start control for initial pressure + * + */ + //ValveCommand (Enable,MixerDirection); } if (HeaterCheckReady() == true) @@ -866,6 +865,13 @@ bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,doubl ReportWithPackageFilter(IDSFilter,"Inactive dispenser already homing",__FILE__,i,HomingActive[i],RpWarning,PrimingActive[i],0); } } +#ifdef DISPENSER_VALVES_OPEN + else // turn inactive dispenser valve toward the midtank during job + { + if (HomingActive[i] == false) + Control3WayValvesWithCallback ((Valves_t)i, MidTank_Dispenser, NULL); //direction: MidTank_Dispenser or Dispenser_Mixer + } +#endif } } if (NumOfActiveDispensers) @@ -1230,7 +1236,7 @@ uint32_t IDS_Cleaning_Stop_Cleaning_Solution (callback_fptr callback); } if (segmentfirst_speed > MINIMAL_MOTOR_SPEED) { - char IdMessage[100]; + //char IdMessage[100]; segmentfirst_speed *= (100+WFCF); segmentfirst_speed /= 100; DispenserSegmentReady[DispenserId] = false; @@ -1872,7 +1878,11 @@ uint32_t IDSSegmentState(void *SegmentDetails, int SegmentId) { MotorStop(DispenserIdToMotorId[Dispenser_i],Hard_Hiz); } - Control3WayValvesWithCallback (Dispenser_i, MidTank_Dispenser, IDS_Valve_EndValveReady); //direction: MidTank_Dispenser or Dispenser_Mixer +#ifdef DISPENSER_VALVES_OPEN + Control3WayValvesWithCallback (Dispenser_i, Dispenser_Mixer, IDS_Valve_EndValveReady); //direction: MidTank_Dispenser or Dispenser_Mixer +#else + Control3WayValvesWithCallback (Dispenser_i, MidTank_Dispenser, IDS_Valve_EndValveReady); //direction: MidTank_Dispenser or Dispenser_Mixer +#endif CurrentDispenserSpeed[Dispenser_i] = 0; //IDS_Dispenser_Close_Valve_And_Stop_Motor(Dispenser_i,IDS_Valve_EndValveReady); @@ -1881,6 +1891,9 @@ uint32_t IDSSegmentState(void *SegmentDetails, int SegmentId) { // RemoveControlCallback(ControlIdtoInactiveDispenserId[Dispenser_i], IDS_Check_Pressure_Callback ); // ControlIdtoInactiveDispenserId[Dispenser_i] = 0xFF; +#ifdef DISPENSER_VALVES_OPEN + Control3WayValvesWithCallback (Dispenser_i, Dispenser_Mixer, IDS_Valve_EndValveReady); //direction: MidTank_Dispenser or Dispenser_Mixer +#endif IDS_Valve_EndValveReady(Dispenser_i,false); } diff --git a/Software/Embedded_SW/Embedded/Modules/IFS/ifs.c b/Software/Embedded_SW/Embedded/Modules/IFS/ifs.c index 747df1a61..d62ad3a43 100644 --- a/Software/Embedded_SW/Embedded/Modules/IFS/ifs.c +++ b/Software/Embedded_SW/Embedded/Modules/IFS/ifs.c @@ -11,10 +11,13 @@ #include <DataDef.h> #include "PMR/Diagnostics/CartridgeSlot.pb-c.h" #include "PMR/Diagnostics/CartridgeTagContent.pb-c.h" +#include <PMR/Diagnostics/EventType.pb-c.h> +#include "PMR/IFS/CartridgeState.pb-c.h" #include <Drivers/I2C_Communication/RFID_NFC/RFIDTagInfo.h> #include "drivers/FPGA/FPGA_GPIO/FPGA_GPIO.h"//#include "FPGA_GPIO.h" // use for FPGA IO #include "drivers/I2C_Communication/ADC_MUX/ADC_MUX.h" #include "StateMachines/Initialization/PowerOffSequence.h" +#include <Utilities/RfidTagHandling.h> #include "include.h" #include "Modules/IDS/ids_ex.h" @@ -22,7 +25,6 @@ #include "Modules/AlarmHandling/AlarmHandling.h" #include "CartridgeValidationRequest.pb-c.h" #include "CartridgeValidationResponse.pb-c.h" -#include <PMR/Diagnostics/EventType.pb-c.h> #include "drivers/Valves/Valve.h" #include "../control/control.h" #include "Modules/General/buttons.h" @@ -145,6 +147,7 @@ bool CartridgeInkFull() //currently sensor work properly only until 1.6 - 1.8 Liter (TBD) Report("DetectIfCartridgeFinished", __FILE__,__LINE__,int_MidTank_Pressure_1000, RpMessage, int_MidTank_Pressure_1000, 0); //return true; + //IFS_State = CARTRIDGE_STATE__FillingCompleted; } } return false; @@ -229,7 +232,6 @@ bool CartridgeValidationResponseFunc(MessageContainer* requestContainer) } return OK; } - void ResponseDemo(int MidtankId) { inkAuthenticationPass = true; @@ -274,6 +276,7 @@ void midTankStateMachine(void) break; } //check RFID? (TBD) + //IFS_State = CARTRIDGE_STATE__Inserted; // send request for validation to ppc inkAuthenticationPass = 2; //not defined @@ -295,11 +298,13 @@ void midTankStateMachine(void) Report("MidTank Cartridge authentication wait...", __FILE__, __LINE__, authenticationTimeOutCounter, RpMessage, 0, 0); if (authenticationTimeOutCounter > 60) { midTankState = MidTankStateIdle; + //IFS_State = CARTRIDGE_STATE__Error; } break; } if (inkAuthenticationPass == false) { Report("MidTank Cartridge authentication fail", __FILE__, __LINE__, 0, RpMessage, 0, 0); + //IFS_State = CARTRIDGE_STATE__Error; midTankState = MidTankStateIdle; break; } @@ -311,11 +316,13 @@ void midTankStateMachine(void) cart1.color = fastBILNK; Report("Mid-tank not empty", __FILE__, __LINE__, midTankCapacity, RpMessage, MidTankEmptyLimit, 0); midTankState = MidTankStateIdle; + //IFS_State = CARTRIDGE_STATE__Exists; break; } Report("Mid-tank filling in process", __FILE__,__LINE__,(int)(MidTankEmptyLimit*1000), RpMessage, (int)(midTankCapacity*1000), 0); Pannel_Leds(CART_1, MODE_ON); cart1.color = BLINK; + //IFS_State = CARTRIDGE_STATE__Filling; if (midTankCartColor == MIDTANK_8) { @@ -340,6 +347,7 @@ void midTankStateMachine(void) Report("Cartridge extracted during filling!!!", __FILE__, __LINE__, midTankState, RpMessage, 0, 0); Report("Mid-tank # filling fail", __FILE__, __LINE__, midTankState, RpMessage, 0, 0); midTankState = MidTankStateIdle; + //IFS_State = CARTRIDGE_STATE__Absent; } // if time out or emptying done - idle if (midTankTimeoutCounter++ > CartridgeInkTimeout) { @@ -349,6 +357,7 @@ void midTankStateMachine(void) MidTankValvesAction(Cartridge_MidTank_OFF); Report("Mid-tank # filling fail", __FILE__, __LINE__, midTankState, RpMessage, 0, 0); Report("Call customer support", __FILE__, __LINE__, midTankState, RpMessage, 0, 0); + //IFS_State = CARTRIDGE_STATE__Error; midTankState = MidTankStateIdle; } else if (CartridgeInkFull()) { midTankTimeoutCounter = 0; @@ -357,6 +366,7 @@ void midTankStateMachine(void) MidTankValvesAction(Cartridge_MidTank_OFF); Report("Mid-tank # filling done", __FILE__, __LINE__, midTankState, RpMessage, 0, 0); midTankState = MidTankStateIdle; + //IFS_State = CARTRIDGE_STATE__FillingCompleted; } break; default: diff --git a/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Progress.c b/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Progress.c index e4a573e7b..ed5f5e560 100644 --- a/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Progress.c +++ b/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Progress.c @@ -1041,7 +1041,6 @@ void Stub_ProgressRequest(MessageContainer* requestContainer) response.progress = (double)MCU_E2PromProgram(EEPROM_STORAGE_DRYER_CYCLES,request->delay); response.has_progress = true; } - else if(request->amount == 0xB3) //fast refresh for pressure { @@ -1207,6 +1206,14 @@ void Stub_ProgressRequest(MessageContainer* requestContainer) response.has_progress = true; } else + if(request->amount == 0xB20) //Set loading arm cycles + { + LOG_ERROR(request->delay,"Set winding calibration data"); + + response.progress = (double)MCU_E2PromProgram(EEPROM_STORAGE_WINDER_CALIBRATION,request->delay); + response.has_progress = true; + } + else if(request->amount == 0xC3) //suspend I2C task { if (request->delay == 0) @@ -1234,6 +1241,7 @@ void Stub_ProgressRequest(MessageContainer* requestContainer) response.progress = request->delay; response.has_progress = true; } +#ifdef 0 else if(request->amount == 0xC12) { @@ -1261,6 +1269,7 @@ void Stub_ProgressRequest(MessageContainer* requestContainer) response.progress = request->delay; response.has_progress = true; } +#endif else if((request->amount == 0xDF) && (request->delay == 0xDF)) //Power off { diff --git a/Software/Embedded_SW/Embedded/Modules/Thread/ThreadLoad.c b/Software/Embedded_SW/Embedded/Modules/Thread/ThreadLoad.c index 6edc5b3f2..d0d2c1ef7 100644 --- a/Software/Embedded_SW/Embedded/Modules/Thread/ThreadLoad.c +++ b/Software/Embedded_SW/Embedded/Modules/Thread/ThreadLoad.c @@ -16,7 +16,7 @@ #include "Modules/Control/control.h" #include "Modules/General/process.h" #include "Modules/control/pidalgo.h" - +#include "Modules/AlarmHandling/AlarmHandling.h" #include "Modules/heaters/heaters_ex.h" #include "Modules/General/buttons.h" #include "StateMachines/Initialization/InitSequence.h" diff --git a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_Winder.c b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_Winder.c index f4d34284d..0440d2241 100644 --- a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_Winder.c +++ b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_Winder.c @@ -17,7 +17,7 @@ #include "Common/report/report.h" #include "drivers/FPGA/FPGA.h" - +#include "drivers/Flash_ram/MCU_E2Prom.h" #include "drivers/FPGA/FPGA_SPI_Comm.h" #include "drivers/FPGA/FPGA_GPIO/FPGA_GPIO.h" @@ -102,18 +102,25 @@ char ScrewStr[150]; uint32_t InternalWindingConfigMessage(JobSpool* request) { uint32_t status = PASSED; + int limitswitchstartpointoffset = 0; InternalWinderCfg.segmentoffsetpulses = request->segmentoffsetpulses; InternalWinderCfg.spoolbackingrate = request->backingrate; InternalWinderCfg.startoffsetpulses = request->startoffsetpulses; if (request->has_limitswitchstartpointoffset) { - InternalWinderCfg.startoffsetpulses += request->limitswitchstartpointoffset; + //InternalWinderCfg.startoffsetpulses += request->limitswitchstartpointoffset; Report("limit switch start point offset",__FILE__,__LINE__,(int)(request->startoffsetpulses),RpWarning,(int)(request->limitswitchstartpointoffset), 0); } + status |= MCU_E2PromRead(EEPROM_STORAGE_WINDER_CALIBRATION,&limitswitchstartpointoffset); + if ((status!= OK )||(limitswitchstartpointoffset == 0xFFFF)) + limitswitchstartpointoffset = 0; + Report("limit switch start point offset",__FILE__,(int)(request->startoffsetpulses),(int)(limitswitchstartpointoffset),RpWarning,status, 0); + InternalWinderCfg.startoffsetpulses += limitswitchstartpointoffset; + InternalWinderCfg.SpoolBottomBackingRate = request->bottombackingrate; InternalWinderCfg.NumberOfRotationPerPassage = 3.1415926*3;//request->rotationsperpassage; - if (request->rotationsperpassage > 6.1) + if (request->rotationsperpassage > 5.1) InternalWinderCfg.NumberOfRotationPerPassage = request->rotationsperpassage; if (NumberOfRotationPerPassage > 1) { @@ -241,6 +248,7 @@ uint32_t Winder_PrepareStage2(uint32_t deviceID, uint32_t ReadValue) LOG_ERROR(deviceID,"Screw failed to reach the limit switch!!"); //returned with a timeout Winder_ScrewAtOffsetCallback(0,0); + PrepareReady(Module_Winder, ModuleFail); } else //short jog, etc { @@ -356,7 +364,9 @@ uint32_t Screw100msecDirectionChange(uint32_t deviceID, uint32_t BusyFlag) { //uint32_t Steps; double temp,tempScrewSpeed; - int i,tempmot; +#ifdef FOUR_WINDERS + int tempmot; +#endif //double screw_horizontal_speed = 0; //double RotationsPerSecond; if (WinderMotorSpeedCounter++>=MAX_WINDER_SPEED_CALCULATION) diff --git a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c index e7336cc9d..25f322b2e 100644 --- a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c +++ b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c @@ -337,7 +337,7 @@ uint32_t PoolerThreadLengthCBFunction(uint32_t IfIndex, uint32_t ReadValue) }**/ //} -#ifdef FOUR_WINDERS +#ifdef BTSR_NO_TFU if (CurrentControlledSpeed[WINDER_MOTOR]>100) length = dyeingspeed/10; #endif @@ -560,7 +560,6 @@ uint32_t ThreadControlCBFunction(uint32_t IfIndex, uint32_t ReadValue) //extern int MotorSamplePointer[MAX_THREAD_MOTORS_NUM]; //read value is the dancer angle int i,index=MAX_THREAD_MOTORS_NUM; - int len; int DancerId; int32_t TranslatedReadValue, avreageSampleValue = 0;//,avreageMotorSampleValue = 0; //double tempcalcspeed = 0; @@ -747,7 +746,7 @@ uint32_t ThreadControlCBFunction(uint32_t IfIndex, uint32_t ReadValue) if (index >= WINDER_MOTOR) { // FirstCalcInJob = false; - len = usnprintf(ATMessage[index], 150, "index %d read %d avg %d error(6) %d integral(9) %d,delta(9) %d, calc(3) %d speed %d %d",index-WINDER_MOTOR+1, + usnprintf(ATMessage[index], 150, "index %d read %d avg %d error(6) %d integral(9) %d,delta(9) %d, calc(3) %d speed %d %d",index-WINDER_MOTOR+1, TranslatedReadValue,avreageSampleValue,(int)(MotorControlConfig[index].m_mesuredParam*1000000), (int)(MotorControlConfig[index].m_integral*1000000000),(int)((MotorControlConfig[index].m_mesuredParam*MotorControlConfig[index].m_params.dt)*1000000000), (int)(MotorControlConfig[index].m_calculatedError*1000),(int)calculated_speed, (int)(InitialDryerSpeed*100/OriginalMotorSpd_2PPS[DRYER_MOTOR])); @@ -784,7 +783,6 @@ uint32_t ThreadControlCBFunction(uint32_t IfIndex, uint32_t ReadValue) ReportWithPackageFilter(ThreadFilter,"MotorSpeedUpdated",__FILE__,index,(int)OriginalMotorSpd_2PPS[index],RpWarning,(int)CurrentControlledSpeed[index],0); }*/ #ifdef TEST_PID_THREAD - int len; if ((JobCounter % 2000) == index*100) //if (keepdata == true) { @@ -796,7 +794,7 @@ uint32_t ThreadControlCBFunction(uint32_t IfIndex, uint32_t ReadValue) NormError[controlIndex] = MotorControlConfig[index].m_mesuredParam; mIntegral[controlIndex] = MotorControlConfig[index].m_integral; timestamp[controlIndex] = msec_millisecondCounter;*/ - len = usnprintf(TMessage, 150, "read %d avg %d error(6) %d integral(9) %d,delta(9) %d, calc(3) %d speed %d", + usnprintf(TMessage, 150, "read %d avg %d error(6) %d integral(9) %d,delta(9) %d, calc(3) %d speed %d", ReadValue,avreageSampleValue,(int)(MotorControlConfig[index].m_mesuredParam*1000000), (int)(MotorControlConfig[index].m_integral*1000000000),(int)((MotorControlConfig[index].m_mesuredParam*MotorControlConfig[index].m_params.dt)*1000000000), (int)(MotorControlConfig[index].m_calculatedError*1000),(int)calculated_speed); @@ -916,7 +914,7 @@ uint32_t Release_Right_TFU_TensionCallback(uint32_t deviceID, uint32_t BusyFlag) uint32_t Release_Right_TFU_Tension() { uint32_t status = OK; -#ifndef FOUR_WINDERS +#ifndef BTSR_NO_TFU if (RTFU_Up == true) { Report("Release_Right_TFU_Tension",__FILE__,__LINE__,HARDWARE_MOTOR_TYPE__MOTO_RDANCER,RpMessage,MotorsCfg[HARDWARE_MOTOR_TYPE__MOTO_RDANCER].pulseperround/4,0); @@ -930,7 +928,7 @@ int SecondFeederCorrection = 4; int PrepareWaitCount = 0; uint32_t Adjust_Right_TFU_Tension_2nd_Callback(uint32_t MotorId, uint32_t ReadValue) { -#ifndef FOUR_WINDERS +#ifndef BTSR_NO_TFU MotorStop (HARDWARE_MOTOR_TYPE__MOTO_RDANCER,Soft_Stop); //per L6470 errata between mov and run commands Report("Adjust_Right_TFU_Tension_2ndCallback x more steps",__FILE__,__LINE__,MotorId,RpMessage,SecondFeederCorrection,0); if (JobIsActive()==false) @@ -954,7 +952,7 @@ uint32_t Adjust_Right_TFU_Tension_2nd_Callback(uint32_t MotorId, uint32_t ReadVa } uint32_t Adjust_Right_TFU_Tension_Callback(uint32_t MotorId, uint32_t ReadValue) { -#ifndef FOUR_WINDERS +#ifndef BTSR_NO_TFU Report("Adjust_Right_TFU_Tension_Callback",__FILE__,__LINE__,MotorId,RpMessage,0,0); MotorMoveWithCallback(HARDWARE_MOTOR_TYPE__MOTO_RDANCER, 1-MotorsCfg[HARDWARE_MOTOR_TYPE__MOTO_RDANCER].directionthreadwize,SecondFeederCorrection* MotorsCfg[HARDWARE_MOTOR_TYPE__MOTO_RDANCER].microstep, Adjust_Right_TFU_Tension_2nd_Callback,1000); RTFU_Up = true; @@ -965,7 +963,7 @@ uint32_t Adjust_Right_TFU_Tension_Callback(uint32_t MotorId, uint32_t ReadValue) uint32_t Adjust_Right_TFU_Tension(double tension) { uint32_t status = OK; -#ifndef FOUR_WINDERS +#ifndef BTSR_NO_TFU if (tension > 0.5) //0 = lower position, 1 = high position { if (FPGA_Read_limit_Switches(GPI_LS_RDANCER_UP) == NO_LIMIT) @@ -1092,7 +1090,7 @@ uint32_t ThreadPrepareState(void *JobDetails) IntersegmentLength = JobTicket->intersegmentlength; PrepareWaitCount = 0; -#ifndef FOUR_WINDERS +#ifndef BTSR_NO_TFU status = ThreadPrepare_Tension (HARDWARE_DANCER_TYPE__LeftDancer, windertension); ReportWithPackageFilter(ThreadFilter,"ThreadPrepare_Tension Winder",__FILE__,HARDWARE_DANCER_TYPE__LeftDancer,PrepareWaitCount,RpWarning,(int)windertension,0); status = ThreadPrepare_Tension (HARDWARE_DANCER_TYPE__MiddleDancer, pullertension); @@ -1214,7 +1212,7 @@ uint32_t ThreadPrepareState(void *JobDetails) ///////////////////////////////////////////////////// MotorSetDirection((TimerMotors_t)HW_Motor_Id,MotorsCfg[HW_Motor_Id].directionthreadwize); -#ifndef FOUR_WINDERS +#ifndef BTSR_NO_TFU if (Motor_i == FEEDER_MOTOR) // dryer motor is speed controlled. later a speed sensor will be utilized, but for now it will not be controlled { ReportWithPackageFilter(ThreadFilter,"Feeder Control",__FILE__,Motor_i,MotorControlConfig[Motor_i].m_params.Kp,RpWarning,MotorControlConfig[Motor_i].m_params.Ki,0); @@ -1241,7 +1239,7 @@ uint32_t ThreadPrepareState(void *JobDetails) PoolerLengthCalculationMultiplier = (MotorsCfg[ThreadMotorIdToMotorId[Motor_i]].pulleyradius*2*PI)/(MotorsCfg[ThreadMotorIdToMotorId[Motor_i]].pulseperround*MotorsCfg[ThreadMotorIdToMotorId[Motor_i]].microstep); PoolerSpeedControlId = AddControlCallback(NULL,PoolerThreadLengthCBFunction, eHundredMillisecond,MotorGetPositionFromFPGA,(IfTypeThread*0x100+Motor_i),ThreadMotorIdToMotorId[Motor_i],Motor_i); } -#ifndef FOUR_WINDERS +#ifndef BTSR_NO_TFU if (Motor_i == FEEDER_MOTOR) // dryer motor is speed controlled. later a speed sensor will be utilized, but for now it will not be controlled { if (ControlIdtoMotorId[Motor_i] != 0xFF) diff --git a/Software/Embedded_SW/Embedded/Modules/Waste/Waste_ex.h b/Software/Embedded_SW/Embedded/Modules/Waste/Waste_ex.h index 996191b63..cebfba762 100644 --- a/Software/Embedded_SW/Embedded/Modules/Waste/Waste_ex.h +++ b/Software/Embedded_SW/Embedded/Modules/Waste/Waste_ex.h @@ -44,9 +44,11 @@ bool WHS_IsContainerFull(); bool WHS_WasteCartridgeLowerPresent(); bool WHS_WasteCartridgeMiddlePresent(); bool WHS_IsEmptying(); +uint32_t Waste_CheckState(void); uint32_t Waste_Prepare(void); bool WHS_IsVocPpmOverAlarmLimit(); + extern bool ReadingVocEverySec; #endif diff --git a/Software/Embedded_SW/Embedded/Modules/Waste/Waste_maint.c b/Software/Embedded_SW/Embedded/Modules/Waste/Waste_maint.c index 28a5720ab..267a4e7be 100644 --- a/Software/Embedded_SW/Embedded/Modules/Waste/Waste_maint.c +++ b/Software/Embedded_SW/Embedded/Modules/Waste/Waste_maint.c @@ -6,11 +6,13 @@ #include "drivers/Valves/Valve.h" #include "Common/report/report.h" #include "Modules/Waste/Waste_ex.h" +#include "modules/heaters/heaters_ex.h" #include <Drivers/I2C_Communication/RFID_NFC/RFIDTagInfo.h> #include "Drivers/I2C_Communication/RFID_NFC/logi-tag/LT_RFID.h" #include <Drivers/I2C_Communication/RFID_NFC/NFC_MainBaord.h> #include "Drivers/I2C_Communication/RFID_NFC/NFC.h" -//#include <Utilities/RfidTagHandling.h> +#include <Utilities/RfidTagHandling.h> +#include "PMR/IFS/CartridgeState.pb-c.h" #include <PMR/Diagnostics/EventType.pb-c.h> #include "Modules/AlarmHandling/AlarmHandling.h" @@ -19,6 +21,7 @@ #include "CartridgeValidationRequest.pb-c.h" #include "CartridgeValidationResponse.pb-c.h" #include "Modules/General/buttons.h" +#include "modules/General/process.h" #include "Modules/IFS/ifs.h" #include <Drivers/I2C_Communication/I2C_Task.h> #include <Drivers/I2C_Communication/WHS_Card/D_MAX11614_ADC/WHS_MAX11614_A2D.h> @@ -329,7 +332,6 @@ uint32_t Waste_DoorOpenDuringEmptying(uint32_t IfIndex, uint32_t ReadValue) } } return OK; -#warning add alarm on door open } void Waste_StateMachine_OneSecond_Call(void) @@ -501,7 +503,7 @@ void Waste_StateMachine(void) break; } } -uint32_t Waste_Prepare(void) +uint32_t Waste_CheckState(void) { //check if the waste is ready to run - waste level not above overflow level and no cartridge in the slots if (wasteLevel > wasteLevelOverflow) @@ -528,6 +530,62 @@ uint32_t Waste_Prepare(void) return JOB_WASTE_HANDLING_PROBLEM; } } +bool WHS_FlowReady = false,HeadIn_FlowReady = false,HeadOut_FlowReady = false; +uint32_t WasteReadyControlId = 0xFF; +uint32_t Waste_PrepareCallbak(uint32_t IfIndex, uint32_t ReadValue) +{ + bool ready = false, headready = false,whsready = false; + double HeadFlow = GetWHSAirFlow(HEAD_FLOW_METER); + double HeadIn_Flow = PressureSensorGetPressure(HEAD_PT100_ZONE_5_0X84_0); + double HeadOut_Flow = PressureSensorGetPressure(HEAD_PT100_ZONE_7_0X86_0); + if ((HeadFlow<(headairflow*1.07))&&(HeadFlow>(headairflow*0.93))) + { + if (WHS_FlowReady == false) + Report("Module waste WHS_FlowReady ready", __FILE__, __LINE__, (int)(HeadFlow*100), RpMessage, WHS_FlowReady, 0); + WHS_FlowReady = true; + } + if ((HeadIn_Flow<(headBlowersFlow[0]*1.07))&&(HeadIn_Flow>(headBlowersFlow[0]*0.93))) + { + if (HeadIn_FlowReady == false) + Report("Module waste HeadIn_FlowReady ready", __FILE__, __LINE__, (int)(HeadIn_Flow*100), RpMessage, HeadIn_FlowReady, 0); + HeadIn_FlowReady = true; + } + if ((HeadOut_Flow<(headBlowersFlow[1]*1.07))&&(HeadOut_Flow>(headBlowersFlow[1]*0.93))) + { + if (HeadOut_FlowReady == false) + Report("Module waste HeadOut_FlowReady ready", __FILE__, __LINE__, (int)(HeadOut_Flow*100), RpMessage, WHS_FlowReady, 0); + HeadOut_FlowReady = true; + } + if (Head_Type <HEAD_TYPE_FLAT) + headready = true; + else if ((HeadIn_FlowReady == true)&&(HeadOut_FlowReady == true)) + headready = true; + if (WHS_Type == WHS_TYPE_UNKNOWN) + whsready = true; + else if (WHS_FlowReady == true) + whsready = true; + if ((headready == true)&&(whsready == true)) + ready = true; + if (ready == true) + { + SafeRemoveControlCallback(WasteReadyControlId,Waste_PrepareCallbak); + WasteReadyControlId = 0xFF; + Report("Module waste prepare ready!", __FILE__, __LINE__, headready, RpMessage, headready, 0); + PrepareReady(Module_Waste,ModuleDone); + } + Report("Module waste prepare", __FILE__, __LINE__, headready, RpMessage, whsready, 0); + return OK; +} +uint32_t Waste_Prepare(void) +{ + WHS_FlowReady = false;HeadIn_FlowReady = false;HeadOut_FlowReady = false; + if (WasteReadyControlId != 0xFF) + RemoveControlCallback(WasteReadyControlId,Waste_PrepareCallbak); + //check that blowers are within 10% of designated flow: WHS, head blowers + WasteReadyControlId = AddControlCallback("Cartridge Cover Door", Waste_PrepareCallbak, eOneSecond, TemplateDataReadCBFunction, 0, 0, 0); + Report("Module waste prepare", __FILE__, __LINE__, Head_Type, RpMessage, WHS_Type, 0); + return OK; +} bool WHS_IsVocPpmOverAlarmLimit() { @@ -565,3 +623,5 @@ bool WHS_IsVocPpmOverAlarmLimit() return false; } + + diff --git a/Software/Embedded_SW/Embedded/Software Release Notes.txt b/Software/Embedded_SW/Embedded/Software Release Notes.txt index 8a41d40de..32df32c54 100644 --- a/Software/Embedded_SW/Embedded/Software Release Notes.txt +++ b/Software/Embedded_SW/Embedded/Software Release Notes.txt @@ -1,5 +1,25 @@ Embedded SW Release note - Version 1.5.0.1 - Pack 3 ============================================================= +*ARC head: Identification, Initialization, Configuration, Heaters, Blowers, temperature and air flow control, cleaning, Alarm handling +**RFID: readers connection, Initialization, Configuration, tags Identfication, reading, writing, system handling in Waste and Ink modules, PPC interface, Alarm handling +*Logs - log file while report is disconnected. additional filters, negative numbers. +*Machine status - improved machine temperature. +*Keepalive handling MCU==>PPC +*Winder calibration moves to MCU +**4 winders option +*VOC sensor - Initialization, Configuration, Alarm handling +*New improved drier arm reset (thread loading) +*Shinko reading +**Waste module job prepare - air flow of WHS, Arc head tunnel. read WHS flow sensor 2 +**Working with open valves when not in a job +*Increased blower activity after job to removed ink residues +**Work without LTFU and RTFU (replaced by BTSRs) +**job prepare - check flow and temerature WITHIN LIMITS + +* ready to check +** ready to check with special compilation +-Not started + Embedded SW Release note - Version 1.4.6.44 - Pack Mid alpha ============================================================= IDS - running dispensers up at prepare stage - improved diff --git a/Software/Embedded_SW/Embedded/StateMachines/Initialization/PowerIdle.c b/Software/Embedded_SW/Embedded/StateMachines/Initialization/PowerIdle.c index 57da1574b..604324948 100644 --- a/Software/Embedded_SW/Embedded/StateMachines/Initialization/PowerIdle.c +++ b/Software/Embedded_SW/Embedded/StateMachines/Initialization/PowerIdle.c @@ -187,7 +187,7 @@ bool getIdleState (void) {return powerIdleState;} uint32_t OutOfIdleUpdate(bool last) { uint32_t status = NOT_SUPPORTED; - +/* double calculate; int result = 0; MessageContainer responseContainer; @@ -197,7 +197,7 @@ uint32_t OutOfIdleUpdate(bool last) if (PowerUpToken[0] == 0) return OK; -/* response.has_state = true; + response.has_state = true; response.has_progresspercentage = true; if (last == false) diff --git a/Software/Embedded_SW/Embedded/StateMachines/Initialization/PowerOffSequence.c b/Software/Embedded_SW/Embedded/StateMachines/Initialization/PowerOffSequence.c index 15f363b9a..d3ef81a50 100644 --- a/Software/Embedded_SW/Embedded/StateMachines/Initialization/PowerOffSequence.c +++ b/Software/Embedded_SW/Embedded/StateMachines/Initialization/PowerOffSequence.c @@ -41,6 +41,7 @@ #include "InitSequence.h" #include "PowerOffSequence.h" #include "modules/waste/waste_ex.h" +#include "modules/ifs/ifs.h" /* typedef enum { @@ -70,6 +71,12 @@ bool PowerOffInProcess = false; #define POWER_OFF_TEMP_THRESHOLD 5000 //50 celsious int32_t PowerOffTemperatureThreshold = POWER_OFF_TEMP_THRESHOLD; +bool PowerOffDisableCleaning = false; +void setPowerOffDisableCleaning (bool value) +{ + PowerOffDisableCleaning = value; + REPORT_MSG(PowerOffDisableCleaning, "Set PowerOffDisableCleaning"); +} bool PowerOffInProcessGetState(void) { return PowerOffInProcess; @@ -139,6 +146,13 @@ uint32_t PowerOffHeadClean(void) //TBD if (AutoHoming_Config >= AutoHoming_PowerOff ) AutoHoming_Config = AutoHoming_JobEnd_PowerOn_off; + if (PowerOffDisableCleaning == true) + { + LOG_ERROR(0,"Clean job skipped!!!!!!!"); + PowerOffMachineState++; + SetMachineStatus(MACHINE_STATE__PowerOff); + return OK; + } if (ThreadCleaningJob(50) == OK) { if (PowerOffHeadCleanControlId != 0xFF) @@ -286,7 +300,7 @@ uint32_t PowerOffWaitForProcessesCallback(uint32_t IfIndex, uint32_t BusyFlag) } } if ((WHS_IsEmptying()|| - //MidTankFillingActive()|| + IFS_MidTankFilling()|| ThreadLoadingActive()|| SwUpgradeActive()|| (HomingActive == true))&& @@ -321,7 +335,7 @@ uint32_t PowerOffWaitForProcesses(void) } if (WHS_IsEmptying()|| - //MidTankFillingActive()|| + IFS_MidTankFilling()|| ThreadLoadingActive()|| SwUpgradeActive()|| (HomingActive == true)) diff --git a/Software/Embedded_SW/Embedded/StateMachines/Initialization/PowerOffSequence.h b/Software/Embedded_SW/Embedded/StateMachines/Initialization/PowerOffSequence.h index 5f347c5ba..10dd4c71e 100644 --- a/Software/Embedded_SW/Embedded/StateMachines/Initialization/PowerOffSequence.h +++ b/Software/Embedded_SW/Embedded/StateMachines/Initialization/PowerOffSequence.h @@ -35,6 +35,7 @@ void PowerOffSetTemperatureThreshold (int32_t temperature); //celsius temperatur bool PowerOffInProcessGetState(void); uint32_t PowerOffHeatersOff(void); +void setPowerOffDisableCleaning (bool value); uint32_t PowerDownUpdateFunc(MessageContainer* requestContainer); uint32_t AbortPowerDownFunc(MessageContainer* requestContainer); diff --git a/Software/Embedded_SW/Embedded/StateMachines/Printing/JobSTM.c b/Software/Embedded_SW/Embedded/StateMachines/Printing/JobSTM.c index c217a68b3..e74054a3c 100644 --- a/Software/Embedded_SW/Embedded/StateMachines/Printing/JobSTM.c +++ b/Software/Embedded_SW/Embedded/StateMachines/Printing/JobSTM.c @@ -55,6 +55,7 @@ #include "Modules/General/process.h" #include "modules/Diagnostics/Diagnostics.h" +#include "modules/waste/waste_ex.h" #include "PMR/Stubs/StubJobRequest.pb-c.h" #include "PMR/Stubs/StubJobResponse.pb-c.h" @@ -209,10 +210,10 @@ static ReturnCode PrepareState(void *JobDetails) { PrepareWaiting[Module_Thread] = ModuleWaiting; } - /*if (Configured[Module_Waste]) + if (Configured[Module_Waste]) { - PrepareWaiting[Module_Waste] = ModuleWaiting; - }*/ + // PrepareWaiting[Module_Waste] = ModuleWaiting; + } if (Configured[Module_Winder]) { PrepareWaiting[Module_Winder] = ModuleWaiting; @@ -246,7 +247,7 @@ static ReturnCode PrepareState(void *JobDetails) } } //if (Configured[Module_Waste]) - // Waste_Prepare(); + // Waste_Prepare(); return retcode; } @@ -1406,12 +1407,10 @@ Void jobTask(UArg arg0, UArg arg1) CurrentJob = NULL; if (IFS_Clearing_SuctionWaiting == true) WHS_Set_IFS_Clearing_Suction(NUM_OF_MIDTANKS); - //if (CurrentRequest!= NULL) - // job_request__free_unpacked(CurrentRequest,NULL); - //CurrentRequest = NULL; - SuspendLargeMessages = false; - LOG_ERROR(4,"ResumeLargeMessages PrintingResultsOk"); - //DiagnosticsStart(); + WHS_Set_JobEndSuction(); + SuspendLargeMessages = false; + Report("Job Ended PrintingResultsOk",__FILE__,__LINE__, 4,RpMessage,0,0); + //DiagnosticsStart(); //CleanState(CurrentJob); break; case PrintingResultsFail: @@ -1422,15 +1421,11 @@ Void jobTask(UArg arg0, UArg arg1) SetMachineStatus(MACHINE_STATE__Ready); resetIdleCounter(); CurrentJob = NULL; - //if (CurrentRequest!= NULL) - // job_request__free_unpacked(CurrentRequest,NULL); - //CurrentRequest = NULL; - SuspendLargeMessages = false; - if (IFS_Clearing_SuctionWaiting == true) - WHS_Set_IFS_Clearing_Suction(NUM_OF_MIDTANKS); - LOG_ERROR(3,"ResumeLargeMessages PrintingResultsFail"); - //DiagnosticsStart(); - + SuspendLargeMessages = false; + if (IFS_Clearing_SuctionWaiting == true) + WHS_Set_IFS_Clearing_Suction(NUM_OF_MIDTANKS); + WHS_Set_JobEndSuction(); + Report("Job Ended PrintingResultsFail",__FILE__,__LINE__, 4,RpError,JobEndReason,0); //send message data as a validation error message to host ExitState(Message.messageData); break; diff --git a/Software/Embedded_SW/Embedded/StateMachines/Printing/PrintingSTM.c b/Software/Embedded_SW/Embedded/StateMachines/Printing/PrintingSTM.c index 177fac0b2..d65dbadd9 100644 --- a/Software/Embedded_SW/Embedded/StateMachines/Printing/PrintingSTM.c +++ b/Software/Embedded_SW/Embedded/StateMachines/Printing/PrintingSTM.c @@ -308,7 +308,7 @@ uint32_t PrintingHWConfiguration(void *Configuration) HardwareConfiguration *request = Configuration; if (request->n_winders == 1) Configured[Module_Winder] = true; - if ((IFS_Availability[1] == IFS_RECOGNIZED_INIT_PASSED)&&(IFS_Availability[2] == IFS_RECOGNIZED_INIT_PASSED)) //ifs installed -check cartridges + //if ((IFS_Availability[1] == IFS_RECOGNIZED_INIT_PASSED)&&(IFS_Availability[2] == IFS_RECOGNIZED_INIT_PASSED)) //ifs installed -check cartridges Configured[Module_Waste] = true; if (request->n_motors) |
