Index: firmware/App/Services/SystemCommMessages.c =================================================================== diff -u -re608f0a2bda2ad8df59a604a511cbd2a1c323dc3 -r3850bef541c43c1fb81663eb7d1ca6c98e933627 --- firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision e608f0a2bda2ad8df59a604a511cbd2a1c323dc3) +++ firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision 3850bef541c43c1fb81663eb7d1ca6c98e933627) @@ -4330,19 +4330,21 @@ // verify payload length if ( sizeof( U32 ) == message->hdr.payloadLen ) { + NELSON_SUPPORT_T nelson; + memcpy( &payload, message->payload, sizeof( U32 ) ); - NELSON_SUPPORT_T nelson = (NELSON_SUPPORT_T)payload; + nelson = (NELSON_SUPPORT_T)payload; switch( nelson ) { case NELSON_INOCULATE: - setNelsonSupportMode( nelson ); + setHeatNelsonSupportMode( nelson ); requestNewOperationMode( DG_MODE_HEAT ); break; case NELSON_HEAT_DISINFECT: - setNelsonSupportMode( nelson ); + setHeatNelsonSupportMode( nelson ); requestNewOperationMode( DG_MODE_HEAT ); break; @@ -4351,13 +4353,17 @@ requestNewOperationMode( DG_MODE_CHEM ); break; + case NELSON_POS_CONTROL_HEAT_DISINFECT: + setHeatNelsonSupportMode( nelson ); + requestNewOperationMode( DG_MODE_HEAT ); + case NELSON_CHEM_DISINFECT: setChemNelsonSupportMode( nelson ); requestNewOperationMode( DG_MODE_CHEM ); break; case NELSON_DRAIN_SAMPLES: - setNelsonSupportMode( nelson ); + setHeatNelsonSupportMode( nelson ); requestNewOperationMode( DG_MODE_HEAT ); break; }