I have a requirement where I need to make the * same as the # key for DTMF data termination. i.e. the caller enters an account number where minimum length and maximum length are different, the caller enters the # or * key to inform the application that data entry has finished. I redefined the data termination key (termchar) and left it empty value however the * is not taking affect.
I specified the VXML property termchar on the root document in the Properties of the application.
In the case that you describe, I usually use the Form which I set to capture all characters (digits from 0 to 9, # and *) - here you have to remember that you have to put \* as DTMF Keypress to capture star. Once the char is captured I use Decision block where I put the conditions for and provide treatment for valid options (including star and hash).
It's more complex than setting just one global setting but it should work for you.