If using dried beans, the day before you want to make this soak the black beans in water for 12 to 24 hours.
In a large stock pot, saute butter, diced onion, minced garlic and diced carrots for 5 minutes or until onions are translucent.
Add ham hock and enough water to cover it, then about 6 cubes of beef bouillon. Drain the black beans and rinse them with cold water, then add them to the soup.
In a separate pan, brown the ground sausage until almost cooked, then add it to the soup pan. Reserve the drippings in the sausage pan and put the heat on low. Add flour, a teaspoon at a time until a thick paste forms. Leave it on low while stirring frequently til it turns a light golden brown, or about 5 minutes. Take some broth from the soup and mix it into the roux (drippings and flour mixture) slowly, stirring continuously. When you've added about 1/2 a cup of the broth and it's thoroughly mixed, scrape it all into the soup and mix in. This will add the flavor of the drippings without too much oil sheen.
Add in about half the quantity of garam masala, bay leaves and salt. Taste it til you get the quantity of salt right, then slowly start adding in more garam masala til you like it.
Serve with rice.