Combine ham bone, pepper, onion, and water in a large stock pot; bring to a boil. Reduce heat; cover and simmer 3 hours.
Add potatoes, cabbage, tomatoes, and red pepper; simmer an additional hour. Remove ham bone from soup; remove meat from bone and chop, discarding bone. Add chopped meat to soup; skim off and discard excess fat from soup. Stir in salt.
Ladle soup into individual serving bowls; serve warm.
Note: A cooked ham bone with ham scraps may be used. If cooked ham is used, reduce initial cooking time to 2 hours.