Add the beans to an Instant Pot along with onion, garlic, and salt.
Pour about 5 cups of water and cook at high for 40 minutes, then naturally release the pressure for about 20-30 minutes (read note 2).
Set aside 3 cups of cooked beans along with 3 cups of cooking water.
Sauté
In a large braising pan or pot add the bacon and cook over medium-low heat for about 5 minutes.
Add chorizo and crumble it with the back of a spoon. Cook stirring constantly for about 5 minutes.
Stir in onions and jalapeño peppers cook for 4 more minutes or until onions are slightly translucent.
Mix in tomatoes, garlic, guajillo powder, and ground cumin.
Cook for 3 minutes just to give the time for the tomatoes to release their juice and allow the flavors to meld together.
Add hot dog sausages and ham, mix well, and cook for 2-3 more minutes.
Add the cooked beans along with the cooking water, plus more water if desired (read note 3).
Simmer
Cook for 20 minutes, uncovered. Adjust seasonings to taste if needed.
Turn off the heat and serve with chopped onions and cilantro, queso fresco, and a squeeze of lime.
Notes
You can skip cooking the beans and use canned. Since you won't have the cooking water, you can substitute with chicken stock if you want or just add water.
If you prefer cooking the beans in the stovetop or a slow cooker, check out my recipe for frijoles de la olla for specific instructions.
The quantity of liquid is really up to you. Some people like their charro beans with lots of broth and others with less.