diff --git a/src/main/java/projekt/enigma/GuiController.java b/src/main/java/projekt/enigma/GuiController.java
index 6978536e906d2950485513c82069e97cb0e1f67c..859ed36c1a2fa2b112d3db6ecef42604b3122b0b 100644
--- a/src/main/java/projekt/enigma/GuiController.java
+++ b/src/main/java/projekt/enigma/GuiController.java
@@ -271,9 +271,9 @@ public class GuiController {
 			setText(btnZ);
 			leuchten(chiffCircle(chiffrierterBuchstabe), BUCHSTABE_LEUCHTET.AN);
 		}
-		if (e.getSource() == btnSenden)sendeFunkspruch();
+/*		if (e.getSource() == btnSenden)sendeFunkspruch();
 		if (e.getSource() == btnEmpfangen) empfangeFunkspruch();
-		if (e.getSource() == btnDelete) loeschen();
+		if (e.getSource() == btnDelete) loeschen();*/
 	}
     /**
      * Auswertung welcher Button (senden, empfangen oder löschen) gedrückt wurde.
@@ -282,10 +282,19 @@ public class GuiController {
      */
     @FXML
     private void gedrueckteTaste(ActionEvent e) {
-        if (e.getSource() == btnSenden) sendeFunkspruch();
+        if (e.getSource() == btnSenden && tfCodiert.getText()!="") sendeFunkspruch();
         if (e.getSource() == btnEmpfangen) empfangeFunkspruch();
         if (e.getSource() == btnDelete) loeschen();
-        if (e.getSource() == btnReset) setzeTagesSchluessel();
+        if (e.getSource() == btnReset) {
+        	codierer.resetHardware();
+        	setzeTagesSchluessel();
+			codierer.generateSpruchschluessel();
+        	codierer.getSpruchschluessel();
+        	lblSpruchschluessel.setText(codierer.getSpruchschluessel());
+        	tfCodiert.setText("");
+        	tfKlartext.setText("");
+        	textCodiert=textEingabe="";
+		}
     }
 //endregion
 
@@ -390,8 +399,12 @@ public class GuiController {
             setzeRing(2, Integer.parseInt(mItm.getText()) - 1);
         if (mBtn.getId().equals(mBtnNotchPos3.getId()))
             setzeRing(3, Integer.parseInt(mItm.getText()) - 1);
+        tfCodiert.setText("");
+        tfKlartext.setText("");
     }
 
+
+
     /**
      * Hier werden die TextFelder, welche die Steckverbindungen darstellen,
      * mit dem Werten die die Klasse Codierer zur Verfügung stellt gefüllt.
@@ -545,6 +558,50 @@ public class GuiController {
         }
     }
 
+	/**
+	 * Setzt die Anzeige des entsprechende Gui-Element auf die entsprechende Walze
+	 * -> d.h. welche Walze sitzt auf welcher Position
+	 * @param walzenPosition => gibt die Position der Walze
+	 * @param walzeNr => gibt die Walzennummer an
+	 */
+	private void setzeWalze(int walzenPosition, int walzeNr) {
+		//int walzeNr = 0;
+		switch (walzeNr) {
+			case 1:
+				walzeNr = 0;
+				break;
+			case 2:
+				walzeNr = 1;
+				break;
+			case 3:
+				walzeNr = 2;
+				break;
+			case 4:
+				walzeNr = 3;
+				break;
+			case 5:
+				walzeNr = 4;
+				break;
+			default:
+				break;
+		}
+
+		switch (walzenPosition) {
+			case 1:
+				mBtnWalzPos1.setText(walzenNr[walzeNr]);
+				//codierer.setWalze(walzeNr, walzenPosition)
+				break;
+			case 2:
+				mBtnWalzPos2.setText(walzenNr[walzeNr]);
+				break;
+			case 3:
+				mBtnWalzPos3.setText(walzenNr[walzeNr]);
+				break;
+			default:
+				break;
+		}
+	}
+
     /**
      * Setzt den Notch (position)=> die Mitnahmeposition der Walze (walze) fest
      * Mitnahmeposition meint => die nächste Walze wird bei erreichen dieser Position (notch)
@@ -601,9 +658,9 @@ public class GuiController {
         mBtnNotchPos2.setText(String.valueOf(codierer.fetchRingstellung()[1]));
         mBtnNotchPos3.setText(String.valueOf(codierer.fetchRingstellung()[2]));
         // Walzennummern anzeigen
-        mBtnWalzPos1.setText(String.valueOf(codierer.fetchWalzenNr()[0]));
-        mBtnWalzPos2.setText(String.valueOf(codierer.fetchWalzenNr()[1]));
-        mBtnWalzPos3.setText(String.valueOf(codierer.fetchWalzenNr()[2]));
+		setzeWalze(1, codierer.fetchWalzenNr()[0]);
+		setzeWalze(2, codierer.fetchWalzenNr()[1]);
+		setzeWalze(3, codierer.fetchWalzenNr()[2]);
         // Position der Walzen anzeigen
         mBtnStartPos1.setText(String.valueOf(codierer.fetchWalzen()[0]));
         mBtnStartPos2.setText(String.valueOf(codierer.fetchWalzen()[1]));