diff --git a/source/third_party/mbedtls/include/mbedtls/mbedtls_config.h b/source/third_party/mbedtls/include/mbedtls/mbedtls_config.h
index af0761395..53d0a26cf 100644
--- a/source/third_party/mbedtls/include/mbedtls/mbedtls_config.h
+++ b/source/third_party/mbedtls/include/mbedtls/mbedtls_config.h
@@ -140,7 +140,7 @@
  *       regardless of the setting of MBEDTLS_HAVE_TIME, unless
  *       MBEDTLS_TIMING_ALT is used. See timing.c for more information.
  */
-#define MBEDTLS_HAVE_TIME
+//#define MBEDTLS_HAVE_TIME
 
 /**
  * \def MBEDTLS_HAVE_TIME_DATE
@@ -161,7 +161,7 @@
  * mbedtls_platform_gmtime_r() at compile-time by using the macro
  * MBEDTLS_PLATFORM_GMTIME_R_ALT.
  */
-#define MBEDTLS_HAVE_TIME_DATE
+//#define MBEDTLS_HAVE_TIME_DATE
 
 /**
  * \def MBEDTLS_PLATFORM_MEMORY
@@ -1192,7 +1192,7 @@
  *
  * Enable functions that use the filesystem.
  */
-#define MBEDTLS_FS_IO
+//#define MBEDTLS_FS_IO
 
 /**
  * \def MBEDTLS_NO_DEFAULT_ENTROPY_SOURCES
@@ -1215,7 +1215,7 @@
  *
  * Uncomment this macro to disable the built-in platform entropy functions.
  */
-//#define MBEDTLS_NO_PLATFORM_ENTROPY
+#define MBEDTLS_NO_PLATFORM_ENTROPY
 
 /**
  * \def MBEDTLS_ENTROPY_FORCE_SHA256
@@ -2927,7 +2927,7 @@
  *
  * This module provides networking routines.
  */
-#define MBEDTLS_NET_C
+//#define MBEDTLS_NET_C
 
 /**
  * \def MBEDTLS_OID_C
@@ -3175,7 +3175,7 @@
  *           either MBEDTLS_PSA_ITS_FILE_C or a native implementation of
  *           the PSA ITS interface
  */
-#define MBEDTLS_PSA_CRYPTO_STORAGE_C
+//#define MBEDTLS_PSA_CRYPTO_STORAGE_C
 
 /**
  * \def MBEDTLS_PSA_ITS_FILE_C
@@ -3187,7 +3187,7 @@
  *
  * Requires: MBEDTLS_FS_IO
  */
-#define MBEDTLS_PSA_ITS_FILE_C
+//#define MBEDTLS_PSA_ITS_FILE_C
 
 /**
  * \def MBEDTLS_RIPEMD160_C
@@ -3546,7 +3546,7 @@
  *
  * Module:  library/timing.c
  */
-#define MBEDTLS_TIMING_C
+//#define MBEDTLS_TIMING_C
 
 /**
  * \def MBEDTLS_VERSION_C
diff --git a/source/third_party/mbedtls/library/Makefile b/source/third_party/mbedtls/library/Makefile
index 26c64fdfd..381aec602 100644
--- a/source/third_party/mbedtls/library/Makefile
+++ b/source/third_party/mbedtls/library/Makefile
@@ -1,7 +1,28 @@
 
 # Also see "include/mbedtls/mbedtls_config.h"
 
-CFLAGS	?= -O2
+# Uncomment to use conan packages instead of installed SDK
+#include ../imports.conan.mak
+
+# Enable local overrides via a top-directory 'products.mak'
+# include ../../../products.mak
+
+GCC_ARMCOMPILER = "/home/ti/ti/gcc-arm-none-eabi-12-3-Rel1-0"
+CC = "$(GCC_ARMCOMPILER)/bin/arm-none-eabi-gcc"
+AR = "$(GCC_ARMCOMPILER)/bin/arm-none-eabi-gcc-ar"
+$(LD) = "$(GCC_ARMCOMPILER)/bin/arm-none-eabi-gcc-ld"
+
+# TODO: Update -Os to -Oz once mbedtls size is optimized
+GCC_M33_CFLAGS= $(POSIX_INCS_GCC) -mcpu=cortex-m33 -mfloat-abi=hard -mfpu=fpv5-sp-d16 \
+				-Wno-builtin-requires-header -g -Os -ffunction-sections \
+        		-fdata-sections -g -Wall -std=c99 -c
+
+CFLAGS = $(INCS_CC13X4) $(GCC_M33_CFLAGS)
+
+DESTDIR=/usr/local
+PREFIX=mbedtls_
+PERL ?= perl
+
 WARNING_CFLAGS ?=  -Wall -Wextra -Wformat=2 -Wno-format-nonliteral
 LDFLAGS ?=
 
@@ -237,7 +258,7 @@ endif
 endif
 
 libmbedtls.$(SOEXT_TLS): $(OBJS_TLS) libmbedx509.so
-	echo "  LD    $@"
+	echo "  $(LD)    $@"
 	$(CC) -shared -Wl,-soname,$@ -o $@ $(OBJS_TLS) -L. -lmbedx509 -lmbedcrypto $(LOCAL_LDFLAGS) $(LDFLAGS)
 
 ifneq ($(SOEXT_TLS),so)
@@ -247,11 +268,11 @@ libmbedtls.so: libmbedtls.$(SOEXT_TLS)
 endif
 
 libmbedtls.dylib: $(OBJS_TLS) libmbedx509.dylib
-	echo "  LD    $@"
+	echo "  $(LD)    $@"
 	$(CC) -dynamiclib -o $@ $(OBJS_TLS) -L. -lmbedx509 -lmbedcrypto $(LOCAL_LDFLAGS) $(LDFLAGS)
 
 libmbedtls.dll: $(OBJS_TLS) libmbedx509.dll
-	echo "  LD    $@"
+	echo "  $(LD)    $@"
 	$(CC) -shared -Wl,-soname,$@ -Wl,--out-implib,$@.a -o $@ $(OBJS_TLS) -lws2_32 -lwinmm -lgdi32 -L. -lmbedx509 -lmbedcrypto -static-libgcc $(LOCAL_LDFLAGS) $(LDFLAGS)
 
 # x509
@@ -266,7 +287,7 @@ endif
 endif
 
 libmbedx509.$(SOEXT_X509): $(OBJS_X509) libmbedcrypto.so
-	echo "  LD    $@"
+	echo "  $(LD)    $@"
 	$(CC) -shared -Wl,-soname,$@ -o $@ $(OBJS_X509) -L. -lmbedcrypto $(LOCAL_LDFLAGS) $(LDFLAGS)
 
 ifneq ($(SOEXT_X509),so)
@@ -276,11 +297,11 @@ libmbedx509.so: libmbedx509.$(SOEXT_X509)
 endif
 
 libmbedx509.dylib: $(OBJS_X509) libmbedcrypto.dylib
-	echo "  LD    $@"
+	echo "  $(LD)    $@"
 	$(CC) -dynamiclib -o $@ $(OBJS_X509) -L. -lmbedcrypto  $(LOCAL_LDFLAGS) $(LDFLAGS)
 
 libmbedx509.dll: $(OBJS_X509) libmbedcrypto.dll
-	echo "  LD    $@"
+	echo "  $(LD)    $@"
 	$(CC) -shared -Wl,-soname,$@ -Wl,--out-implib,$@.a -o $@ $(OBJS_X509) -lws2_32 -lwinmm -lgdi32 -L. -lmbedcrypto -static-libgcc $(LOCAL_LDFLAGS) $(LDFLAGS)
 
 # crypto
@@ -295,7 +316,7 @@ endif
 endif
 
 libmbedcrypto.$(SOEXT_CRYPTO): $(OBJS_CRYPTO)
-	echo "  LD    $@"
+	echo "  $(LD)    $@"
 	$(CC) -shared -Wl,-soname,$@ -o $@ $(OBJS_CRYPTO) $(LOCAL_LDFLAGS) $(LDFLAGS)
 
 ifneq ($(SOEXT_CRYPTO),so)
@@ -305,11 +326,11 @@ libmbedcrypto.so: libmbedcrypto.$(SOEXT_CRYPTO)
 endif
 
 libmbedcrypto.dylib: $(OBJS_CRYPTO)
-	echo "  LD    $@"
+	echo "  $(LD)    $@"
 	$(CC) -dynamiclib -o $@ $(OBJS_CRYPTO) $(LOCAL_LDFLAGS) $(LDFLAGS)
 
 libmbedcrypto.dll: $(OBJS_CRYPTO)
-	echo "  LD    $@"
+	echo "  $(LD)    $@"
 	$(CC) -shared -Wl,-soname,$@ -Wl,--out-implib,$@.a -o $@ $(OBJS_CRYPTO) -lws2_32 -lwinmm -lgdi32 -static-libgcc $(LOCAL_LDFLAGS) $(LDFLAGS)
 
 .c.o:
