Sort through the beans and remove any stones. To soak the beans, put them in a large bowl, cover them with cold water and allow them to soak, covered, overnight. Or use the quick-soak method below.
Quick-soak method: Put the beans in a colander and rinse under water. Put the beans in a large pot and add enough water to cover the beans by at least 3 inches. Bring to a boil over high heat. Reduce the heat and simmer for 4 minutes. Turn off the heat and let the beans stand for 1 hour.
Drain and rinse the soaked beans and transfer them to a large pot. Add enough water to cover the beans by at least 3 inches. Add the salt, pepper, chili powder, cumin, cayenne, smoked paprika, garlic, jalapeno, bay leaf and onion to the pot. Bring to a boil, then reduce the heat to bring it to a simmer. Cover and cook until the beans are tender, 2 to 3 1/2 hours.