In cast iron or other heavy-bottomed pan on a medium-low flame, dry roast the peanuts, sesame seeds, dry coconut and whole spices (if you are using the powders, do not dry roast, but simply add them later). Keep mixing to prevent burning and/or uneven roasting, and remove from heat once they are fragrant.
Transfer to a blender jar/food processor and allow to cool.
Meanwhile, in the same pan, dry roast the besan or sattu flour just for a minute or so.
Add to the awaiting blender jar and pulse until you have a coarse powder.
To the same blender jar, add the tamarind, garlic, jaggery, salt, turmeric powder and any spice powders you’re using (if you did not use the whole spices in the first stuffing step, that is).
Pulse again until the tamarind is well incorporated and the mixture is becoming powdery. A little chunky and not completely uniform is completely fine.
Adjust taste—you want an intense mixture of nuttiness, spice, salt, and sour-sweet.
Transfer to a bowl and add 1-2 tablespoons of peanut oil, or just enough to make the mixture clump together more readily.