Rinse and sort pinto beans, black beans and garbanzo beans. Place in a large bowl and cover with water. Soak overnight.
Drain beans and place in a large pot; cover with water. Bring to a boil and cook for 1 hour, or until beans are tender. It may be necessary to add more water during cooking to prevent drying out or scorching.
Heat oil in a small saucepan over medium-high heat. Saute onion and garlic until onion is transparent. Stir in cumin. To the beans add the onions, garlic and crushed tomatoes. Simmer for 20 minutes. Stir in corn and cinnamon; cook 15 minutes more. Season with salt, pepper and cayenne to taste before serving.