diff --git a/epicardium/ble/ble.c b/epicardium/ble/ble.c
index 9dc422f820ec40db39bcc652d786cedf8e5ce47c..928ec7685b839410218c3f174c1a0d0b89b4a85c 100644
--- a/epicardium/ble/ble.c
+++ b/epicardium/ble/ble.c
@@ -97,7 +97,6 @@ static void setAddress(void)
 
 	if (result == -1) {
 		APP_TRACE_INFO0("mac.txt not found, generating random MAC");
-		TRNG_Init(NULL);
 		TRNG_Read(MXC_TRNG, bdAddr, sizeof(bdAddr));
 		sprintf(buf, "%02x:%02x:%02x:%02x:%02x:%02x\n",
 			bdAddr[0], bdAddr[1], bdAddr[2],
diff --git a/epicardium/modules/hardware.c b/epicardium/modules/hardware.c
index a93c8c6d67447cb84bf3ee4ba522809a842b52dc..89a04e6d86e3818c28b82bc539028c12175c8dbc 100644
--- a/epicardium/modules/hardware.c
+++ b/epicardium/modules/hardware.c
@@ -59,6 +59,11 @@ int hardware_early_init(void)
 	 */
 	portexpander_init();
 
+	/*
+	 * RNG
+	 */
+	TRNG_Init(NULL);
+
 	/*
 	 * Buttons
 	 */