First of all put all the spices into an empty frying pan then, over a medium heat, warm them through to draw out their flavour – the aroma will tell you when this is happening. Then scrape them all into a mortar and crush them to a powder.
Now add the oil to the pan and when it's hot add the onion and pepper together with the garlic and ginger. Let these cook together for 5 minutes.
After that stir in the mushroom and carrot along with the rest of the spices and continue to cook for a further 5 minutes. Then add the lentils and tomatoes, and stir well to break up the tomatoes and mix everything together.
Season well with salt and pepper, then cover the pan and let the whole lot simmer gently for 10 minutes.
After that remove the lid and let the sauce bubble and reduce for a further 3-5 minutes. Then stir in the yoghurt, let it warm through, then serve straightaway.