Cypress CY4672 Espresso Maker User Manual


 
CY4672 Reference Design Guide, Document # 001-16968 Revision ** 63
Keyboard
The first test mode is initiated by holding down the left Ctrl, left Alt, right Alt, right Ctrl, and F1 keys at
the same time. If PANGRAM_TEST_MODE is defined, the test sends the key up/down scan codes
for the test pangram:
”a quick brown fox jumps over the lazy dog.<carriage return>” . Otherwise the
up/down scan codes are repeatedly sent for the test sequence ‘wirelessusb’ followed by the same
number of backspaces. The test repeats the appropriate sequence until the escape key is pressed.
Once the test has finished execution, the keyboard returns to normal operation.
The repeating ‘x’ test selection is initiated by holding down the left Ctrl, left Alt, right Alt, right Ctrl,
and F3 keys at the same time. The test continuously sends the ‘x’ key up/down scan codes. The test
continues until the escape key is pressed. Once the test has finished execution, the keyboard
returns to normal operation.
4.3.5.5 Encrypt Module
This module may be conditionally compiled in to provide encryption/decryption support. Encrypted
data transfers are typically used between RDK keyboard devices and the RDK bridge. Contact
Cypress Applications support for the encryption source code.
4.3.6 Configuration Options
All configuration options for the application can be found in the config.h file, and some of them are
defined in the Project > Setting > Compiler > Macro defines. Each option is explained below and can
be changed to values that meet the developer’s needs.
4.3.6.1 KEYBOARD_KEEP_ALIVE_TIMEOUT
When a key is held down, this configuration value sets the period at which the firmware generates a
KEEP_ALIVE packet since the last keyboard report. The default is 65 milliseconds.
4.3.6.2 KEY_DOWN_DELAY_SAMPLE_PERIOD
This configuration value sets the period at which the firmware polls the hardware for keyboard
events to transmit over the radio. This poll period is only active when the keyboard has not entered
sleep because keys are currently being pressed. The default value is 10 milliseconds.
4.3.6.3 KEYBOARD_DEBOUNCE_COUNT
The button debounce logic detects changes in the button state and immediately indicates a change
causing a report to be sent to the radio. The debounce logic then blocks out any further button state
changes for the specified debounce time. This operation is somewhat different from the usual
method of waiting for a button to stabilize during a debounce interval, and then reporting the change
in button state. It is implemented this way to improve button-reporting latency.
This configuration value sets the debounce time for buttons that are pressed. It is measured in units
of the poll rate. For example, if KEYBOARD_DEBOUNCE_COUNT is defined as ‘2’ and
KEY_DOWN_DELAY_SAMPLE_PERIOD is defined as 10, the button debounce time will be 20 mil-
liseconds. The default setting is ‘2’.
4.3.6.4 KEYBOARD_MULTIMEDIA_SUPPORT
This configuration definition is used to selectively compile support for multimedia (hot) keys. If this
value is defined, then multimedia key support is compiled into the executable image. If it is not
defined, the multimedia support code is omitted.
[+] Feedback