diff --git a/control/manager.cpp b/control/manager.cpp
index ff8afef..bdea542 100644
--- a/control/manager.cpp
+++ b/control/manager.cpp
@@ -92,13 +92,21 @@
     // Create the appropriate Zone objects based on the
     // actual system configuration.
 #ifdef CONTROL_USE_JSON
-    auto zoneLayouts = getZoneGroups(bus);
+    for (auto& group : getZoneGroups(bus))
+    {
+        // Create a Zone object for each zone in the group
+        for (auto& z : std::get<zoneListPos>(group))
+        {
+            fs::path path{CONTROL_OBJPATH};
+            path /= std::to_string(std::get<zoneNumPos>(z));
+            _zones.emplace(
+                std::get<zoneNumPos>(z),
+                std::make_unique<Zone>(mode, _bus, path.string(), event, z));
+        }
+    }
 #else
-    auto zoneLayouts = _zoneLayouts;
-#endif
-
     // Find the 1 ZoneGroup that meets all of its conditions
-    for (auto& group : zoneLayouts)
+    for (auto& group : _zoneLayouts)
     {
         auto& conditions = std::get<conditionListPos>(group);
 
@@ -122,6 +130,7 @@
             break;
         }
     }
+#endif
 
     if (mode == Mode::control)
     {
