Preheat the slow cooker if necessary; see the manufacturer's instructions. Drain and rinse the soaked beans. Place them in a saucepan, add fresh water to cover and bring to the boil. Boil vigorously for 10 minutes, then drain into a sieve.
Meanwhile, heat the oil in a saucepan, add the onion and fry, stirring, for 5 minutes or until softened. Add the carrots, celery and garlic and fry for 2–3 minutes. Stir the crushed fennel, cumin and coriander seeds into the vegetables with the chilli powder and cook for 1 minute.
Add the tomatoes, stock, sugar and a little pepper. Bring to the boil, then pour into the slow cooker pot. Mix in the beans, pressing them under the liquid, then cover with the lid and cook on low for 8–10 hours.
Season the cooked beans to taste with salt. Top with spoonfuls of soured cream or yogurt and avocado salsa (see below) and serve accompanied by boiled rice or crusty bread.