First of all, we need to realize what the constraints are. The desired temperature of water does not equal of the temperature of water that is:
- in the trunk (is it even a right word? well, I mean the tube between the faucet and water outlet)
- and also probably a part of the pipe.
It is (theoretically and technically) possible to keep it at some predefined level, perhaps, but the cost of maintaining the proper temperature would be high (constant warming up to some system preset e.g. the temperature of the body). So from the economical point of view you need a workaround.
There are few ways yo can go, either choosing some of these or all (most of these have been already proposed in the other answers):
- giving user possibility to pour out water of incorrect temperature before s/he steps into the shower cabin. In case of tube/shower combos there is a possibility to direct water either to the shower or to the faucet, so that you can use the latter and then switch to the first one.
- giving visual cues explaining the (obvious) fact that the water temperature may be not at the desired level from the beginning
- giving user possibility to adjust the water temperature - either by predefining it at some level or by trial and error, checking the temperature and then changing the setting
- giving visual feedback about the temperature - the LED pattern shown by @SimonTeo is great here.
My idea how to deal with it is a control which:
* allows user to preset temperature (but how to tell him that a preset on a control equals some temperature? You can go Celsius or Farenheit or some more descriptive way - "temperature of body", "warm shower", "cold shower")
* then, until the water does not reach this temperature, water is directed to the drain - this point would need to come with a visual feedback of it that users would understand (a pulsating led or something saying "wait for the water"), otherwise userw would just think the shower does not work at all
* once the temperature reaches the preset, water is directed to the shower
But still, the amount of water that stays in trunk is a problem - it is behind any control unless it is sucked out of the trunk, so that only water of the desired temperature reaches user's body.