Okay, if beans turn out crunchy, here are my check points.
Did I soak them for a full 24 hours? With whey in the water? Or lemon juice?
If not, increase the soaking time and add the whey/lemon juice (2 Tbsp, at least)
Did you drain the soak water off of the beans and rinse? If not, try that next time, adding fresh water to cook.
Did you bring the water and beans to a boil before adding the other ingredients and placing the cast iron pot in the oven? If not, adjust your method here.
4 cups of beans should take about 6 hours to cook in a 350 degree oven. When you check them, if they are still crunchy, make sure there is enough water and increase the baking time. Also, check the beans once or twice during the baking to add liquid if necessary. Otherwise, you could end up with soft BURNT beans -- much worse than crunchy.