Heat a large frying pan or dutch oven over medium-high heat. Add 2 tbs of olive oil and wait a few seconds until it is hot, then add the onion. Sauté until it starts to turn translucent, about 5 minutes.
Add the carrot, red pepper, garlic, and a dash of salt. Sauté until the vegetables start to soften and brown, about 5 more minutes.
While the vegetables are cooking, cut the tofu block into 3 pieces (3 thinner squares) and press all of the water out with a clean kitchen towel.
Add the spices into the pan with the vegetables. If the vegetables start to stick to the bottom of the pan, add a spash of water.
Crumble the tofu with your fingers into the pan. Add the soy sauce and toss the tofu so that is evenly coated with the vegetable and spice mixture.
Add the coconut milk, peanut butter, sambal oelek, water, salt, and red lentils. Stir to combine, bring to boil, reduce the heat to simmer and cover.
While the mixture is simmering, cut the broccoli in bite-sized florets.
Add the broccoli to the mixture, and mix well. Taste the liquid of the mixture and make sure that the spice and salt levels are correct. Add more salt and/or sambal oelek if necessary. Cover and let simmer until the lentils are finished cooking, about 15-25 minutes. If you are using split red lentils this will take less time. Check periodocally, if the lentils soak up all of the liquid and are not finished cooking, add more water as needed.
Remove from the heat once the lentils are finished cooking, and add the juice of 1/2 a lemon. Serve with rice, garnish cilantro and peanuts or cashews to add a nice crunch!
This curry stays good for 4 days in the fridge and in the freezer for longer storage. If possible, eat the next day as it is even more tasty after the flavors have melded!