Warm the milk in a saucepan very gently until tepid.
Sift the flours into a large bowl and stir in the yeast, salt and sugar until well-combined.
Make a well in the centre of the mixture and stir in the warm milk. Beat well with a wooden spoon for 3-4 minutes, or until the batter is thick and elastic.
Cover the bowl with cling film and set aside in a warm place for an hour, or until the batter has doubled in size.
When the batter has risen, mix the bicarbonate of soda with the warm water, and beat the mixture into the batter for a couple of minutes. Set aside to rest in a warm place for a further 30 minutes. By this time the mixture should have risen and be covered with tiny bubbles.
Heat a flat griddle pan or large heavy-based non-stick frying pan over a medium-high heat.
Generously butter the insides of four crumpet rings or 9cm/3½in chefs' rings and place them onto the griddle or into the frying pan. Warm the rings for a minute or two.
Using a dessertspoon, drop three large spoonfuls of the crumpet batter into each ring. It should come around 1.5cm/½in up the sides of each ring, but no more. Cook for 9-12 minutes, or until lots of tiny bubbles have risen to the surface and burst and the tops look dry and set.
Carefully lift off the rings - it shouldn't be too difficult as the crumpets will ease back from the sides when they are ready. (Use an oven glove and take care as the crumpet rings will be hot.)
Flip the crumpets over with a spatula and cook on the other side for a further two minutes, or until golden-brown. You can keep these crumpets warm while the remaining batter is prepared, or serve immediately spread with lots of butter.
Cook the remaining crumpets in exactly the same way as the first, washing and buttering the rings well before re-using. The crumpets can also be cooled and then toasted.
When you come make the last few crumpets, you may find that your batter thickens and the bubbles find it harder to burst. If this occurs, simply help each one on its way by pricking lightly with a cocktail stick.