A pH buffer's function is to provide reaction "alternatives" for strong acids and bases when they contact the nutrient solution. These acid or basic substances generally react with water and this changes the value of pH. When a buffer is present, they react with the buffering molecules instead of water. This of course, makes pH remain approximately constant. Since the generation of species can be perfectly controlled and predicted by the use of mathematical methods, we can create very good buffering system by "experimenting" with different substances using a computer, as I mentioned in an earlier post.
As a result of my simulations I concluded that a mixture of citric acid/carbonate acts as a good buffer in hydroponics both towards the addition of acids and bases. The actual species involved are citrate and the bicarbonate ion, the bicarbonate ion reacts with acids, providing basic pH buffering, while the citrate reacts with acids providing an acid range buffering effect.
It is very easy to use this system by using your regular pH meter. Prepare your nutrient solution as usual, at the end, add 5g of citric acid for 500 liters of solution (this will acidify the pH of your solution a lot). Now, take back the pH to the value you want (5.8 to 6.2) by adding potassium carbonate. It is important not to use bicarbonate as this will react quickly with citric acid to form carbonic acid and then carbon dioxide (which will leave as a gas !). Also make sure you add both chemicals previously dissolved in water to afford quick chemical equilibrium achievement inside the solution.
By using this method you will have a nutrient solution that is perfectly buffered at your desired pH and that will remain at that pH value for a good amount of time. This of course, depending on the solution's volume and the type and number of plants you grow with it. (below, the distribution of species diagram or the carbonate family)