Place the ham bone, onion, celery, carrot and peppercorns into a pot together and cover with water making sure that the bone is covered. Bring to a boil, then reduce the stock to a simmer and simmer for 2 hours or until the meat starts to fall off the bone.
Allow the stock to cool slightly before straining out the vegetables. Remove all the meat from the bone and set aside with the broth for the soup.
Pour the oil into the same pot and sweat off the onions and extra ham for 3 minutes add in the capsicum and silverbeet stalks and stir again until softened. Add in the garlic and the tomatoes and pour in the stock, bring to a simmer and cook for 15 minutes. Add in the lentils, herbs and the chopped silverbeet and cook for a further 10-15 minutes until the lentils have softened.
Season with salt and pepper and serve garnished with parsley.