Step 1Place the beans in a heavy pot and cover by 3 to 4 inches with water. Loosely cover, bring to a simmer, and gently simmer the beans until tender, 1 to 2 hours (timing will vary depending on the age of the beans). Drain the beans, reserving some of the liquid. Take a cup or so of cooked beans and mash. Place the beans back in the pot, stirring in the mashed beans and enough reserved liquid to moisten, and set aside.
Step 2When the beans are almost ready, fry the bacon in a skillet over medium heat until the fat renders out and the bacon is starting to brown. Stir in the onions and continue to cook, stirring frequently, until the onions are softened and beginning to brown, 20 to 30 minutes. Stir in the diced peppers, along with the garlic. Remove from heat.
Step 3Stir the bacon mixture in with the beans, and bring to a gentle simmer, stirring constantly. Add additional reserved liquid or water as needed to keep the beans moist, and cook for 10 or so minutes to marry the flavors. Taste, adding salt and pepper as needed to season. Remove from heat and serve.