diff --git a/modeling/DIPLODOCUS/SmartCardProtocol.xml b/modeling/DIPLODOCUS/SmartCardProtocol.xml
index bb9d530f194e46d8fc7430278bd7af096f310aea..9ac4be0480c0cc141a448d1c0a5c3eeb98f45fb3 100755
--- a/modeling/DIPLODOCUS/SmartCardProtocol.xml
+++ b/modeling/DIPLODOCUS/SmartCardProtocol.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<TURTLEGMODELING version="1.0beta" ANIMATE_INTERACTIVE_SIMULATION="true" ACTIVATE_PENALTIES="false" UPDATE_INFORMATION_DIPLO_SIM="false" ANIMATE_WITH_INFO_DIPLO_SIM="true" OPEN_DIAG_DIPLO_SIM="false">
+<TURTLEGMODELING version="1.0beta" ANIMATE_INTERACTIVE_SIMULATION="false" ACTIVATE_PENALTIES="false" UPDATE_INFORMATION_DIPLO_SIM="false" ANIMATE_WITH_INFO_DIPLO_SIM="true" OPEN_DIAG_DIPLO_SIM="false">
 
 <Modeling type="TML Component Design" nameTab="AppC" tabs="TML Component Task Diagram$Application$TCPIP$Timer$InterfaceDevice$SmartCard" >
 <TMLComponentTaskDiagramPanel name="TML Component Task Diagram" minX="0" maxX="2724" minY="0" maxY="916" channels="true" events="true" requests="true" zoom="1.0000000000000018" >
diff --git a/simulators/c++2/src_simulator/TMLTransaction.cpp b/simulators/c++2/src_simulator/TMLTransaction.cpp
index c78a08f79fe10344eadccf81855376e412de3974..66f2d39c8a408ad82ef9cac1d420691acced1296 100755
--- a/simulators/c++2/src_simulator/TMLTransaction.cpp
+++ b/simulators/c++2/src_simulator/TMLTransaction.cpp
@@ -74,7 +74,7 @@ std::string TMLTransaction::toString() const{
   std::ostringstream outp;
   //std::cout << "kernel:transaction: toString" << std::endl;
   //std::cout << "kernel:transaction: toString" << _command->toString() << std::endl;
-  outp << _command->toString() << std::endl << "Transaction runnable:" << _runnableTime << " len:" << _length << " start:" << _startTime << " vLength:" << _virtualLength;
+  outp << _command->toString() << std::endl << "Transaction runnable:" << _runnableTime << " len:" << _length << " start:" << _startTime << " vLength:" << _virtualLength << " params:" << lastParams ;
   if (_channel!=0) outp << " Ch: " << _channel->toShortString();
   return outp.str();
 }
@@ -84,7 +84,7 @@ std::string TMLTransaction::toShortString() const{
   if (_command==0)
     outp << "System State ID: " <<  _virtualLength;
   else{
-    outp << _command->toShortString() << " t:" << _startTime << " l:" << _length << " (vl:"<<  _virtualLength << ")";
+    outp << _command->toShortString() << " t:" << _startTime << " l:" << _length << " (vl:"<<  _virtualLength << ")" << " params:" << lastParams ;
     if (_channel!=0) outp << " Ch: " << _channel->toShortString();
   }
   return outp.str();
diff --git a/simulators/c++2/src_simulator/TMLTransaction.h b/simulators/c++2/src_simulator/TMLTransaction.h
index a4a3df15b468b092ad6952ffaea8f8b271e4aa77..d5bcadbab9636fcb4081ec759318042d7bee66b3 100644
--- a/simulators/c++2/src_simulator/TMLTransaction.h
+++ b/simulators/c++2/src_simulator/TMLTransaction.h
@@ -260,6 +260,9 @@ class TMLTransaction {
   inline bool getEndState () {return _endState;}
   void toXML(std::ostringstream& glob, int deviceID, std::string deviceName, ID uniqueID) const;
 
+  // Params of the transaction
+  std::string lastParams;
+
 
  protected:
   ///Time when the transaction became runnable
diff --git a/simulators/c++2/src_simulator/app/TMLCommand.h b/simulators/c++2/src_simulator/app/TMLCommand.h
index 7b8c83d9d32882e548b255b177fa8b2bc389fd08..ded37d2ae8f8e41a20d0326ecd9729c6802020d2 100755
--- a/simulators/c++2/src_simulator/app/TMLCommand.h
+++ b/simulators/c++2/src_simulator/app/TMLCommand.h
@@ -78,6 +78,8 @@ public:
 	///Updates the inner state of the command as well as the state of all dependent objects (channel, bus,...)
 	virtual void execute()=0;
 	///Assigns a value to the pointer referencing the array of next commands
+
+	
 	/**
 	\param iNextCommand Pointer to an array of pointers to the next commands
 	*/
@@ -92,6 +94,7 @@ public:
 	\return Pointer to the current transaction
 	*/
 	inline TMLTransaction* getCurrTransaction() const {return _currTransaction;}
+	
 	///Returns a pointer to the task which could be unblocked by the command
 	/**
 	\param iIndex Index of the task
diff --git a/simulators/c++2/src_simulator/app/TMLSendCommand.cpp b/simulators/c++2/src_simulator/app/TMLSendCommand.cpp
index ad0cd76ce230f64b1882a96b842a3be430d997fa..e46f4271816b310227944f98230c4c3ceccfc3a4 100644
--- a/simulators/c++2/src_simulator/app/TMLSendCommand.cpp
+++ b/simulators/c++2/src_simulator/app/TMLSendCommand.cpp
@@ -72,14 +72,14 @@ TMLCommand* TMLSendCommand::prepareNextTransaction(){
 
 std::string TMLSendCommand::toString() const{
 	std::ostringstream outp;
-	outp << "Send in " << TMLCommand::toString() << " " << _channel->toString() << " params=" << lastParams;
+	outp << "Send in " << TMLCommand::toString() << " " << _channel->toString();
 	return outp.str();
 }
 
 std::string TMLSendCommand::toShortString() const{
   //  std::cout << "TMLSendCommand::short string params:" << lastParams.str() << "\n";
 	std::ostringstream outp;
-	outp << _task->toString() << ": Send " << _channel->toString() << " params:" << lastParams;
+	outp << _task->toString() << ": Send " << _channel->toString();
 	return outp.str();
 }
 
diff --git a/simulators/c++2/src_simulator/app/TMLWaitCommand.cpp b/simulators/c++2/src_simulator/app/TMLWaitCommand.cpp
index eb1990c1138c976f22e551445e2f3ad8f0f572ae..f09894e557fb1bc00dadaa48c6619bf4df9342bc 100644
--- a/simulators/c++2/src_simulator/app/TMLWaitCommand.cpp
+++ b/simulators/c++2/src_simulator/app/TMLWaitCommand.cpp
@@ -77,6 +77,6 @@ std::string TMLWaitCommand::toString() const{
 
 std::string TMLWaitCommand::toShortString() const{
 	std::ostringstream outp;
-	outp << _task->toString() << ": Wait " << _channel->toShortString() << " params:" << lastParams;
+	outp << _task->toString() << ": Wait " << _channel->toShortString();
 	return outp.str();
 }
diff --git a/src/main/java/tmltranslator/tomappingsystemc2/MappedSystemCTask.java b/src/main/java/tmltranslator/tomappingsystemc2/MappedSystemCTask.java
index 91c188cd345ad0ec28e76e734d62b6741cfe4696..79c27f52e2afe32ff7db3e084ce4bd425014a3e1 100644
--- a/src/main/java/tmltranslator/tomappingsystemc2/MappedSystemCTask.java
+++ b/src/main/java/tmltranslator/tomappingsystemc2/MappedSystemCTask.java
@@ -812,8 +812,11 @@ public class MappedSystemCTask {
                             }
                         }
                         functions += " << \")\"" + SCCR;
-                        //functions += "if(" + cmdName + ".myTransaction != NULL) " +  cmdName + ".myTransaction->lastParams  = ss.str()" + SCCR + 
+                        //functions += "if(" + cmdName + ".myTransaction != NULL) " +  cmdName + ".myTransaction->lastParams  = ss.str()" + SCCR +
                         // "\n";
+                        functions += "if(" + cmdName + ".getCurrTransaction() != NULL) " + cmdName + ".getCurrTransaction()->lastParams = ss.str" +
+                                "()" +
+                                SCCR + "\n";
                         functions += "return 0" + SCCR + "\n\n}";
                     }
                     nextCommand += ",(TMLCommand*)" + makeCommands(currElem.getNextElement(i), true, retElement, null);
@@ -944,7 +947,8 @@ public class MappedSystemCTask {
                     }
                 }
                 functions += " << \")\"" + SCCR;
-                //functions += "if(" + cmdName + ".myTransaction != NULL) " + cmdName + ".myTransaction->lastParams = ss.str()" + SCCR + "\n";
+                functions += "if(" + cmdName + ".getCurrTransaction() != NULL) " + cmdName + ".getCurrTransaction()->lastParams = ss.str()" +
+                        SCCR + "\n";
                 functions += "return 0" + SCCR;
 
             } else {
@@ -964,6 +968,8 @@ public class MappedSystemCTask {
                 }
                 functions += " << \")\"" + SCCR;
                 //functions += "if(" + cmdName + ".myTransaction != NULL) " + cmdName + ".myTransaction->lastParams  = ss.str()" + SCCR + "\n";
+                functions += "if(" + cmdName + ".getCurrTransaction() != NULL) " + cmdName + ".getCurrTransaction()->lastParams = ss.str()" +
+                        SCCR + "\n";
                 functions += "return new SizedParameter<ParamType," + nbOfParams + ">(" + concatParams + ")" + SCCR;
             }
             functions += "}\n\n";