Touch panel keypads
15 September 2008, 16:34 by Chad Reynoldson
I’ve discovered some touch panel keyboard properties that I’ve not been able to track down any documentation for. It is pretty slick and a good way to make field editors from your touch panels for things like channel name and number.
It is best used as an editor, where you can popup an initialized keypad, enter your data, and exit and send the data to the master. If you use it for run-time device control, you’ll have a keypad text entry display box that is global for the panel. You have no real mechanism to isolate keypads for separate devices like an audio conference dialer and a tv channel entry. For this reason, I wouldn’t ever use it for actual run-time device control, just editing.
I do have a word of caution that is often overlooked. This keyboard/keypad data comes in as a string event on port 1 and you cannot change that. The problem lies in the fact that you add device functionality to another port on the touch panel and you forget the fact that this data will come in on port 1, bam bug. This is a huge problem with modules.
I documented it here for everyone.
Making the keypad buttons 0-9
Make a keypad with buttons 0-9 and style it as you like.
- Under the button properties – general tab:
- Assign the button type: general.
- Under the button properties – programming tab:
- Assign the Channel Port: 0 – setup port.
- Assign the Channel Code: Keyboard: Text Entry (under advanced codes).
- Under the button properties – state tab:
- Assign the Text of each button (0-9).
- Note that whatever text you have for the button will be the value used when the button is pressed. This took me a moment to figure out, but it makes this method very dynamic.
Making the text entry display
Make a button for text entry to display and style it as you like.
- Under the button properties – general tab:
- Assign the button type: text input.
- Assign the name field with: KEYP-.
- Note that this “name” field will be the text header that you will parse in the STRING event for the touch panel (i.e. ‘KEYP-
‘). You can make it whatever you like. This also took me a while to figure out, but again it makes this method very dynamic.
- Under the button properties – programming tab:
- Assign the Address Port: 0 – setup port.
- Assign the Channel Code: Keyboard: Text Area -single line (under advanced codes).
Making the text navigation
You may add text navigation buttons for things like: clear, backspace, up/down/left/right, etc.
- Under the button properties – general tab:
- Assign the button type: general.
- Under the button properties – programming tab:
- Assign the Channel Port: 0 – setup port.
- Assign the Channel Code: Keyboard: Clear/Backspace/Etc (under advanced codes).
- Under the button properties – state tab:
- Assign the Text of each button (0-9).
Sending the data
Add a button labeled “Enter”. It gets confusing because the user “Enters” data, but the keypad will “Exit” and send the data as a STRING event on port 1 of the touch panel. A native touch panel keyboard may label this as “Confirm”.
- Under the button properties – general tab:
- Assign the button type: general.
- Under the button properties – programming tab:
- Assign the Channel Port: 0 – setup port.
- Assign the Channel Code: Keyboard: Exit (under advanced codes).

Share This Article
Comments
Comments are turned off for this article.
