Press the tofu for 30 minutes. It's ideal if you use a tofu press, but if you don't have a tofu press then place the tofu on a plate, with another plate on top of it and then put something heavy on top of that, like a heavy pot.
Preheat the oven to 400°F (200°C).
When the tofu is pressed, cut it into triangles. You can also cut it into rectangles or cubes.
In a large mixing bowl, add soy milk, all purpose flour, cornstarch, garlic powder, onion powder, salt, black pepper and cayenne pepper and whisk into a batter.
In a second bowl, add panko breadcrumbs, salt and pepper and mix together.
Add the tofu triangles to the batter in the large bowl and toss the tofu in the batter so that every piece is coated.
Transfer the tofu triangles in batches to the breadcrumbs bowl and gently toss them in the breadcrumbs so that they are coated on all sides.
Place the tofu onto a parchment lined baking sheet and bake for 20 minutes.
Remove it from the oven and add to a bowl with the BBQ sauce. Toss the tofu gently in the sauce so that all the pieces are coated.
Place the tofu back onto the parchment lined baking sheet and place it back into the oven to bake for a further 10 minutes.
Remove from the oven and brush with more BBQ sauce before serving.