diff --git a/arch/sandbox/cpu/cpu.c b/arch/sandbox/cpu/cpu.c
index ff0fa8a..7a82798 100644
--- a/arch/sandbox/cpu/cpu.c
+++ b/arch/sandbox/cpu/cpu.c
@@ -291,6 +291,31 @@
 {
 }
 
+/**
+ * setup_auto_tree() - Set up a basic device tree to allow sandbox to work
+ *
+ * This is used when no device tree is provided. It creates a simple tree with
+ * just a /binman node.
+ *
+ * @blob: Place to put the created device tree
+ * Returns: 0 on success, -ve FDT error code on failure
+ */
+static int setup_auto_tree(void *blob)
+{
+	int err;
+
+	err = fdt_create_empty_tree(blob, 256);
+	if (err)
+		return err;
+
+	/* Create a /binman node in case CONFIG_BINMAN is enabled */
+	err = fdt_add_subnode(blob, 0, "binman");
+	if (err < 0)
+		return err;
+
+	return 0;
+}
+
 void *board_fdt_blob_setup(int *ret)
 {
 	struct sandbox_state *state = state_get_current();
@@ -303,7 +328,7 @@
 	blob = map_sysmem(CONFIG_SYS_FDT_LOAD_ADDR, 0);
 	*ret = 0;
 	if (!state->fdt_fname) {
-		err = fdt_create_empty_tree(blob, 256);
+		err = setup_auto_tree(blob);
 		if (!err)
 			goto done;
 		printf("Unable to create empty FDT: %s\n", fdt_strerror(err));
diff --git a/test/py/tests/test_help.py b/test/py/tests/test_help.py
index bac0a29..153133c 100644
--- a/test/py/tests/test_help.py
+++ b/test/py/tests/test_help.py
@@ -9,6 +9,18 @@
 
     u_boot_console.run_command('help')
 
+@pytest.mark.boardspec('sandbox')
+def test_help_no_devicetree(u_boot_console):
+    try:
+        cons = u_boot_console
+        cons.restart_uboot_with_flags([], use_dtb=False)
+        cons.run_command('help')
+        output = cons.get_spawn_output().replace('\r', '')
+        assert 'print command description/usage' in output
+    finally:
+        # Restart afterward to get the normal device tree back
+        u_boot_console.restart_uboot()
+
 @pytest.mark.boardspec('sandbox_vpl')
 def test_vpl_help(u_boot_console):
     try:
