Sort through the beans. Look for small rocks and debris.
Place in a large bowl and rinse several times. Lift beans out by hand into a clean bowl of water. Do not pour beans as there may be sand and debris at the bottom of rinse bowl.
Fill bowl with water and soak beans overnight. Drain off soaking water.
In a large soup pot, bring 3 quarts of water to a boil and add beans & beer.
Lower heat to simmer, cover pan and cook about 2 hours.
When the beans are light brown and soft, add salt, garlic and serrano peppers.
In a skillet over medium-high heat, fry bacon pieces and onion until bacon is crisp. Add to beans.
Lastly, add the cilantro and fresh tomatoes. Simmer for another hour. (either peel the tomatoes first or skim off bits of peel as they float to the top during cooking.).
Serve with flour or corn tortillas. Cornbread is great, too!
*If you are too busy to babysit a pot of beans, after the overnight soak, simmer in your crock pot; 3 cups of beans for a large crock pot, 2 cups of beans for a smaller crock pot. Cooking time for pre-soaked beans = 5-6 hours on low heat.