diff --git a/Bachelorarbeit/Bachelorarbeit/18_vl53l7cx_clean_with_STlibrary_Shift_register_20250127154813.ino b/Bachelorarbeit/Bachelorarbeit/18_vl53l7cx_clean_with_STlibrary_Shift_register_20250127154813/18_vl53l7cx_clean_with_STlibrary_Shift_register_20250127154813.ino
similarity index 52%
rename from Bachelorarbeit/Bachelorarbeit/18_vl53l7cx_clean_with_STlibrary_Shift_register_20250127154813.ino
rename to Bachelorarbeit/Bachelorarbeit/18_vl53l7cx_clean_with_STlibrary_Shift_register_20250127154813/18_vl53l7cx_clean_with_STlibrary_Shift_register_20250127154813.ino
index 01920671d69764d457117e2ab0ed558eedb1481e..20916d25a9a13b4b5c2bf6a967db0318646bd76a 100644
--- a/Bachelorarbeit/Bachelorarbeit/18_vl53l7cx_clean_with_STlibrary_Shift_register_20250127154813.ino
+++ b/Bachelorarbeit/Bachelorarbeit/18_vl53l7cx_clean_with_STlibrary_Shift_register_20250127154813/18_vl53l7cx_clean_with_STlibrary_Shift_register_20250127154813.ino
@@ -1,3 +1,4 @@
+
 /**
  ******************************************************************************
  * @file    VL53L7CX_Sat_HelloWorld.ino
@@ -54,10 +55,10 @@
 #include <Wire.h>
 #include <ArduinoJson.h>
 #include <vl53l7cx_class.h>
-#include "74HC154.h"
 #include <string.h>
 #include <stdlib.h>
 #include <stdio.h>
+#include <PCF8575.h>
 #include <stdint.h>
 #include <assert.h>
 #include <stdlib.h>
@@ -70,37 +71,13 @@
 #endif
 #define LedPin LED_BUILTIN
 
-#define LPN_PIN0 14
-#define LPN_PIN1 15
-#define LPN_PIN2 9
-#define LPN_PIN3 12
-#define LPN_PIN4 99
-#define LPN_PIN5 99
-#define LPN_PIN6 99
-#define LPN_PIN7 99
-#define LPN_PIN8 99
-#define LPN_PIN9 99
-#define LPN_PIN10 99
-#define LPN_PIN11 99
-#define LPN_PIN12 99
-#define LPN_PIN13 99
-#define LPN_PIN14 99
-#define LPN_PIN15 99
-#define LPN_PIN16 99
-#define LPN_PIN17 99
-
-#define LPN_PIN1 15
-#define I2C_RST_PIN 27
-
-#define LPN_PIN2 9
-
-uint16_t dataPin0 = 18;
-uint16_t latchPin0 = 17;
-uint16_t clockPin0 = 16;
-
-uint16_t dataPin1 = 13;
-uint16_t latchPin1 = 14;
-uint16_t clockPin1 = 15;
+
+
+#define I2C_RST_PIN 99
+#define LPN_PIN0 0
+#define LPN_PIN1 1
+#define LPN_PIN2 2
+#define LPN_PIN3 3
 
 uint16_t sensoraddress0 = 0x30;
 uint16_t sensoraddress1 = 0x31;
@@ -125,15 +102,17 @@ uint16_t sensoraddress17 = 0x41;
 uint16_t wait_for_i2c = 50;
 uint16_t imageWidth = 8;
 uint16_t ranging_frequency = 15;
-pin_size_t SDA_PIN1 = 2;
-pin_size_t SCL_PIN1 = 3; 
+pin_size_t SDA_PIN1 = 26;
+pin_size_t SCL_PIN1 = 27; 
 JsonDocument doc;
 
 // Components.
-VL53L7CX sensor0(&DEV_I2C0, LPN_PIN0, I2C_RST_PIN);
-VL53L7CX sensor1(&DEV_I2C0, LPN_PIN1, I2C_RST_PIN);
-VL53L7CX sensor2(&DEV_I2C0, LPN_PIN2, I2C_RST_PIN);
-VL53L7CX sensor3(&DEV_I2C0, LPN_PIN3, I2C_RST_PIN);
+PCF8575 PCF(0x20, &DEV_I2C1);
+VL53L7CX sensor0(&DEV_I2C1, 99, I2C_RST_PIN);
+VL53L7CX sensor1(&DEV_I2C1, 99, I2C_RST_PIN);
+VL53L7CX sensor2(&DEV_I2C1, 99, I2C_RST_PIN);
+/*
+VL53L7CX sensor3(&DEV_I2C1, 99, I2C_RST_PIN);
 VL53L7CX sensor4(&DEV_I2C0, LPN_PIN4, I2C_RST_PIN);
 VL53L7CX sensor5(&DEV_I2C0, LPN_PIN5, I2C_RST_PIN);
 VL53L7CX sensor6(&DEV_I2C0, LPN_PIN6, I2C_RST_PIN);
@@ -148,8 +127,7 @@ VL53L7CX sensor14(&DEV_I2C1, LPN_PIN14, I2C_RST_PIN);
 VL53L7CX sensor15(&DEV_I2C1, LPN_PIN15, I2C_RST_PIN);
 VL53L7CX sensor16(&DEV_I2C1, LPN_PIN16, I2C_RST_PIN);
 VL53L7CX sensor17(&DEV_I2C1, LPN_PIN17, I2C_RST_PIN);
-
-void blink_led_loop(void);
+*/
 
 void blink_led_loop(void)
 {
@@ -166,31 +144,38 @@ void blink_led_loop(void)
 void setup()
 {
   // Led.
+  delay(4000);
   pinMode(LedPin, OUTPUT);
-  pinMode(LPN_PIN0, OUTPUT);
-  pinMode(LPN_PIN1, OUTPUT);
-  pinMode(LPN_PIN2, OUTPUT);
-  pinMode(LPN_PIN3, OUTPUT);
+  digitalWrite(LedPin, HIGH);
 
   Serial.begin(115200);
   Serial.println("Initialize... Please wait, it may take few seconds...");
 
   // Initialize I2C bus.
   DEV_I2C0.begin();
-  DEV_I2C0.setClock(1000000);
+  DEV_I2C0.setClock(400000);
   delay(50);
 
   DEV_I2C1.setSCL(SCL_PIN1);
   DEV_I2C1.setSDA(SDA_PIN1);
   DEV_I2C1.begin();
-  DEV_I2C1.setClock(1000000);
+  DEV_I2C1.setClock(400000);
+
+  if (!PCF.begin())
+  {
+    Serial.println("could not initialize...");
+  }
+  if (!PCF.isConnected())
+  {
+    Serial.println("=> not connected");
+    while(1);
+  }
+
   delay(50);
 
   // Initialize and configure sensors
   Serial.println("Initializing sensors...");
 
-  i2cScanner();
-
   initializeSensor(sensor0, sensoraddress0, LPN_PIN0, I2C_RST_PIN);
   i2cScanner();
 
@@ -199,52 +184,52 @@ void setup()
 
   initializeSensor(sensor2, sensoraddress2, LPN_PIN2, I2C_RST_PIN);
   i2cScanner(); // Perform I2C scan
-
+/*
   initializeSensor(sensor3, sensoraddress3, LPN_PIN3, I2C_RST_PIN);
   i2cScanner(); // Perform I2C scan
 
-  // initializeSensor(sensor4, sensoraddress4, LPN_PIN4, I2C_RST_PIN);
-  // i2cScanner();
+  initializeSensor(sensor4, sensoraddress4, LPN_PIN4, I2C_RST_PIN);
+  i2cScanner();
 
-  // initializeSensor(sensor5, sensoraddress5, LPN_PIN5, I2C_RST_PIN);
-  // i2cScanner(); // Perform I2C scan
+  initializeSensor(sensor5, sensoraddress5, LPN_PIN5, I2C_RST_PIN);
+  i2cScanner(); // Perform I2C scan
 
   // initializeSensor(sensor6, sensoraddress6, LPN_PIN6, I2C_RST_PIN);
   // i2cScanner(); // Perform I2C scan
 
-  // initializeSensor(sensor7, sensoraddress7, LPN_PIN7, I2C_RST_PIN);
-  // i2cScanner(); // Perform I2C scan
+  initializeSensor(sensor7, sensoraddress7, LPN_PIN7, I2C_RST_PIN);
+  i2cScanner(); // Perform I2C scan
 
-  // initializeSensor(sensor8, sensoraddress8, LPN_PIN8, I2C_RST_PIN);
-  // i2cScanner();
+  initializeSensor(sensor8, sensoraddress8, LPN_PIN8, I2C_RST_PIN);
+  i2cScanner();
 
-  // initializeSensor(sensor9, sensoraddress9, LPN_PIN9, I2C_RST_PIN);
-  // i2cScanner(); // Perform I2C scan
+  initializeSensor(sensor9, sensoraddress9, LPN_PIN9, I2C_RST_PIN);
+  i2cScanner(); // Perform I2C scan
 
   // initializeSensor(sensor10, sensoraddress10, LPN_PIN10, I2C_RST_PIN);
   // i2cScanner(); // Perform I2C scan
 
-  // initializeSensor(sensor11, sensoraddress11, LPN_PIN11, I2C_RST_PIN);
-  // i2cScanner(); // Perform I2C scan
-
-  // initializeSensor(sensor12, sensoraddress12, LPN_PIN12, I2C_RST_PIN);
-  // i2cScanner();
+  initializeSensor(sensor11, sensoraddress11, LPN_PIN11, I2C_RST_PIN);
+  i2cScanner(); // Perform I2C scan
 
-  // initializeSensor(sensor13, sensoraddress13, LPN_PIN13, I2C_RST_PIN);
-  // i2cScanner(); // Perform I2C scan
+  initializeSensor(sensor12, sensoraddress12, LPN_PIN12, I2C_RST_PIN);
+  i2cScanner();
 
-  // initializeSensor(sensor14, sensoraddress14, LPN_PIN14, I2C_RST_PIN);
-  // i2cScanner(); // Perform I2C scan
+  initializeSensor(sensor13, sensoraddress13, LPN_PIN13, I2C_RST_PIN);
+  i2cScanner(); // Perform I2C scan
 
-  // initializeSensor(sensor15, sensoraddress15, LPN_PIN15, I2C_RST_PIN);
-  // i2cScanner(); // Perform I2C scan
+  initializeSensor(sensor14, sensoraddress14, LPN_PIN14, I2C_RST_PIN);
+  i2cScanner(); // Perform I2C scan
 
-  // initializeSensor(sensor16, sensoraddress16, LPN_PIN16, I2C_RST_PIN);
-  // i2cScanner();
+  initializeSensor(sensor15, sensoraddress15, LPN_PIN15, I2C_RST_PIN);
+  i2cScanner(); // Perform I2C scan
 
-  // initializeSensor(sensor17, sensoraddress17, LPN_PIN17, I2C_RST_PIN);
-  // i2cScanner(); // Perform I2C scan
+  initializeSensor(sensor16, sensoraddress16, LPN_PIN16, I2C_RST_PIN);
+  i2cScanner();
 
+  initializeSensor(sensor17, sensoraddress17, LPN_PIN17, I2C_RST_PIN);
+  i2cScanner(); // Perform I2C scan
+*/
   Serial.println("All sensors initialized successfully.");
 }
 
@@ -258,9 +243,10 @@ void loop() {
   // Process each sensor data and save to respective JSON arrays
   processSensorData(sensor0, Results0, doc["sensor0"].to<JsonArray>(), "sensor0");
   processSensorData(sensor1, Results1, doc["sensor1"].to<JsonArray>(), "sensor1");
+/*
   processSensorData(sensor2, Results2, doc["sensor2"].to<JsonArray>(), "sensor2");
   processSensorData(sensor3, Results3, doc["sensor3"].to<JsonArray>(), "sensor3");
-
+*/
   // Serialize the JSON document and print to Serial
   serializeJson(doc, Serial);
   Serial.println();
@@ -271,8 +257,8 @@ bool i2cScanner()
   bool status = false;
   for (byte address = 1; address < 127; address++ )
   {
-    Wire.beginTransmission(address);
-    if (Wire.endTransmission() == 0)
+    DEV_I2C1.beginTransmission(address);
+    if (DEV_I2C1.endTransmission() == 0)
     {
       Serial.print("Device found at address 0x");
       if (address < 0x10)
@@ -285,17 +271,18 @@ bool i2cScanner()
         status = false;
       }
     }
+    delay(wait_for_i2c);
   }
-  Serial.println();
-  delay(wait_for_i2c);
   return status;
 }
 
 void initializeSensor(VL53L7CX &sensor, uint16_t sensorAddress, int lpnPin, int i2cRstPin) {
-  LPn0(lpnPin, true);
   delay(wait_for_i2c);
 
-  sensor.begin();
+  PCF.write16(0x0);
+  delay(wait_for_i2c);
+  PCF.write(lpnPin, HIGH);
+
   delay(wait_for_i2c);
   sensor.init_sensor();
   delay(wait_for_i2c);
@@ -314,8 +301,8 @@ void initializeSensor(VL53L7CX &sensor, uint16_t sensorAddress, int lpnPin, int
   sensor.vl53l7cx_start_ranging();
   delay(wait_for_i2c);
   
-  // Reset LPN and I2C pins
-  LPn0(lpnPin, false);
+  // Reset LPN
+  PCF.write(lpnPin, LOW);
 }
 
 void processSensorData(VL53L7CX &sensor, VL53L7CX_ResultsData &results, const JsonArray& data, const char* sensorKey) {
@@ -340,109 +327,6 @@ void processSensorData(VL53L7CX &sensor, VL53L7CX_ResultsData &results, const Js
       for (int x = 0; x <= imageWidth - 1; x++) {
         sensorData.add(results.distance_mm[VL53L7CX_NB_TARGET_PER_ZONE * (x + y)]);
       }
-      void I2C_RST(int dataPin, int latchPin, int clockPin){
-  uint8_t Pin_byte1 = 0b11111111; // For pins 0-7
-  uint8_t Pin_byte2 = 0b11111111; // For pins 8-15
-  uint8_t Pin_byte3 = 0b11111111; // For pins 16-23
-  // Update the correct byte based on Pin
-
-  digitalWrite(latchPin, LOW);
-
-  // Shift out the bits
-  shiftOut(dataPin, clockPin, MSBFIRST, Pin_byte3); // Send byte for pins 16-23
-  shiftOut(dataPin, clockPin, MSBFIRST, Pin_byte2); // Send byte for pins 8-15
-  shiftOut(dataPin, clockPin, MSBFIRST, Pin_void I2C_RST(int dataPin, int latchPin, int clockPin){
-  uint8_t Pin_byte1 = 0b11111111; // For pins 0-7
-  uint8_t Pin_byte2 = 0b11111111; // For pins 8-15
-  uint8_t Pin_byte3 = 0b11111111; // For pins 16-23
-  // Update the correct byte based on Pin
-
-  digitalWrite(latchPin, LOW);
-
-  // Shift out the bits
-  shiftOut(dataPin, clockPin, MSBFIRST, Pin_byte3); // Send byte for pins 16-23
-  shiftOut(dataPin, clockPin, MSBFIRST, Pin_byte2); // Send byte for pins 8-15
-  shiftOut(dataPin, clockPin, MSBFIRST, Pin_byte1); // Send byte for pins 0-7
-
-  digitalWrite(latchPin, HIGH);
-  delay(200);
-}
-
-void LPn0(uint16_t Pin, bool on) {
-  uint8_t Pin_byte1 = 0b00000000; // For pins 0-7
-  uint8_t Pin_byte2 = 0b00000000; // For pins 8-15
-  // Update the correct byte based on Pin
-  if (Pin <= 7) {
-    Pin_byte1 |= (on << Pin); // Set the corresponding bit in Pin_byte1
-  } else if (Pin <= 15) {
-    Pin_byte2 |= (on << (Pin - 8)); // Set the corresponding bit in Pin_byte2
-  }
-  digitalWrite(latchPin0, LOW);
-
-  // Shift out the bits
-  shiftOut(dataPin0, clockPin0, MSBFIRST, Pin_byte2); // Send byte for pins 8-15
-  shiftOut(dataPin0, clockPin0, MSBFIRST, Pin_byte1); // Send byte for pins 0-7
-
-  digitalWrite(latchPin0, HIGH);
-}
-
-void LPn1(uint16_t Pin, bool on) {
-  uint8_t Pin_byte1 = 0b00000000; // For pins 0-7
-  uint8_t Pin_byte2 = 0b00000000; // For pins 8-15
-  // Update the correct byte based on Pin
-  if (Pin <= 7) {
-    Pin_byte1 |= (on << Pin); // Set the corresponding bit in Pin_byte1
-  } else if (Pin <= 15) {
-    Pin_byte2 |= (on << (Pin - 8)); // Set the corresponding bit in Pin_byte2
-  }
-  digitalWrite(latchPin1, LOW);
-
-  // Shift out the bits
-  shiftOut(dataPin1, clockPin1, MSBFIRST, Pin_byte2); // Send byte for pins 8-15
-  shiftOut(dataPin1, clockPin1, MSBFIRST, Pin_byte1); // Send byte for pins 0-7
-
-  digitalWrite(latchPin1, HIGH);
-}byte1); // Send byte for pins 0-7
-
-  digitalWrite(latchPin, HIGH);
-  delay(200);
-}
-
-void LPn0(uint16_t Pin, bool on) {
-  uint8_t Pin_byte1 = 0b00000000; // For pins 0-7
-  uint8_t Pin_byte2 = 0b00000000; // For pins 8-15
-  // Update the correct byte based on Pin
-  if (Pin <= 7) {
-    Pin_byte1 |= (on << Pin); // Set the corresponding bit in Pin_byte1
-  } else if (Pin <= 15) {
-    Pin_byte2 |= (on << (Pin - 8)); // Set the corresponding bit in Pin_byte2
-  }
-  digitalWrite(latchPin0, LOW);
-
-  // Shift out the bits
-  shiftOut(dataPin0, clockPin0, MSBFIRST, Pin_byte2); // Send byte for pins 8-15
-  shiftOut(dataPin0, clockPin0, MSBFIRST, Pin_byte1); // Send byte for pins 0-7
-
-  digitalWrite(latchPin0, HIGH);
-}
-
-void LPn1(uint16_t Pin, bool on) {
-  uint8_t Pin_byte1 = 0b00000000; // For pins 0-7
-  uint8_t Pin_byte2 = 0b00000000; // For pins 8-15
-  // Update the correct byte based on Pin
-  if (Pin <= 7) {
-    Pin_byte1 |= (on << Pin); // Set the corresponding bit in Pin_byte1
-  } else if (Pin <= 15) {
-    Pin_byte2 |= (on << (Pin - 8)); // Set the corresponding bit in Pin_byte2
-  }
-  digitalWrite(latchPin1, LOW);
-
-  // Shift out the bits
-  shiftOut(dataPin1, clockPin1, MSBFIRST, Pin_byte2); // Send byte for pins 8-15
-  shiftOut(dataPin1, clockPin1, MSBFIRST, Pin_byte1); // Send byte for pins 0-7
-
-  digitalWrite(latchPin1, HIGH);
-}
     }
   }
 
@@ -450,57 +334,3 @@ void LPn1(uint16_t Pin, bool on) {
   digitalWrite(LedPin, LOW);
 }
 
-void I2C_RST(int dataPin, int latchPin, int clockPin){
-  uint8_t Pin_byte1 = 0b11111111; // For pins 0-7
-  uint8_t Pin_byte2 = 0b11111111; // For pins 8-15
-  uint8_t Pin_byte3 = 0b11111111; // For pins 16-23
-  // Update the correct byte based on Pin
-
-  digitalWrite(latchPin, LOW);
-
-  // Shift out the bits
-  shiftOut(dataPin, clockPin, MSBFIRST, Pin_byte3); // Send byte for pins 16-23
-  shiftOut(dataPin, clockPin, MSBFIRST, Pin_byte2); // Send byte for pins 8-15
-  shiftOut(dataPin, clockPin, MSBFIRST, Pin_byte1); // Send byte for pins 0-7
-
-  digitalWrite(latchPin, HIGH);
-  delay(200);
-}
-
-void LPn0(uint16_t Pin, bool on) {
-  uint8_t Pin_byte1 = 0b00000000; // For pins 0-7
-  uint8_t Pin_byte2 = 0b00000000; // For pins 8-15
-  // Update the correct byte based on Pin
-  if (Pin <= 7) {
-    Pin_byte1 |= (on << Pin); // Set the corresponding bit in Pin_byte1
-  } else if (Pin <= 15) {
-    Pin_byte2 |= (on << (Pin - 8)); // Set the corresponding bit in Pin_byte2
-  }
-  digitalWrite(latchPin0, LOW);
-
-  // Shift out the bits
-  shiftOut(dataPin0, clockPin0, MSBFIRST, Pin_byte2); // Send byte for pins 8-15
-  shiftOut(dataPin0, clockPin0, MSBFIRST, Pin_byte1); // Send byte for pins 0-7
-
-  digitalWrite(latchPin0, HIGH);
-}
-
-void LPn1(uint16_t Pin, bool on) {
-  uint8_t Pin_byte1 = 0b00000000; // For pins 0-7
-  uint8_t Pin_byte2 = 0b00000000; // For pins 8-15
-  // Update the correct byte based on Pin
-  if (Pin <= 7) {
-    Pin_byte1 |= (on << Pin); // Set the corresponding bit in Pin_byte1
-  } else if (Pin <= 15) {
-    Pin_byte2 |= (on << (Pin - 8)); // Set the corresponding bit in Pin_byte2
-  }
-  digitalWrite(latchPin1, LOW);
-
-  // Shift out the bits
-  shiftOut(dataPin1, clockPin1, MSBFIRST, Pin_byte2); // Send byte for pins 8-15
-  shiftOut(dataPin1, clockPin1, MSBFIRST, Pin_byte1); // Send byte for pins 0-7
-
-  digitalWrite(latchPin1, HIGH);
-}
-
-
diff --git a/Bachelorarbeit/Bachelorarbeit/4_vl53l7cx_clean_with_STlibrary.ino b/Bachelorarbeit/Bachelorarbeit/4_vl53l7cx_clean_with_STlibrary/4_vl53l7cx_clean_with_STlibrary.ino
similarity index 100%
rename from Bachelorarbeit/Bachelorarbeit/4_vl53l7cx_clean_with_STlibrary.ino
rename to Bachelorarbeit/Bachelorarbeit/4_vl53l7cx_clean_with_STlibrary/4_vl53l7cx_clean_with_STlibrary.ino
diff --git a/Bachelorarbeit/Bachelorarbeit/ba.pdf b/Bachelorarbeit/Bachelorarbeit/ba.pdf
index a70f865fd72ba4b62c0829ddeeb2ec3a1877a40d..8d932b338d84bded148a0ecfbef677c7e1bf842d 100644
Binary files a/Bachelorarbeit/Bachelorarbeit/ba.pdf and b/Bachelorarbeit/Bachelorarbeit/ba.pdf differ
diff --git a/Bachelorarbeit/Flowchart_Ba.drawio b/Bachelorarbeit/Flowchart_Ba.drawio
new file mode 100644
index 0000000000000000000000000000000000000000..45fb19b511e30f530a41c62f8e4ca1f1bd1480cd
--- /dev/null
+++ b/Bachelorarbeit/Flowchart_Ba.drawio
@@ -0,0 +1,108 @@
+<mxfile host="app.diagrams.net" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:137.0) Gecko/20100101 Firefox/137.0" version="26.2.14">
+  <diagram name="Seite-1" id="6M1LCZoZGZ4QGx566Q5F">
+    <mxGraphModel dx="1188" dy="626" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
+      <root>
+        <mxCell id="0" />
+        <mxCell id="1" parent="0" />
+        <mxCell id="2" value="Distanzen zwischen Sensoren und Umgebung" style="whiteSpace=wrap;strokeWidth=2;" parent="1" vertex="1">
+          <mxGeometry x="217" y="30" width="127" height="62" as="geometry" />
+        </mxCell>
+        <mxCell id="33X4tJl66k_FHWsIR2in-44" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="33X4tJl66k_FHWsIR2in-48" target="7">
+          <mxGeometry relative="1" as="geometry">
+            <mxPoint x="280.5" y="253" as="sourcePoint" />
+            <mxPoint x="280.5" y="373.5" as="targetPoint" />
+          </mxGeometry>
+        </mxCell>
+        <mxCell id="33X4tJl66k_FHWsIR2in-45" value="&lt;div&gt;Wire &amp;amp; Wire1&lt;br&gt;(I2C-Interface)&lt;/div&gt;" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="33X4tJl66k_FHWsIR2in-44">
+          <mxGeometry x="0.0056" y="3" relative="1" as="geometry">
+            <mxPoint x="38" as="offset" />
+          </mxGeometry>
+        </mxCell>
+        <mxCell id="7" value="Raspberry Pi Pico" style="whiteSpace=wrap;strokeWidth=2;" parent="1" vertex="1">
+          <mxGeometry x="185.5" y="320" width="190" height="78" as="geometry" />
+        </mxCell>
+        <mxCell id="17" value="" style="curved=1;startArrow=none;endArrow=block;exitX=0.5;exitY=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="2" target="33X4tJl66k_FHWsIR2in-48" edge="1">
+          <mxGeometry relative="1" as="geometry">
+            <Array as="points" />
+            <mxPoint x="280.5" y="112" as="targetPoint" />
+          </mxGeometry>
+        </mxCell>
+        <mxCell id="33X4tJl66k_FHWsIR2in-49" value="Time of Flight" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="17">
+          <mxGeometry x="0.0588" y="2" relative="1" as="geometry">
+            <mxPoint x="38" as="offset" />
+          </mxGeometry>
+        </mxCell>
+        <mxCell id="24" value="" style="curved=0;startArrow=none;endArrow=block;exitX=0.5;exitY=1;rounded=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="7" target="33X4tJl66k_FHWsIR2in-51" edge="1">
+          <mxGeometry relative="1" as="geometry">
+            <Array as="points" />
+            <mxPoint x="280" y="470" as="targetPoint" />
+          </mxGeometry>
+        </mxCell>
+        <mxCell id="33X4tJl66k_FHWsIR2in-46" value="&lt;div&gt;JSON-String&lt;/div&gt;&lt;div&gt;via UART&lt;/div&gt;" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="24">
+          <mxGeometry x="-0.0217" y="1" relative="1" as="geometry">
+            <mxPoint x="39" y="-3" as="offset" />
+          </mxGeometry>
+        </mxCell>
+        <mxCell id="33X4tJl66k_FHWsIR2in-48" value="18 VL53L7CX&lt;br&gt;(ToF-Sensoren)" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+          <mxGeometry x="220.5" y="160" width="120" height="60" as="geometry" />
+        </mxCell>
+        <mxCell id="33X4tJl66k_FHWsIR2in-53" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;" edge="1" parent="1" source="33X4tJl66k_FHWsIR2in-51" target="33X4tJl66k_FHWsIR2in-52">
+          <mxGeometry relative="1" as="geometry" />
+        </mxCell>
+        <mxCell id="33X4tJl66k_FHWsIR2in-54" value="pointcloud2" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="33X4tJl66k_FHWsIR2in-53">
+          <mxGeometry x="-0.1747" y="2" relative="1" as="geometry">
+            <mxPoint x="38" y="5" as="offset" />
+          </mxGeometry>
+        </mxCell>
+        <mxCell id="33X4tJl66k_FHWsIR2in-51" value="serial_to_pointcloud2" style="ellipse;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+          <mxGeometry x="200.5" y="500" width="160" height="80" as="geometry" />
+        </mxCell>
+        <mxCell id="33X4tJl66k_FHWsIR2in-56" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;" edge="1" parent="1" source="33X4tJl66k_FHWsIR2in-52" target="33X4tJl66k_FHWsIR2in-55">
+          <mxGeometry relative="1" as="geometry" />
+        </mxCell>
+        <mxCell id="33X4tJl66k_FHWsIR2in-57" value="Int32" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="33X4tJl66k_FHWsIR2in-56">
+          <mxGeometry x="-0.0372" y="-2" relative="1" as="geometry">
+            <mxPoint x="22" y="-4" as="offset" />
+          </mxGeometry>
+        </mxCell>
+        <mxCell id="33X4tJl66k_FHWsIR2in-59" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;" edge="1" parent="1" source="33X4tJl66k_FHWsIR2in-52" target="33X4tJl66k_FHWsIR2in-58">
+          <mxGeometry relative="1" as="geometry" />
+        </mxCell>
+        <mxCell id="33X4tJl66k_FHWsIR2in-60" value="pointcloud2" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="33X4tJl66k_FHWsIR2in-59">
+          <mxGeometry x="-0.0093" y="-3" relative="1" as="geometry">
+            <mxPoint x="3" y="7" as="offset" />
+          </mxGeometry>
+        </mxCell>
+        <mxCell id="33X4tJl66k_FHWsIR2in-52" value="pcl_rob_node" style="ellipse;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+          <mxGeometry x="200.5" y="640" width="160" height="80" as="geometry" />
+        </mxCell>
+        <mxCell id="33X4tJl66k_FHWsIR2in-55" value="moveit2_stop_node" style="ellipse;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+          <mxGeometry x="220.5" y="770" width="120" height="80" as="geometry" />
+        </mxCell>
+        <mxCell id="33X4tJl66k_FHWsIR2in-58" value="RVIZ2" style="rhombus;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+          <mxGeometry x="450" y="630" width="100" height="100" as="geometry" />
+        </mxCell>
+        <mxCell id="33X4tJl66k_FHWsIR2in-61" value="Physical/Hardware" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+          <mxGeometry x="470" y="100" width="120" height="60" as="geometry" />
+        </mxCell>
+        <mxCell id="33X4tJl66k_FHWsIR2in-62" value="ROS2 Node" style="ellipse;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+          <mxGeometry x="470" y="200" width="120" height="80" as="geometry" />
+        </mxCell>
+        <mxCell id="33X4tJl66k_FHWsIR2in-63" value="Visualization Tool" style="rhombus;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+          <mxGeometry x="470" y="299.5" width="120" height="119" as="geometry" />
+        </mxCell>
+        <mxCell id="33X4tJl66k_FHWsIR2in-65" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;" edge="1" parent="1" source="33X4tJl66k_FHWsIR2in-64" target="33X4tJl66k_FHWsIR2in-51">
+          <mxGeometry relative="1" as="geometry" />
+        </mxCell>
+        <mxCell id="33X4tJl66k_FHWsIR2in-66" value="Tf- Matrix" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="33X4tJl66k_FHWsIR2in-65">
+          <mxGeometry x="0.1206" relative="1" as="geometry">
+            <mxPoint x="-9" y="-20" as="offset" />
+          </mxGeometry>
+        </mxCell>
+        <mxCell id="33X4tJl66k_FHWsIR2in-64" value="TF2" style="ellipse;whiteSpace=wrap;html=1;" vertex="1" parent="1">
+          <mxGeometry x="10" y="500" width="120" height="80" as="geometry" />
+        </mxCell>
+      </root>
+    </mxGraphModel>
+  </diagram>
+</mxfile>
diff --git a/Bachelorarbeit/Flowchart_Ba.drawio.png b/Bachelorarbeit/Flowchart_Ba.drawio.png
new file mode 100644
index 0000000000000000000000000000000000000000..66425765d952f24a6df7eb9a087f348d9a3607cd
Binary files /dev/null and b/Bachelorarbeit/Flowchart_Ba.drawio.png differ
diff --git a/Information_MCU_vl53l5cx/PCF8575.pdf b/Information_MCU_vl53l5cx/PCF8575.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..0c6b113c9a21f6f886f5a4ccdfe672f3f76d7c90
Binary files /dev/null and b/Information_MCU_vl53l5cx/PCF8575.pdf differ