Commercial systems that measure carbon dioxide for soil respiration experiments can be very expensive, but we built one for a fraction of the cost. The controller is based on an Arduino Uno, with a datalogger shield for storing the collected data, and a Macetech Centipede Shield. The measurement system is a Licor LI-840 CO2 analyzer which outputs its data every second using XML strings via an RS232 port. The Arduino controller interprets the XML data and stores the desired parameters on the SD memory card. It also displays the live data on a 4-line LCD display. The centipede shield allows us to control 120 separate solenoid valves to allow air to flow to the gas analyzer from any of the 60 chambers, mounted in a temperature-controlled water bath below the valve system. Each chamber has two solenoids – one for inlet air from a circulation pump, and one for outlet air, to the gas analyzer. The chambers are normally vented to the outside, and only one chamber is closed at a time, in 5 minute increments. By cycling through each chamber, we are able to measure the rate of change in the CO2 concentration when that chamber is put into a closed loop.