Drain and rinse the beans, and mash a few lightly with fork.

Put the cumin, coriander, fennel and fenugreek seeds with the cinnamon stick into a small heavy-based frying pan. Roast on a medium heat, stirring frequently until the spices change colour and become aromatic, taking care not to burn them.

Grind the roasted spices into a fine powder in a coffee grinder, and add crushed chilli flakes.

Heat the oil over medium heat. When hot, add the mustard seeds and curry leaves. Remove the pan immediately from heat, cover, and let the seeds and leaves crackle and pop.

Put the pan back on heat, add the onion and cook until light golden. Add the ginger and garlic, and cook for a further 30 seconds.

Add the beans, ground spice mixture, salt, and water, and bring to the boil.

Turn the heat to low, cover and simmer for 20 minutes.