Storm Interface 450 Series Engineering Manual Download Page 1

 

 

450 Series USB Encoder 

 

Engineering Manual     

 

 

www.storm-interface.com

    450 Series USB Encoder Engineering Manual  rev 1.5  Jun 2018   Page 1 of 48 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 

 
 
 
Contents 
 

 

 

 

 

 

 

 

Page 

Product Overview , Features 

 

 

 

  2 

Product  Range and Accessories 

 

 

 

Downloads 
 
Quickstart Guide 

 

 

 

 

  3 

Installation 

 

 

 

 

 

 

One Time Only Initialisation 
 
FAQ’s & Product Specs  

 

 

  

  4 

Compatible Products 

 

 

 

 

  5 

Keypad layouts  

 

 

 

 

  6 

Code Tables – default   

 

 

 

  7 

Configuration Utility   

 

 

 

 

  8 

 

Customising the codes 

 

Firmware Update 

Code Tables – full list   

 

 

 

11 

Product Dimensions, Cable Drawings 

 

 

18 

 

 

 

 

 

 

Panel Cutout Drawings   

 

 

 

19 

 
Copyright Notice 

 

 

 

 

24 

Change History  

 

 

 

 

26 

 
API 

 

 

 

 

 

 

28 

 

 

 

 

Summary of Contents for 450 Series

Page 1: ...2 Product Range and Accessories Downloads Quickstart Guide 3 Installation One Time Only Initialisation FAQ s Product Specs 4 Compatible Products 5 Keypad layouts 6 Code Tables default 7 Configuration Utility 8 Customising the codes Firmware Update Code Tables full list 11 Product Dimensions Cable Drawings 18 Panel Cutout Drawings 19 Copyright Notice 24 Change History 26 API 28 ...

Page 2: ...llumination 450i version features a piezo sounder for optional key press confirmation or application driven status signal Simple connection via a USB Mini B socket Compact self contained form factor Compatible with most Storm 4 12 and 16 key format keypads including Storm 700 720 1000 2000 3000 GFX and PLX product series Separate ribbon cable available if you do not wish to plug the encoder direct...

Page 3: ...icky pads go here one per position unless using 700 Series underpanel which needs 2 per Push the encoder onto the keypad pins make sure the pad sticks down Plug in the mini B USB cable on the side of the encoder One Time Only Initialisation This initialisation process must be completed the first time you turn it on The encoder has to recognise the keypad and you have to select the layout that matc...

Page 4: ...page 11 What do I do if I have wrongly initialised the product Download use the config utility to reset the defaults Why is the socket longer than the pinstrip on my keypad The end pins power the 720 illuminated keypads Can I control this from a host application Yes the commands are listed in the API reference Ratings Performance Operational temperature 20ºC to 60ºC Storage temperature 20ºC to 70º...

Page 5: ...cky pads for underpanel fixing of 700 Series 720 Series 720 and 720 illuminated keypads are supported 1000 Series PLX Series 2000 Series GFX 3000 Series SF6000 Use remote connection cable NB Illumination circuit is separate 3000 Illuminator Illumination not supported on this model GFX Illuminator Illumination not supported on this model Use the 7 way socket for 4 key pad Use the 10 way socket for ...

Page 6: ...r Engineering Manual www storm interface com 450 Series USB Encoder Engineering Manual rev 1 5 Jun 2018 Page 6 of 48 Keypad Layouts Keypad Layouts Keypad Layouts Default Code Table US English Alternate Code Table US English ...

Page 7: ... B 2 5 22 5 22 C 2 8 25 8 25 D 2 0 27 0 27 A 3 3 20 3 20 B 3 6 23 6 23 C 3 9 26 9 26 D 3 E1 20 E1 20 A 4 A 04 B 4 B 05 C 4 C 06 D 4 37 Alternate Code Table to get the arrow keys on a 12 16 way keypad then switch NumLock off Row Column 4 way code Cursor hex 12 way code Calculator hex 16 way code Calculator hex Output for 12 16 way with NumLock off A 1 52 7 5F 7 5F HOME B 1 50 4 5C 4 5C C 1 4F 1 59 ...

Page 8: ...ult alternate or customised And also Change the keypad setting Change the selected code table Change the buzzer volume 450i only Change the brightness on illuminated keypads 450i only Self test the encoder For re legendable keypads Customise the code table by assigning a USB code to each key Add a modifier in front of each USB code Save this configuration Export or Import configuration files For m...

Page 9: ...and to the encoder when the Save Changes button is pressed Press Scan for Device to find connected encoder Device details are displayed Encoder Type Keypad Code Table Firmware Version To change the code table use the drop down box Press Customise Code Table to change the customised code table See following pages for the Code Table Screen Press Reset from Configuration File to use the configuration...

Page 10: ... shown in the relevant column for example Where the same USB code gives a different character dependent on the host language setting then this is shown in the relevant language column The actual function of the USB code is determined by the application not all codes have a function in every application Un shifted Shifted Code 0x04 gives a A Modifier USB Code Click on each position and select a USB...

Page 11: ...oads it back on the encoder as part of the firmware update process Download the new firmware from www storm interface com Connect the encoder Press Scan for Device to find the connected encoder Press Update Encoder Firmware and press Yes Select encoder type and press OK Browse to locate the firmware file and press Upgrade The progress bar shows in green When progress is complete press Close Unplug...

Page 12: ...yboard b and B b B 06 06 Keyboard c and C 4 c C 07 07 Keyboard d and D d D 08 08 Keyboard e and E e E 09 09 Keyboard f and F f F 10 0A Keyboard g and G g G 11 0B Keyboard h and H h H 12 0C Keyboard i and I i I 13 0D Keyboard j and J j J 14 0E Keyboard k and K k K 15 0F Keyboard l and L l L 16 10 Keyboard m and M 4 m M 17 11 Keyboard n and N n N 18 12 Keyboard o and O 4 o O 19 13 Keyboard p and P 4...

Page 13: ...re 4 4 _ 46 2E Keyboard and 4 47 2F Keyboard and 4 48 30 Keyboard and 4 49 31 Keyboard and 50 32 Keyboard Non US and 2 51 33 Keyboard and 4 52 34 Keyboard and 4 53 35 Keyboard Grave Accent and Tilde 4 54 36 Keyboard and 4 55 37 Keyboard and 4 56 38 Keyboard and 4 57 39 Keyboard Caps Lock11 11 58 3A Keyboard F1 F1 59 3B Keyboard F2 F2 60 3C Keyboard F3 F3 61 3D Keyboard F4 F4 62 3E Keyboard F5 F5 6...

Page 14: ...line down 82 52 Keyboard UpArrow 1 Goes up Select line up 83 53 Keypad Num Lock and Clear 11 Toggles Numlock 84 54 Keypad 1 85 55 Keypad 86 56 Keypad 87 57 Keypad 88 58 Keypad ENTER Enter 89 59 Keypad 1 and End End 1 90 5A Keypad 2 and Down Arrow Down arrow 2 91 5B Keypad 3 and PageDn Page down 3 92 5C Keypad 4 and Left Arrow Left arrow 4 93 5D Keypad 5 5 94 5E Keypad 6 and Right Arrow Right arrow...

Page 15: ... Keyboard Menu 119 77 Keyboard Select 120 78 Keyboard Stop 121 79 Keyboard Again 122 7A Keyboard Undo 123 7B Keyboard Cut 124 7C Keyboard Copy 125 7D Keyboard Paste 126 7E Keyboard Find 127 7F Keyboard Mute 128 80 Keyboard Volume Up 129 81 Keyboard Volume Down 130 82 Keyboard Locking Caps Lock 12 131 83 Keyboard Locking Num Lock 12 132 84 Keyboard Locking Scroll Lock 12 133 85 Keypad Comma 27 134 ...

Page 16: ...53 99 Keyboard Alternate Erase7 154 9A Keyboard SysReq Attention1 155 9B Keyboard Cancel 156 9C Keyboard Clear 157 9D Keyboard Prior 158 9E Keyboard Return 159 9F Keyboard Separator 160 A0 Keyboard Out 161 A1 Keyboard Oper 162 A2 Keyboard Clear Again 163 A3 Keyboard CrSel Props 164 A4 Keyboard ExSel 224 E0 Keyboard LeftControl 225 E1 Keyboard LeftShift 226 E2 Keyboard LeftAlt 227 E3 Keyboard Left ...

Page 17: ...rors Sent as a member of the keyboard array Not a physical key 10 Windows key for Windows 95 and gCompose h 11 Implemented as a non locking key sent as member of an array 12 Implemented as a locking key sent as a toggle button Available for legacy support however most systems should use the non locking version of this key 13 Backs up the cursor one position deleting a character as it goes 14 Delet...

Page 18: ...te Angled Mini B cables are available with 2 possible connectors see picture below Encoder on 4 way keypad Encoder on 12 way keypad order pn 4500 01 from Storm If you wish to install the encoder remote from the keypad then you will need an interconnection cable Cable details as shown below or order 7 way cable PN 4500 CAB07 10 way cable PN 4500 CAB10 Encoder 12 16 12 16 keypad Illuminated version ...

Page 19: ...neering Manual www storm interface com 450 Series USB Encoder Engineering Manual rev 1 5 Jun 2018 Page 19 of 48 Panel Cutout Drawings Surface Fixing of Keypads 700 Series 720 Series Both products use the same panel cutout detail ...

Page 20: ...om 450 Series USB Encoder Engineering Manual rev 1 5 Jun 2018 Page 20 of 48 Panel Cutout Drawings Underpanel Fixing of Keypads 700 Series 4 way uses fix kit 7004CL0 12 16 way uses fix kit 7012CL0 720 Series uses fixing kit pn 7204CL0 12 16 way uses fix kit 7212CL0 ...

Page 21: ... USB Encoder Engineering Manual www storm interface com 450 Series USB Encoder Engineering Manual rev 1 5 Jun 2018 Page 21 of 48 Panel Cutout Drawings Surface Fixing of Keypads 1000 Series 2000 Series PLX Series ...

Page 22: ...neering Manual www storm interface com 450 Series USB Encoder Engineering Manual rev 1 5 Jun 2018 Page 22 of 48 Panel Cutout Drawings Underpanel Fixing of Keypads 1000 Series 2000 Series PLX Series Use M3 CD weld studs or similar ...

Page 23: ...Series USB Encoder Engineering Manual www storm interface com 450 Series USB Encoder Engineering Manual rev 1 5 Jun 2018 Page 23 of 48 Panel Cutout Drawings Surface Fixing of Keypads 3000 Series GFX Series ...

Page 24: ...eries USB Encoder Engineering Manual www storm interface com 450 Series USB Encoder Engineering Manual rev 1 5 Jun 2018 Page 24 of 48 Panel Cutout Drawings Underpanel Fixing of Keypads 3000 Series GFX Series ...

Page 25: ... may be reproduced in any form or by any means or used to make any derivative work such as translation or adaptation without written permission from Keymat Technology Ltd For more information about Storm Interface and its products please visit our website at www storm interface com Copyright Storm Interface 2013 All rights reserved Copyright Acknowledgement This product uses binary format of the h...

Page 26: ...sed occasional missed key presses when MCU is waking up from suspend state Amber Firmware Change Classification Green Minor Admin Change only Amber Recommend upgrade units in use Red Critical Update for units in use possibly just for certain Platform OS Engineering Manual Date Version Details 1 Aug 13 1 0 First Release 12 Aug 13 1 02 p7 Alternative Code table Outputs with Numlock clarified Also ch...

Page 27: ...uzzer Duration Change buzzer duration 33 07 Keypad Type Select layout table 34 08 Self Test Start end a self test 35 09 Write to default Encoder writes configuration data from ram to flash 36 10 Reset to factory default Reset device back to factory default 37 12 Load Firmware Sets the encoder to detect the device loader for firmware loading 38 13 Status Buzzer Sounds the buzzer for x period 39 Key...

Page 28: ... H 2 Defines the type of message and format of the data field 3 Data Length H 2 Hexadecimal value represented in ASCII defines the number of bytes in the data field 00 to FF Maximum data field size is 256 bytes 4 Data Field S var In binary format 5 ETX C 1 Control character ETX 0x03 6 LRC C 1 Longitudinal Redundancy Check Digit calculated on all previous data including STX Message Format Example e...

Page 29: ... layout table 0 Function key 4way default 1 Arrow Key 4 way 2 Customised 4way 3 Telephone 12way 4 Calculator 12way 5 Customised 12way 6 Telephone 16way 7 Calculator 16way 8 Customised 16way 08 st Self Test Host To USB The encoder start end a self test 09 Save Configuration Host To USB Encoder Encoder writes configuration data from ram to flash 10 Reset to factory default Host To USB Encoder Reset ...

Page 30: ...FF 1 ON op Option N 1 0x01 LEDs 0x02 Buzzer Rest is reserved for future use bp Buzzer on period N 1 Value 0 9 kt Keypad Type N 1 0 Function key default 1 Arrow Key 2 Customised 3 Telephone 4 Calculator 5 Customised 6 Telephone 7 Calculator 8 Customised 4 way 4 way 4 way 12 way 12 way 12 way 16 way 16 way 16 way ktab Keycode table H Up to 32 Layout selected table data could be for 4 way or 12 16 wa...

Page 31: ...s Command 02 Host sends this message to control brightness of LEDs Data Field Type Length Description lb LED brightness N 1 0 9 LED Brightness Command Response Data Field Type Length Description ec Error Code H 2 Host Device USB Encoder 02 lb 02 ec Note LED brightness of 0 value indicates LEDs are off LED brightness of 9 value indicates full brightness ...

Page 32: ...ual rev 1 5 Jun 2018 Page 32 of 48 Buzzer On Off Command 04 Host sends this message to enable disable buzzer on key presses Data Field Type Length Description bof Buzzer N 1 0 Disable 1 Enable Buzzer Command Response Data Field Type Length Description ec Error Code H 2 Host Device USB Encoder 04 bof 04 ec ...

Page 33: ...s and this will be the first 8 bytes subsequent 24 bytes will be ignored by the encoder Format of table is as follows modifier for key 1 code for Key 1 modifier for key 2 Code for Key 2 etc The code table is specified in the user manual together with the modifier code For example to program the following for 4 way Key 1 A Key 2 a Key 3 9 Key 4 0xE1 0x04 0x00 0x04 0x00 0x26 0xE5 0x1E 0x00 0x00 0x00...

Page 34: ...mand 06 Host sends this message to change the duration of the buzzer period when a key is pressed Data Field Type Length Description bp Duration N 1 Value 0 9 Buzzer Duration Command Response Data Field Type Length Description ec Error Code H 2 Host Device USB Encoder 06 bp 06 ec Buzzer value increments in 0 25s For example 1 0 25s 2 0 5s 3 0 75s 4 1 0s etc ...

Page 35: ... message to set keypad type Data Field Type Length Description kt Keypad Type N 1 0 Function key default 1 Arrow Key 2 Customised 3 Telephone 4 Calculator 5 Customised 6 Telephone 7 Calculator 8 Customised 4 way 4 way 4 way 12 way 12 way 12 way 16 way 16 way 16 way Keypad Command Response Data Field Type Length Description ec Error Code H 2 Host Device USB Encoder 07 kt 07 ec ...

Page 36: ... if error_code is 00 Then it will be followed by keypresses 08 keypresses After self test is started and If keypad key is not pressed within 5 sec It will timeout and self test will end and get following 08 0xff The self test command is used to test the key presses on keypad Host USB Encoder Self Test 1 This command disables the USB encoder USB devices so if any keys are pressed the key codes are ...

Page 37: ...n 2018 Page 37 of 48 Write Config Data To Flash command 09 Host sends this command to request the USB Encoder to write the configuration data from RAM to FLASH This command has no data associated with it RAM to FLASH Command Response Data Field Type Length Description ec Error Code H 2 Host Device USB Encoder 09 09 ec ...

Page 38: ...Jun 2018 Page 38 of 48 Reset To Factory Default command 10 Host sends this command to request the USB Encoder to reset parameters back to factory default This command has no data associated with it Reset To Factory Default Response Data Field Type Length Description ec Error Code H 2 Host Device USB Encoder 10 10 ec ...

Page 39: ...eering Manual rev 1 5 Jun 2018 Page 39 of 48 Enable BSL Command 12 Host sends this command to request the USB Encoder to start downloader This command has no data associated with it Enable BSL Command Response Data Field Type Length Description ec Error Code H 2 Host Device USB Encoder 12 12 ec ...

Page 40: ...al rev 1 5 Jun 2018 Page 40 of 48 Status Buzzer Command 13 Host sends this message to sound the buzzer for specified duration Data Field Type Length Description sb Duration N 1 Value 0 9 Status Buzzer Command Response Data Field Type Length Description ec Error Code H 2 Host Device USB Encoder 13 sb 13 ec ...

Page 41: ...IT2 BIT1 BIT0 Byte0 Right GUI Right Alt Right Sft Right Ctrl Left GUI Left Alt Left Shift Left Ctrl Byte1 Reserved Key_array 0 Key_array 1 Key_array 2 Key_array 3 Key_array 4 Key_array 5 Byte2 Byte3 Byte4 Byte5 Byte6 Byte7 For example if user has a 4 way keypad connected to encoder and configured for Arrow key If the user now presses the top key which is up arrow and USB code of 52 Then keyboard r...

Page 42: ...is described fully in the following pages The basic architecture of the USB Encoder API is shown below USB Encoder API The USBEncoderApi library allows for the host application to invoke USB Encoder functions as listed above The API encapsulates all the communications to USB and provides a simple API for the host application developers HIDAPI This is a third party library which allows an applicati...

Page 43: ... 48 The API makes the following functions available to developers This is referenced in below functions enum REQUEST_TYPE message types DEVICE_STATUS 1 Device status message LED_BRIGHTNESS LED_COLOUR BUZZER_ON_OFF LOAD_KEYCODE_TABLE BUZZER_PERIOD KEYPAD_TYPE RESERVED_1 WRITE_CONFIG FACTORY_DEFAULT RESERVED_2 FIRMWARE_LOAD STATUS_BUZZER ...

Page 44: ... be filled with USB Encoder If not successful both of the strings will be filled with none Parameters storm_vid Vendor ID product_pid Product ID manufacturer_local vendors name will be stored product_local product name will be stored Return Value True for success False for failure brief InitializeStormUSBDevice is called at the beginning of the application to Setup the PRODUCT ID PID and product v...

Page 45: ...Status Retrieves the keypad s status and information including Serial Number Tamper Status Firmware Version Firmware Name The data are returned in a DEVICE_INFO structure param _deviceInfo is a pointer to a DEVICE_INFO structure that receives information retrieved from the 450 Encoder param _timeToWait is the time in milliseconds to wait for the data to be retrieved return 0 on success negative er...

Page 46: ... Brightness This function sets the led brightness The brightness can be set from level 0 to 9 0 will set the leds to off brief SetLEDBrightness Sets the LED brightness between 0 to 9 where 0 is off param led_brightness 0 to 9 where 0 is off return 0 on success negative error code on failure int SetLEDBrightness int led_brightness int _timeToWait ...

Page 47: ...1 5 Jun 2018 Page 47 of 48 Enable Disable Buzzer This function will enable or disable the buzzer Buzzer 1 enable Buzzer 0 Disable brief EnableDisableBuzzer Enables Disables buzzer param buzzer 0 disable 1 enables return 0 on success negative error code on failure int EnableDisableBuzzer int buzzer int _timeToWait ...

Page 48: ...n 2018 Page 48 of 48 Beep Buzzer This function will sound the buzzer for the buzzer_period The buzzer period is defined between 0 9 brief SetBuzzerPeriod Sets buzzer period betweeen 0 9 param buzzer_period 0 off 1 9 return 0 on success negative error code on failure int SetBuzzerPeriod int buzzer_period int _timeToWait ...

Reviews: