What language?
I do something similar, but instead of pressing and holding forever (e.g., 3 seconds), I use two presses. Because the button is used for something else, I flash a message after the first press to press again for the alternative function. The alternative function is rarely invoked in practice. Of course, there is always a problem that the chip can't read the user's mind, so you have to wait for the delay to time out. A new user or slow reader probably misses the window the first time, but with a little practice, you can easily get the second press within the window. Of course, the wait window for the second press can be made to fit any user's response time.
John