Add fresh water to channa, 2 pinch salt and pressure cook over low flame for 5-7 whistles or till they are soft to the touch.
Tip the contents of the pressure cooker into a colander and reserve the cooked water separately.
Heat a pan with 2 tsp oil. Add cinnamon, cloves and cardamom. Roast for a minute till the aroma arises.
Add onion, ginger and garlic and sauté till the onion turns translucent.
Switch off the stove and immediately add red chilli powder, coriander powder and cumin powder. Fry it in the heat itself. This will prevent the powders from changing color.
Add coriander leaves and mix well. Let it cool completely. Grind it to a smooth, thick paste using little water.
Heat the remaining oil in the same pan and add the ground onion paste.
Keep sautéing this paste till it turns to a light brown color over low flame.
Add the tomato puree and the cooked water of channa and let it simmer for 5-7 minutes.
Add turmeric powder, cooked kabuli channa, salt, channa masala powder and mix well.
If needed add more water and cook over low flame covered with a lid.
Cook till the raw smell disappears and the aroma arises. This should take 10 minutes. The gravy would also have thickened a bit at this stage.
Switch off and garnish the channa masala with coriander leaves.
Serve piping hot with any Indian flat bread of your choice with a lemon wedge.