Brown the beef and onion in a large skillet for 9 to 10 minutes, breaking the meat into fine crumbles, until it reaches 160°F.
Drain the fat and stir in the garlic, chili powder and cumin for 1 minute.
Transfer the mixture to a 6-quart crockpot and add the tomatoes, tomato sauce, all three beans, broth and salt.
Cover and cook on low for 6 to 7 hours until the beans are tender and the sauce has thickened.
Stir from the edges and cook uncovered on high for 15 minutes if the chili does not mound briefly on a spoon.