diff --git a/code/game/machinery/computer/buildandrepair.dm b/code/game/machinery/computer/buildandrepair.dm
index 1f13887af46..94625961bc7 100644
--- a/code/game/machinery/computer/buildandrepair.dm
+++ b/code/game/machinery/computer/buildandrepair.dm
@@ -551,6 +551,10 @@
to_chat(user, "[src] does not accept circuit boards of this type!")
return
+ if(!B.build_path)
+ to_chat(user, "This is not a functional computer circuit board!")
+ return
+
B.play_tool_sound(src)
to_chat(user, "You place [B] inside [src].")
name += " ([B.board_name])"
diff --git a/code/game/machinery/constructable_frame.dm b/code/game/machinery/constructable_frame.dm
index 3159cec72a0..43208497026 100644
--- a/code/game/machinery/constructable_frame.dm
+++ b/code/game/machinery/constructable_frame.dm
@@ -99,6 +99,9 @@
if(istype(P, /obj/item/circuitboard))
var/obj/item/circuitboard/B = P
if(B.board_type == "machine")
+ if(!B.build_path)
+ to_chat(user, "This is not a functional machine board!")
+ return
playsound(src.loc, B.usesound, 50, 1)
to_chat(user, "You add the circuit board to the frame.")
circuit = P