Heat the oil in a large pot. Add the whole spices: the cinnamon, cardamom, cloves and bay leaves. Stir for a minute, then add the cumin seeds and mix.
Add the carrots to the pot and saute for a couple of minutes.
Add the potatoes and ginger. Mix, cover, and cook a couple of minutes over medium heat.
Add the bell peppers followed by the turmeric. Mix.
Add the drained moong dal and sorghum to the pot. Mix well and saute for a couple of minutes so the dal and sorghum toast slightly.
Add six cups of water or vegetable stock to the pot and bring to a rolling boil. Add salt at this point, making sure that the water is a bit saltier than you want your finished khichdi to be.
Bring to a rolling boil, then lower heat to a simmer, cover and cook the khichdi for 45 minutes. Check and see if you want the sorghum to get more tender--I like it a bit chewy but you can cover the pot again and cook the khichdi longer if you want the grains softer.
Once the sorghum has reached the consistency you like, and if there is still a good deal of water remaining in the pot, take the lid off and let the khichdi cook over medium-high heat until most of the moisture, but not all, has evaporated. You don't want the khichdi to be dry, like biryani rice--a slightly runny khichdi, with a risotto-like texture, tastes best. Stir a few times as it cooks to make sure nothing sticks to the bottom of the pot.
Garnish the khichdi with cilantro and serve hot.