diff --git a/scripts/writepid.mako.cpp b/scripts/writepid.mako.cpp
new file mode 100644
index 0000000..f168e10
--- /dev/null
+++ b/scripts/writepid.mako.cpp
@@ -0,0 +1,48 @@
+## This file is a template.  The comment below is emitted
+## into the rendered file; feel free to edit this file.
+
+// !!! WARNING: This is GENERATED Code... Please do NOT edit !!!
+
+#include <map>
+#include "conf.hpp"
+
+std::map<int64_t, PIDConf> ZoneConfig = {
+% for zone in PIDDict.iterkeys():
+    % if zone:
+    {${zone},
+        {
+            % for key, details in PIDDict[zone].iteritems():
+            {"${key}",
+                {"${details['type']}",
+                 {
+                   % for item in details['inputs'].split():
+                   "${item}",
+                   % endfor
+                 },
+                 <%
+                      # If the PID type is a fan, set-point field is unused,
+                      # so just use a default of 0.  If the PID is not a type
+                      # of fan, require the set-point field.
+                      if 'fan' == details['type']:
+                          setpoint = 0
+                      else:
+                          setpoint = details['set-point']
+                  %>
+                 ${setpoint},
+                 {${details['pid']['sampleperiod']},
+                  ${details['pid']['p_coefficient']},
+                  ${details['pid']['i_coefficient']},
+                  ${details['pid']['ff_off_coefficient']},
+                  ${details['pid']['ff_gain_coefficient']},
+                  {${details['pid']['i_limit']['min']}, ${details['pid']['i_limit']['max']}},
+                  {${details['pid']['out_limit']['min']}, ${details['pid']['out_limit']['max']}},
+                  ${details['pid']['slew_neg']},
+                  ${details['pid']['slew_pos']}},
+                },
+            },
+            % endfor
+        },
+    },
+   % endif
+% endfor
+};
