diff --git a/pycardium/meson.build b/pycardium/meson.build
index 7e76d925f814eabe6db524f182d4149373947f0a..608d9cce269614ebf9d6d5c65bdb7bb7110a53ce 100644
--- a/pycardium/meson.build
+++ b/pycardium/meson.build
@@ -71,9 +71,9 @@ elf = executable(
   modsrc,
   mp_headers,
   include_directories: micropython_includes,
-  dependencies: [max32665_startup_core1, board_card10, periphdriver, api_caller],
+  dependencies: [max32665_startup_core1, periphdriver, api_caller],
   link_with: upy,
-  link_whole: [max32665_startup_core1_lib, board_card10_lib],
+  link_whole: [max32665_startup_core1_lib],
   link_args: [
     '-Wl,-Map=' + meson.current_build_dir() + '/' + name + '.map',
   ],
diff --git a/pycardium/mphalport.c b/pycardium/mphalport.c
index 91064177fa4f1cb8f7e2852100ba7d89a6cc668f..b8ae7ec38b886b4fc3b97eed21cde3c4390c8e8d 100644
--- a/pycardium/mphalport.c
+++ b/pycardium/mphalport.c
@@ -41,6 +41,13 @@ int DEBUG_printf(const char *fmt, ...)
 	return ret;
 }
 
+/* newlib syscall to allow printf to work */
+long _write(int fd, const char *buf, size_t cnt)
+{
+	epic_uart_write_str(buf, cnt);
+	return cnt;
+}
+
 bool do_interrupt = false;
 
 /* Timer Interrupt used for control char notification */