Rinse the soaked beans thoroughly under cold water and set them aside while you prepare the vegetable base.
Heat the olive oil in a large Dutch oven or heavy-bottomed pot over medium heat and sauté the onion, carrots, and celery until they are soft and fragrant.
Add the ham bone, soaked beans, broth, bay leaves, thyme, and pepper into the pot, ensuring the liquid completely covers the ingredients.
Bring the mixture to a rolling boil, then immediately reduce the heat to low and cover the pot with a tight-fitting lid.
Simmer the soup for about 1.5 to 2 hours, or until the beans are completely tender and the meat is falling off the ham bone.
Remove the ham bone from the pot, shred any remaining meat back into the soup, and discard the bone and the bay leaves.
Use a wooden spoon to mash a small portion of the beans against the side of the pot if you prefer a thicker, creamier broth.
Taste the soup and add salt only if necessary, as the ham bone often provides enough saltiness for the entire dish.