diff --git a/main.c b/main.c
new file mode 100644
index 0000000000000000000000000000000000000000..fa3437c1e5e0c34b4f422c08bb6ef347b02a4674
--- /dev/null
+++ b/main.c
@@ -0,0 +1,25 @@
+#include <stdio.h>
+#include "pico/stdlib.h"
+#include "protocol.h"
+#include "usb_serial.h"
+
+int main() {
+    stdio_init_all();
+    usb_serial_init();
+    protocol_init();
+
+    int conn = protocol_connect("USB", 1);
+
+    while (1) {
+        char buffer[64] = {0};
+        if (protocol_receive(conn, buffer, sizeof(buffer)) > 0) {
+            printf("Data Received: %s\n", buffer);
+            protocol_send(conn, buffer, strlen(buffer));
+        }
+        sleep_ms(100); //delay
+    }
+
+    protocol_disconnect(conn);
+    protocol_cleanup();
+    return 0;
+}