IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 1 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
IS-Dev Kit-7 & 7D User’s Manual
Revision B
Firmware Version 2.6
IS-Dev Kit-7
(ISC15ANP4)
IS-Dev Kit-7D
(ISC01P)
NKK SWITCHES
7850 E. Gelding Drive
Scottsdale, AZ 85260
Toll Free 1-877-2BUYNKK (877-228-9655)
Phone 480-991-0942
Fax 480-998-1435
e-mail <engineering@nkkswitches.com>
All Rights Reserved Worldwide
NKK Switches makes no warranty for the use of these products and assumes no responsibility for any errors,
which may appear in this document, nor does it make a commitment to update the information contained herein.
Smart Switch is trademark of NKK Switches.
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 2 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
TABLE OF CONTENTS
Table of Contents .............................................................................................................2
1. General Controller Features .........................................................................................3
2. Thank you for purchasing NKK Switches’ DEV KIT .................................................4
3. Preface..........................................................................................................................5
4. Operational Overview ..................................................................................................6
5. Programming the IS-Dev Kit-7 ....................................................................................11
6. Operational Details ......................................................................................................16
7. Communication Protocol .............................................................................................20
8. Commands ...................................................................................................................21
9. New Character Commands ..........................................................................................29
10. Hardware ....................................................................................................................32
11. Key Terms & Definitions...........................................................................................37
12. Firmware problems ....................................................................................................38
Appendix ..........................................................................................................................39
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 3 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
1. General Features
The IS-Dev Kit-7 is a two OLED SmartSwitches (ISC15ANP4) Development kit. The IS-Dev Kit-7D Version
is a two OLED SmartDisplays (ISC01P) Development kit. The IS-Dev kit-7D additionally has a JB switch
below each OLED SmartDisplay.
The CL04 controller is used in these development Kits as well as IS-DEV KIT-8. For complete features of the
CL04 controller refer to IS-CL04R user manual.
In this document we refer to both OLED Smart Switch and OLED Smart Display as OLED Switch.
Below are current features:
IS-Dev Kit-7 controls two OLED (64x48) SmartSwitches (ISC15ANP4).
Pushbutton functionality on each SmartSwitch.
o RGB color OLED display with a resolution of 64x48 pixels.
IS-Dev Kit-7D controls two OLED (52x36) SmartDisplays (ISC01P).
o JB switches below SmartDisplays for control.
o RGB color OLED display with a resolution of 52x36 pixels.
Power from 9V battery or AC power supply. (9V battery not included).
On board microSD Flash that can hold up to 65,536 images.
Adjustable audio feedback when a switch is pressed.
Software control for 16 levels of brightness setting to extend OLED life.
User programmable for images, attributes and set-ups.
Real-time control by host.
o Commands to direct the controller to display any of 65535 images
o Command to send characters so controller create images for the displays
o Commands to check various statuses of the controller
o Report switch activities to host
o Report the address of any new image displayed to host
Stand-alone operation
o Set up the controller to function based on switch presses.
o Set up to the controller to function based on timer expire.
o Report switch activities to host
o Report the address of any new image displayed to host
Serial communication via RS232 (57.6K, 1 start bit, 8 bit, 1 stop bit).
Set the type of activity reports from the controller to host.
Power requirement: 5V to 12V at 100 mA Max
Controller board firmware can be customized based on customer requirements.
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 4 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
2. Thank you for purchasing NKK Switches’ Development
kit
By purchasing this kit a new horizon of design is expanding before your eyes. The OLED SmartSwitch and
OLED SmartDisplay can be the distinguishing feature within your application that sets your product apart from
the competition. This kit contains all the necessary components to get you started using, testing and ultimately
incorporating NKK Switches’ OLED SmartSwitch and OLED SmartDisplay into your designs.
The development kits come preprogrammed for demonstration. They can be reprogrammed by user for
demonstration or real time application. NKK provides a free PC software (Universal Communicator) for
programming the development kits. It can be downloaded from the web page below. Included in the download
are the default demonstration images and attributes.
http://www.nkkswitches.com/SmartSwitch-Download-Software.aspx
There are many documents such as “How to” in the web page below that can be useful.
http://www.nkkswitches.com/SmartSwitch-Engineering-Documentation.aspx
The part numbers that come with each kit are listed below. A handling instruction also included in each kit.
IS-DEV KIT-7
Part Number QTY
Description
1
IS-CL04-F-E-F-E 1
Controller
2
IS-L02L1-C 1
Logic Board
3
ISC15ANP4 2
OLED Switch (64x48)
4
IS-418-TR1509-12 1
Power Supply
5
IS-SERIAL-CABLE 1
RS232 cable RJ11 to DB9
IS-DEV KIT-7D
Part Number QTY
Description
1
IS-CL04-F-E-F-E 1
Controller
2
IS-L02P1-C 1
Logic Board
3
ISC01P 2
OLED Switch (64x48)
4
IS-418-TR1509-12 1
Power Supply
5
IS-SERIAL-CABLE 1
RS232 cable RJ11 to DB9
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 5 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
3. Preface
The IS-Dev Kit-7/7D are development kits designed to demonstrate the features of the OLED
SmartSwitch/Display as well as facilitate the incorporation of the pushbutton or display into new application
designs. The OLED SmartSwitch is best used for displaying video or images that change frequently.
This user manual will go through general features and rudimentary commands, like how to download images
and attributes, and then go into the more technical details of how the Dev Kit-7 operates. The controller used in
these development kits is CL04. It can handle an OLED rocker as well. For a complete list of the controller
features you can check the user manual for IS-CL04R.
Section 4 and 5 briefly describe the basic Dev Kit operations and provide a starter guide for programming the
Dev Kit with the most popular commands using the Universal Communicator program. These sections were
designed for those who wish to simply start using the Dev Kit without getting into the technical details.
Section 6, 7, 8 and 9 covers communication and commands between the host computer and the Dev Kit
controller. Section 10 is the hardware and the schematic and section 11 and 12 are definitions and firmware
issues. There is also an appendix for understanding hexadecimal.
Universal Communicator
Universal Communicator version 1.7.1 is a free program provided by NKK Switches to help download
images and attributes to the Dev Kit controllers. The program is designed to work with the family of
SmartSwitch Dev Kits. It can import bitmaps, convert them to the proper switch format, and then download
them to the controller. It also allows input and download of attributes.
It can handle single or batch downloads and has the most common commands as easy button interfaces. The
Universal communicator can be downloaded from the web page below:
http://www.nkkswitches.com/SmartSwitch-Download-Software.aspx
On the NKK website documents can be found for how to creating images as well as the manual for
Universal Communicator that shows how to download images and attributes. They can be found at:
http://www.nkkswitches.com/SmartSwitch-Engineering-Documentation.aspx
The dev kits can communicate with any communication software that can perform the communication protocol.
Universal Communicator is provided as demonstration software.
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 6 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
4. Operational Overview
Power-up Sequence:
Upon power up, the controller checks the position of the Mode Select Switch. The controller initializes the
OLED display or switch based on this selection. The proper selection of switch/display mode must be set before
power up.
The OLED switch will show the full image while the “Display” position will display only the middle 52 pixels
of the top 36 lines of the image and the to 36 rows.
OLED Brightness Adjustment Mode:
The controller will then allow the brightness of the two OLED modules to be adjusted. The left OLED displays
the brightness level “F” and the word DIM. The right OLED displays the brightness “F” and the word BRIGHT.
The left button can be pressed to make both displays dimmer and the right button makes both displays brighter.
There are 16 level of brightness 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E and F where F is the maximum brightness. The
level of brightness is displayed in the middle of image. After power up, the display is at the maximum
brightness level (F). The OLED rated life of 15,000 hours is based on the maximum brightness. The dimmer the
level is set the longer the life of the OLED. Any switch activity will keep the unit in this mode.
The brightness changes stay in effect for duration of the session.
After 2.6 seconds of user inactivity the controller will move into the main operations mode.
Main Operational Mode:
There are 65535 addresses (0x0001 to 0xFFFF) to store images and attributes. Upon power up as default, switch
one display image of address 0x0001 and switch two display image of address 0x001F. These addresses are user
defined and can be changed.
The IS-DEV KIT-7 is programmed with factory default images. The user can change the images and
programming through the use of attributes. The images are pictures to be displayed. The attributes are user
defined information on what image to display based on the switch activity and when the timer expires. After a
few seconds of user inactivity the controller will move into the main operations mode where the switch on the
left displays the image at the user’s first preset address. The right hand switch will display the image at the
user’s second preset address. There is room for 65,535 images and attributes (address 1 to 65535) in memory.
The controller associates one address to each image and the display shows the image at the associated address.
Each address has a group of five attributes which together is called an Attribute Block. The function of the
Attribute Block is to tell the controller what image to display next either when the switch associated with that
particular address is pressed or when the timer expires. These are called actions.
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 7 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
Attribute Block:
Addresses:
The controller associates the first address with the left switch and the second address with the right switch. Each
switch will display the image at their associated addresses. The addresses are in hexadecimal. The controller
handles the addresses as a group of addresses with associated images and attributes within user defined loops.
Each loop has a starter address and an ending address. The function of the attributes for each address is to tell
the controller where to point to next either when the switch associated with that particular address is pressed or
when a timer expires. There are three types of attributes:
Attributes SW1 and SW2 are the Action Addresses. In the starting address the Action Addresses tell the
controller what addresses to point to when the switch associated with that particular address is pressed. In
the ending address the Action Addresses tell the controller what addresses to point to when the loop has
ended.
The end address, EP1, sets the ending address for the loop.
T1 and T2 are timers that are multiplied together to set the length of time to stay at one address before
moving to the next address within the loop.
For visual illustration, through out the document blue is used to show a left switch action, green is a right switch
action, a dotted red line is the timer action associated with that address. The timer action could be of either of
the two timers.
Illustration 1, Switch and timer actions as described by the attributes.
The Hex number shown is the address of an image that is displayed.
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 8 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
The only addresses that need attributes within the loop are the first and last addresses.
Illustration 2 shows the starting and ending addresses for “Switch A” which is associated with address 0001H.
Switch A could be the left or right switch.
Illustration 2, Start and Ending Addresses for Switch A
Actions Addresses
Address SW1 SW2 EP1 T1 T2
Start Image 0001 Left switch’s
future address
when switch A
is pressed.
Right switch’s
future address
when switch A
is pressed.
Ending
Address
(0003)
milli-
seconds
milli-
seconds
Ending Image 0003 Left switch’s
future address
when end of
loop
Right switch’s
future address
when end of
loop
Don’t
care
Don’t
care
Don’t
care
Illustration 3 shows a simple loop where images at addresses 0041H through 0057H are shown in sequence for
two seconds each and will loop continuously until the switch associated with that particular address is pressed
or the loop ends. When that switch is pressed the controller will set the left hand switch to address 0001H and
the right hand switch to address 006AH. If the loop ends before the switch is pressed the left switch will go to
address 0059H and the right switch will go to address 005AH.
Illustration 3, Simple Image Loop
Actions Addresses
Address SW1 SW2 EP1 T1 T2
Start Image 0041 0001 006A 0057 7D 14
Next Image 0042 0000 0000 0000 00 00
Next Image 0056 0000 0000 0000 00 00
Ending Image 0057 0059 005A 0000 00 00
If SW1 and/or SW2 for the ending addresses are 0000H the loop will start again. Loops can overlap where, for
instance, the left switch starts at address 0001H and ends at 0005H while the right switch starts at 0002H and
ends at 0006H. The two loops will not interfere with each other.
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 9 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
Timers Operation:
Each switch has an independent timer; timer1 and timer2. Each timer value is the product of the two user
defined variables T1 and T2 of the attributes. The formula for the timer value in millisecond is:
The timer value in ms= (T1)x(T2)
Each of these variables can have a value between 01H to FFH (1 to 255). The timer for a given switch will
be disabled if the T1 value is set to zero. For T2 the zero value is defined as 256. Pressing either switch will
reset the timers for both switches. Holding down either switch will prevent both timers from running. The
controller takes 35ms to send an image to each OLED for a maximum of 28 images per second on one
OLED.
Attribute Block:
An attribute is handled as a block of 8 bytes.
Byte Description
1 High byte of action address for
OLEDModule #1.
2 Low byte of action address for
OLEDModule #1.
3 High byte of action address for
OLEDModule #2.
4 Low byte of action address for
OLEDModule #2.
5 High byte of end address.
6 Low byte of end address.
7 Timer B
8 Timer A
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 10 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
Image Block:
An image is handled as a block of 6144 bytes. Each pixel requires two bytes in the 565 format as shown
below.
B4 B3 B2 B1 B0 G5 G4 G3 G2 G1 G0 R4 R3 R2 R1 R0
B15 B14 B13 B12 B11 B10 B9 B8 B7 B6 B5 B4 B3 B2 B1 B0
The current version of the controller can only handle 64x48 format images. The OLED switches show the full
image while the OLED displays will only show the middle 52 pixels of the top 36 lines of the image. The image
is handled from top left to bottom right as shown below. Byte 1 and byte 2 are for color of top left pixel. Byte
6143 and byte 6144 are for color of bottom right pixel.
Byte
Description
1-128 First line of image
129-256 Second line of image
5889-6016 47th line of image
6017-6144 48
th
line of image
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 11 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
5. Programming the IS-Dev Kit-7
The IS-Dev Kit-7 communicates via RS232 with any communication software. The commands and protocol
will be explained in the sections 6 and 7.
This section covers programming the Dev Kit using the Universal Communicator.
The Universal Communicator handles all the communication protocol. Once the images are created, they can be
imported to the Universal Communicator. The Universal Communicator allows attributes information to be
inputted. Once the images and attribute information are created, they can be downloaded to the Dev Kit. The
Dev Kit will function as programmed after the next power up or reset.
For how to use the software please refer to Universal Communicator documentation.
Creating OLED Images for Universal Communicator
The OLED SmartSwitch has a RGB color OLED display with a resolution of 64x48 pixels. The OLED
SmartDisplay has a RGB color OLED display with a resolution of 52x36 pixels. Images can be created
graphically or by cropping from a picture using graphic software such as Paint, Photoshop, etc. The images
must be saved as 64x48 24-bit color bitmap files. The image files should be saved in a single folder. Universal
Communicator imports the files from the folder in alphanumeric order according to the file names. The file
names should be selected so
the order of images will be as
desired.
The Universal Communicator
displays the image file names
and assigned addresses for the
controller. (Screen Shot 1)
These files can be downloaded
to the controller.
Input/programming the
Screen Shot 1, Universal Communicator Batch Picture Download Window
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 12 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
Attribute information
After importing the images into the Universal Communicator (Screen shot 1), Make sure the order of the images
are as desired so all the loops for sequential changes based on timer are sequential.
You can select “Edit Attributes” from Batch Picture Download screen (Screen shot 1).Universal Communicator
display “Batch Attributes Download screen and allows input of the attributes information. (Screen shot 1)
All the numeric inputs only allow HEX format. The addresses are four digit long HEX values from 0001H to
FFFFH (1 to 65,535 decimal). The Universal Communicator lists the addresses in HEX format. These
addresses can be used for attribute information without knowing HEX numbering. For HEX numbering and
conversion between HEX and decimal please refer to the appendix.
The image name and the address as well as attribute information are displayed. The attribute information can be
modified by the user.
Screen Shot 2, Universal Communicator Batch Attribute Download Window
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 13 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
An Example of How Attributes Work
The following demonstrate the way attributes of Screen Shot 2 (above) works. The Illustration 3 (below)
visually demonstrates the way these attributes work.
The blue is the left switch action, the green is the right switch action, the dashed red line is the timer action.
Illustration 3, Examples of various loops
Illustration only shows switch and timer actions that result in an image change on the
display. All other attributes are ignored by the controller and are not shown.
When the Dev Kit enters the Main Operational Mode the images at the address 0001H and 0010H are
displayed. The Attribute Block at address 0001H and 0010H become active.
Attribute Block at address 0001H
Current
Address
Left
Switch
Address
Right
Switch
Address
End
Address
Timer1 Timer2
0001H 0002H 0000H 0000H 00H 00H
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 14 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
Since the Timer1 is zero the timer does not run so there will be no changes based on the timer.
The image at the address 0001H is displayed until a switch is pressed:
Pressing the Left Switch
Attribute Block at address 0001H
Current
Address
Left
Switch
Address
Right
Switch
Address
End
Address
Timer1 Timer2
0001H 0002H 0000H 0000H 00H 00H
If the left switch is pressed, the image at address 0002H is displayed on the left switch and the Attribute Block
of address 0002H becomes active. The display on the right switch does not change as it is set to zero.
Attribute Block at address 0002H
Current
Address
Left
Switch
Address
Right
Switch
Address
End
Address
Timer1 Timer2
0002H 0000H 0000H 0005H FFH 01H
Since the switch addresses are zero there will be no changes if a switch gets pressed. The timer is 255ms. If
there is no switch activity for 255ms the timer expires causing the next image, 0003H, to be displayed. This
continues until images 0004H and 0005H are also displayed. When the timer expires at address 0005H the
address is equal to the End Address. The Left Switch Address from the Attribute Block of 0005H is then
checked. Please note the attribute information of addresses 0003H and 0004H are not used.
Attribute Block at address 0005H
Current
Address
Left
Switch
Address
Right
Switch
Address
End
Address
Timer1 Timer2
0005H 0000H 0000H 0000H 00H 00H
The image at address 0001H is displayed and the Attribute Block of address 0001H becomes active. Notice that
the other attributes within the Attribute Block of address 0005H are ignored.
Pressing the Right Switch
Attribute Block at address 0010H
Current
Address
Left
Switch
Address
Right
Switch
Address
End
Address
Timer1 Timer2
0010H 0003H 0011H 0000H 00H 00H
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 15 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
If the right switch is pressed, the image at address 0003H is displayed on the left switch and the image at
address 0011H is displayed on the right switch. The Attribute Blocks of the address 0003H and 0011 become
active.
Attribute Block at address 0003H
Current
Address
Left
Switch
Address
Right
Switch
Address
End
Address
Timer1 Timer2
0003H 0000H 0000H 0006H FFH 02H
The timer is 510ms. If there is no switch activity for 510ms the timer expires causing the next image, 0004H, to
be displayed. This continues until images 0005H and 0006H are also displayed. When the timer expires at
address 0006H the address is equal to the End Address. The Left Switch Address from the Attribute Block of
0006H is then checked.
Attribute Block at address 0006H
Current
Address
Left
Switch
Address
Right
Switch
Address
End
Address
Timer1 Timer2
0006H 0000H 0000H 0000H 00H 00H
Since the Left Switch Address is zero then the image at address 0003H is displayed and the Attribute Block of
address 0003H becomes active. The display on the right switch does not change as it is set to zero.
Please note when a timer causes a new image to be displayed the Attribute Block of the beginning image
stays active. All other Attribute Blocks within the loop are ignored except the Left Switch Address when
the End Address is active.
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 16 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
6. Operational Details
Power-Up Sequence (Steps 1,2,3)
Upon power-up or reset, controller performs the following steps:
Step 1: Check the status of Mode Select Switch for mode of operation. Initialize according to selected mode.
Step 2: Display dim and bright on the two switches and allow for adjustments of the brightness. There are 16
brightness levels (0 to F). When the internal timer is expired, the controller proceeds to Step 3. Every time a
switch is pressed, the timer gets reset. If a switch is held depressed the timer does not run. Switch activity are
not reported to host.
Step 3: Transmit 11H to host via RS232. Check the microSD for set up value. If set up values are
programmed, get the start address for switch 1, start address for switch 2 and the flag byte. If the set up values
are not programmed use the default values: start address for switch 1 = current address for switch 1 = 0001H,
start address for switch 2 = current address for switch 2 = 0010H and flag byte = 80H.
Step 4:
A. If attributes for start address of switch 1 are programmed, get the attribute for switch 1.
B. If attributes for start address of switch 1 are not programmed, use the default: Switch 1 Action
address for switch 1 = 0000H, switch 1 action address for switch 2 = 0000H, end address for
switch 1 = 0010H Timer2 for switch 1=00H timer1 for switch 1= 0AH.
C. If attributes for start address of switch 2 are programmed, get the attribute for switch 2.
D. If attributes for start address of switch 2 are not programmed, use the default: Switch 2 action
address for switch 1 = 0000H, switch 2 action address for switch 2 = 0000H, end address for
switch 2 = 0020H Timer2 for switch 2=00H timer1 for switch 2= 0DH,
Step 5: Send the pictures from microSD to OLED module according to start addresses.
Main Operational Mode
Step 6:
A. If the switch 1 is pressed, process it. (see details below)
B. If the switch 2 is pressed, process it. (see details below)
C. If the timer for switch 1 is expired, process it. (see details below)
D. If the timer for switch 2 is expired, process it. (see details below)
E. If the switch 1 is released: Transmit B1H to host if flag is enabled.
F. If the switch 2 is released: Transmit B2H to host if flag is enabled.
G. If there is update flag for switch 1 is set, process it.
H. If there is update flag for switch 2 is set, process it.
I. Checks the host communication buffer for data. If there is data, process them. (For detail see
Communication Protocol)
J. Go to step 6 A.
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 17 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
Detailed Explanation of Operation Step 6
Step 6A: If switch 1 is pressed then:
1. Transmit 81H to host if flag is enabled.
2. If switch 1 action address for switch 1 is not equal zero and the attribute for the location is
programmed then:
a. Start address for switch 1 = switch 1 action address for switch 1.
b. Current address for switch 1 = switch 1 action address for switch 1.
c. Get the attributes and put the values for switch 1 action address for switch 1, switch 1 action
address for switch 2, end address for switch 1 and timers for switch 1.
d. Set update flag for switch 1.
3. If switch 1 action address for switch 1 is equal zero or the attribute for the location is not
programmed then take no action.
4. If switch 1 action address for switch 2 is not equal zero and the attribute for the location is
programmed then:
a. Start address for switch 2 = switch 1 action address for switch 2.
b. Current address for switch 2 = switch 1 action address for switch 2.
c. Get the attributes and put the values for switch 2 action address for switch 1, switch 2 action
address for switch 2, end address for switch 2 and timers for switch 2.
d. Set update flag for switch 2.
5. If switch 1 action address for switch 2 is equal zero or the attribute for the location is not
programmed then take no action.
Step 6B: If switch 2 is pressed then:
1. Transmit 82H to host if flag is enabled.
2. If switch 2 action address for switch 1 is not equal zero and the attribute for the location is
programmed then:
a. Start address for switch 1 = switch 2 action address for switch 1.
b. Current address for switch 1 = switch 2 action address for switch 1.
c. Get the attributes and put the values for switch 1 action address for switch 1, switch 1 action
address for switch 2, end address for switch 1 and timers for switch 1.
d. Set update flag for switch 1.
3. If switch 2 action address for switch 1 is equal zero or the attribute for the location is not
programmed then take no action.
4. If switch 2 action address for switch 2 is not equal zero and the attribute for the location is
programmed then:
e. Start address for switch 2 = switch 2 action address for switch 2.
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 18 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
f. Current address for switch 2 = switch 2 action address for switch 2.
g. Get the attributes and put the values for switch 2 action address for switch 1, switch 2 action
address for switch 2, end address for switch 2 and timers for switch 2.
h. Set update flag for switch 2.
5. If switch 2 action address for switch 2 is equal zero or the attribute for the location is not
programmed then take no action.
Step 6C: If timer for switch 1 expires then:
1. Transmit 83H to host if flag is enabled.
2. Increment current address for switch 1.
3. If current address for switch 1 is not equal ((end address for switch 1) +1) then:
i. Transmit FDH and current address for switch 1 to host if flag is enabled.
j. Set update flag for switch 1.
4. If current address for switch 1 is equal ((end address for switch 1) +1) then:
k. Read the Attributes for end address location.
i. If end location action address for switch 1 is equal zero then put current address = start
address and set update flag for switch 1.
ii. If end location action address for switch 1 is not equal zero then:
1. Start address for switch 1 = end address action address for switch 1.
2. Current address for switch 1 = end address action address for switch 1.
3. Get the attributes and put the values for switch 1 action address for switch 1,
switch 1 action address for switch 2, end address for switch 1 and timers for
switch 1.
4. Set update flag for switch 1.
iii. If end location action address for switch 2 is equal zero then take no action.
iv. If end location action address for switch 2 is not equal zero then:
1. Start address for switch 2 = end address action address for switch 2.
2. Current address for switch 2 = end address action address for switch 2.
3. Get the attributes and put the values for switch 2 action address for switch1,
switch 2 action address for switch 2, end address for switch 2 and timers for
switch 2.
4. Set update flag for switch 2.
Step 6D: If timer for switch 2 is expired then:
1. Transmit 84H to host if flag is enabled.
2. Increment current address for switch 2.
3. If current address for switch 2 is not equal ((end address for switch 2) +1) then:
l. Transmit FEH and current address for switch 2 to host if flag is enabled.
m. Set update flag for switch 2.
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 19 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
4. If current address for switch 2 is equal ((end address for switch 2) +1) then:
n. Read the attributes for end address location for switch 2.
o. If end location action address for switch 2 is equal zero then put current address for switch 2 =
start address for switch 2 and set update flag for switch 2.
p. If end location action address for switch 2 is not equal zero then:
i. Start address for switch 2 = end address action address for switch 2.
ii. Current address for switch 2 = end address action address for switch 2.
iii. Get the attributes and put the values for switch 2 action address for switch 1, switch 2
action address for switch 2, end address for switch 2 and timers for switch 2.
iv. Set update flag for switch 2.
q. If end location action address for switch 1 is equal zero then take no action.
r. If end location action address for switch 1 is not equal zero then:
i. Start address for switch 1 = end location action address for switch 1.
ii. Current address for switch 1 = end location action address for switch 1.
iii. Get the attributes and put the values for switch 1 action address for switch 1, switch 1
action address for switch 2, end address for switch 1 and timers for switch 1.
iv. Set update flag for switch 1.
Step 6E: If the switch 1 is released: Transmit B1H to host if flag is enabled.
Step 6F: If the switch 2 is released: Transmit B2H to host if flag is enabled.
Step 6G: If update flag for switch 1 is set then:
1. Clear the switch 1 update flag.
2. Transmit FDH and current address for switch 1 to host if flag is enabled.
3. Send the picture from microSD to OLED module 1 according to current address for switch 1.
Step 6H: If update flag for switch 2 is set then:
1. Clear the switch 2 update flag.
2. Transmit FEH and current address for switch 2 to host if flag is enabled.
Send the picture from microSD to OLED module 2 according to current address for switch 2.
Step 6I: Checks the host communication buffer for data. If there is data, process them. (For detail see
Communication Protocol)
Step 6J: Go to step 6A.
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 20 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
7. Communication Protocol
Communication initiated by Host
The controller communicates with the host via RS232 serial communication (57.6K, 1 start bit, 8 bit, 1 stop
bit). The controller receives the data via an interrupt routine that places the data on the circular receive buffer.
When the controller detects data in the circular receive buffer, the controller reads one byte and executes the
following:
A. If the byte is a command, the controller transmits a 61H and executes the subroutine for the command
and upon completion of command the controller transmits 79H.
B. If the byte is not a command, it is ignored.
When the controller executes a subroutine and expects additional information:
A. A timer is set. If the expected data byte is not received in 64ms, the controller transmits 6CH 6EH and
terminates the routine.
B. If the byte value is not acceptable (invalid range, option, etc.), the controller transmits 6EH and
terminates the routine.
Commands are one byte in the range of 20H to 2FH and 01H and are transmitted in hex format. The proper
format for all command options and data is specified for each command. See Section 7.
Communication initiated by the IS-Dev Kit-7
The Dev Kit transmits codes to host via RS232 based on activities stated below. Many of these reporting can
be enable/disabled by the flag setup.
A. Left switch press is reported as 81H
B. Left switch release is reported as B1H
C. Right switch press is reported as 82H
D. Right switch release is reported as B2H
E. Left Timer expire is reported as 83H
F. Right Timer expire is reported as 84H
G. Upon changing the image on left switch, the image address is reported as FDH followed by the
address in HEX so total of 3 bytes transmitted for each image change.
H. Upon changing the image on right switch, the image address is reported as FEH followed by the
address in HEX so total of 3 bytes transmitted for each image change.
I. If there is a communication problem between microcontroller and the microSD flash, the controller
will transmit 6FH to host for each communication failure.
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 21 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
8. Commands
Commands to the controller
Command to reboot the controller
The command reboots the controller to power-up state.
command format: 24H
transmit format: (xxH)
Command to check communication
The command is used to check if the controller is on-line.
command format: 01H
transmit format: (xxH)
The controller transmits back 61H to the host.
Command to query controller for mode, controller, and firmware version
This command queries the controller for the mode as set by the Mode Select Switch, the controller
name, and the firmware version installed.
command format: 26H 52H 58H
transmit format: (xxH) (xxH) (xxH)
Example: The command is sent. The controller responds with the following:
61 34 43 4C 30 31 12 79
61H [mode] [Controller name] [version] 79H
[mode] one byte. 33H indicating OLED module mode or 34H indicating OLED display mode.
[Controller name] 4 bytes. 43H 4CH 30H 31H (CL01)
[version] one byte. 11H (version 1.1)
Command to query controller for firmware version
This command queries the controller for the firmware version installed.
command format: 26H 15H
transmit format: (xxH) (xxH)
Example: The command is sent. The controller responds with the following:
61 11
61H [version]
[version] one byte. 11H (version 1.1)
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 22 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
Command for temporarily setting the timers
This command sets both the left and right switch timers.
command format: 26H 51H 55H [left timer] [right timer]
transmit format: (xxH) (xxH) (xxH) (xxH) (xxH)
[left timer] timer for left switch. Two bytes send in HEX format.
[right timer] timer for right switch. Two bytes send in HEX format.
The command sets the timers with the given values and activates them. If either switch is pressed or the timers
expire the values are lost. These values are over written by the values stored on the microSD flash in the
current address.
This command is useful for determining the best values for animations or movies.
Command to disable the timers and switch execution
This command disables the timers and switch execution.
command format: 26H 51H 5AH
transmit format: (xxH) (xxH) (xxH)
The controller disables the timers and switch execution upon receiving this command. However, the switches
are still scanned and reported. They are enabled upon reboot/power up or by command from host.
Command to enable the timers and switch execution
This command enables the timers and switch execution.
command format: 26H 51H 65H
transmit format: (xxH) (xxH) (xxH)
The controller enables the timers and switch execution upon receiving this command.
Command to turn the switch display off
This command turns off the OLED module display.
command format: 26H 51H 69H
transmit format: (xxH) (xxH) (xxH)
Command to turn the switch display on
This command turns on the OLED module display.
command format: 26H 51H 66H
transmit format: (xxH) (xxH) (xxH)
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 23 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
Command to dim switch display
This command dims the OLED module display.
command format: 26H 51H 71H
transmit format: (xxH) (xxH) (xxH)
Command to turn the OLED voltage off
This command turns off the 16V supply to the OLED module.
command format: 26H 51H 74H
transmit format: (xxH) (xxH) (xxH)
Command to turn the OLED voltage on
This command turns on the 16V supply to the OLED module.
command format: 26H 51H 75H
transmit format: (xxH) (xxH) (xxH)
Note: This command should only be used when the OLED displays are in the off mode.
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 24 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
Commands that disable switch and timer execution
Upon transmitting any of the following commands, the timers stop running and attributes for the switches
activity do not execute. The switches are still scanned and reported. The attributes execution is enabled upon
reboot/power up or by command from host.
The reason for disabling attribute execution is for faster download of images and attribute as well as command
to check the image at any address.
Command to download setup data
This command downloads the set-up data. These set up are saved on microSD
command format: 2AH [00H] [00H] [55H] [flag] [address1] [address2 ] [reserved]
transmit format: (xxH) (xxAH) (xxAH) (xxAH) (xxAH) (xxAH) (xxAH) (xxAH)
[flag] is one byte sent in ASCII HEX format. (Detail below)
[address 1] is two bytes with value of 0001H to FFFFH sent in ASCII HEX format. This is the address for the
image that switch 1 displays upon power up/reboot.
[address 2] is two bytes with value of 0001H to FFFFH sent in ASCII HEX format. This is the address for the
image that switch 2 displays upon power up/reboot.
[reserved] is two bytes sent in ASCII HEX format. This is for future use. Customer could use the last byte for
storing the data version.
This set up data can be read using the attribute upload command.
The controller disables the timers and switch execution upon receiving this command. However, the switches
are still scanned and reported. They are enabled upon reboot/power up or by command from host.
Flag Byte Default value=80H
Bit Enable
Value
Flag Controller action when flag is set
B0 0 Buzzer Beeper sound for switch press
B1 0 61H flag 61H is transmitted in response to command.
B2 0 79H flag 79H is transmitted upon completion of
command.
B3 0 Switch release report flag Switch release are reported
B4 0 6EH flag 6CH/6EH is transmitted if there is any error
during communication to host.
B5 0 Timers expire report flag Timers expiration are reported
B6 0 Switch press report flag Switch presses are reported
B7 0 Address change report flag Newest address is reported for each switch
Example: 2A30303030 3535 3830 30303031 30303146 30303030 sets all the flags on, points left switch to
address 0001H and right switch to address 001FH. The flag takes affect when the controller is reset.
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 25 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
Command to download an image
This command downloads an image from the host to the EEPROM location.
command format: 28H [address] [image]
transmit format: (xxH) (xxAH) (xxAH)
[address] is two bytes with value of 0001H to FFFFH sent as ASCII HEX format.
[image] is 6144 bytes transmit in ASCII HEX format.
Command to upload an image
This command uploads an image from the microSD location to the host.
command format: 29H [address]
transmit format: (xxH) (xxAH)
[address] is two bytes with value of 0001H to FFFFH sent as ASCII HEX format.
The controller transmits back the image (6144 bytes) in HEX format.
Command to download attribute block
This command downloads an attribute block from the host to the EEPROM location.
command format: 2AH [address] [attribute block]
transmit format: (xxH) (xxAH) (xxAH)
[address] is two bytes with value of 0001H to FFFFH sent as ASCII HEX format.
[attribute block] is eight bytes transmit in ASCII HEX format.
The address and attribute block are saved at this address. When the controller reads the attribute block it
compares the requested address to the saved address and if they do not match controller knows that the
attribute block is not programmed and ignores it.
Command to upload an attribute block
This command uploads an attribute block from the EEPROM location to the host.
command format: 2BH [address]
transmit format: (xxH) (xxAH)
[address] is two bytes with value of 0001H to FFFFH sent as ASCII HEX format.
The controller transmits back the saved address and [Attribute block] in hex format.
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 26 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
Command to display image on left switch at the requested address
This command displays an image on left switch at the requested address.
command format: 2EH 31H [address]
transmit format: (xxH) (xxH) (xxAH)
[address] is two bytes with value of 0001H to FFFFH sent as ASCII HEX format.
Example: 2E 31 30303445 displays the image stored at address 004EH.
Command to display image on right switch at the requested address
This command displays an image on right switch at the requested address.
command format: 2EH 32H [address]
transmit format: (xxH) (xxH) (xxAH)
[address] is two bytes with value of 0001H to FFFFH sent as ASCII HEX format.
Example: 2E 32 30313034 displays the image stored at address 0104H.
Command to increment address on left switch
This command displays an image on left switch at the address+1.
command format: 2EH 33H
transmit format: (xxH) (xxH)
Example: Start at address 00A1H. Send 2E 33 and the left switch displays the image stored at address 00A2H.
Send 2E 33 again and the left switch displays the image stored at address 00A3H.
Command to increment address on right switch
This command displays an image on right switch at the address+1.
command format: 2EH 34H
transmit format: (xxH) (xxH)
Example: Start at address 0F09H. Send 2E 34 and the right switch displays the image stored at address
0F0AH. Send 2E 34 again and the right switch displays the image stored at address 0F0BH.
Command to decrement address on left switch
This command displays an image on left switch at the address-1.
command format: 2EH 35H
transmit format: (xxH) (xxH)
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 27 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
Example: Start at address 1004H. Send 2E 35 and the left switch displays the image stored at address 1003H.
Send 2E 35 again and the left switch displays the image stored at address 1002H.
Command to decrement address on right switch
This command displays an image on right switch at the address-1.
command format: 2EH 36H
transmit format: (xxH) (xxH)
Example: Start at address 2345H. Send 2E 36 and the right switch displays the image stored at address
2344H. Send 2E 36 again and the right switch displays the image stored at address 2343H.
Commands to download information directly to OLED switches/displays
Note: Care must be taken using these commands. The OLED switches/displays could get damaged if
they are initialized with a value exceeding the specifications. Please check the OLED switches/displays
data sheet and application notes before using these commands.
Command to download data directly to OLED switches/displays
This command downloads data directly from the host to the OLED switches/displays.
command format: 2FH 53H [number] [data]
transmit format: (xxH) (xxH) (xxAH) (xxAH)
[number] is one byte sent in ASCII HEX format (01H to 80H). This is the number of data bytes (1 to 128
bytes).
[data] is 1 to 128 bytes sent in ASCII HEX format.
The controller sends the [data] to both OLED modules as data.
Command to download a command directly to OLED switches/displays
This command downloads a command from the host to the OLED switches/displays.
command format: 2FH 47H [number] [data]
transmit format: (xxH) (xxH) (xxAH) (xxAH)
[number] is one byte sent in ASCII HEX format (01H to 80H). This is the number of data bytes (1 to 128
bytes).
[data] is 1 to 128 bytes sent in ASCII HEX format.
The controller sends the [data] to both OLED modules as a command.
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 28 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
Command to download a command directly to OLED switches/displays (special)
This command turns off the OLED module, downloads a command from the host to the OLED
switches/displays, and turns it back on.
command format: 2FH 49H [number] [data]
transmit format: (xxH) (xxH) (xxAH) (xxAH)
[number] is one byte sent in ASCII HEX format (01H to 80H). This is the number of data bytes (1 to 128
bytes).
[data] is 1 to 128 bytes sent in ASCII HEX format.
The controller turns off the OLED display switches, sends the [data] to both switches as a command and then
turns on the OLED display switches.
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 29 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
9. Version 2.6 New Character Commands for OLED
switches/Displays
The following commands allow changing of the images being displayed. Host can download ASCII characters
to a specified location and the controller creates the graphic image using a 7x10 font look up tables based on
ON/OFF pixel colors. Host can download the ON pixels and OFF pixels colors. These colors stay in effect
unless they are changed by host.
Host can command the controller to change the status of one or more row of pixels to line color. Host can
download the line color. These colors stay in effect unless they are changed by host.
Host can specify the OLED’s brightness.
None of these commands affect the storage memory.
Command to specify the OLED brightness (OLED Color & OLED Rocker)
This command specifies the brightness for both OLED color and OLED Rocker.
command
format: 27H 4EH
[BRIGHTNESS OLED
COLOR]
[BRIGHTNESS OLED
ROCKER]
transmit format: (xxH) (xxH)
(xxAH) (xxAH)
[BRIGHTNESS OLED COLOR] is one byte send as ASCII HEX format. The acceptable values are from
00H to 0FH where 0FH is the brightest. Default (0FH).
[BRIGHTNESS OLED ROCKER] is one byte send as ASCII HEX format. The acceptable values are
from 00H to 0FH where 0FH is the brightest. Default (0FH).
The specified brightness levels go to effect immediately and remain in effect for duration of the session.
Command to specify the color for line command (OLED Color)
This command specify the color used in line command.
command format: 27H 47H
[Color]
transmit format: (xxH) (xxH)
(xxAH)
[Color] is two bytes send as ASCII HEX format. It specifies any of over 65000 available colors. Default
(0000H).
The specified color remains in effect only for duration of the session.
Command to specify the OFF/ON colors for Character generator commands (OLED Color)
This command specify the colors used in the character generator command.
command format: 27H 49H
[OFF color] [ON color]
transmit format: (xxH) (xxH)
(xxAH) (xxAH)
[OFF Color] is two bytes send as ASCII HEX format. It specifies any of over 65000 available colors.
Default (0000H). This is for background color.
[ON Color] is two bytes send as ASCII HEX format. It specifies any of over 65000 available colors.
Default (FFFFH). This is for character color.
The specified colors remain in effect only for duration of the session.
Command to generator characters for OLED color #1
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 30 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
This command generate 1 to 12 characters in font 8x10(include the space between the character) from the
specified coordinate in the OLED memory. Please note the characters can be generated on the memory outside
the viewing area. The controller uses the specified ON/OFF colors.
command format: 27H 51H [# of characters] [Row] [column] [Characters]
transmit format: (xxH) (xxH) (xxAH) (xxAH) (xxAH) [xxH]
[# of characters] is one byte send as ASCII HEX format. The acceptable values are from 01H to 0CH.
[Row] is one byte send as ASCII HEX format. It specifies the starting pixel row of the memory. The
acceptable values are from 00H to 36H.
[Column] is one byte send as ASCII HEX format. It specifies the starting pixel column in the memory.
The acceptable values are from 00H to 58H.
[Characters] 1 to 12 bytes of ASCII code for characters. The acceptable values for characters are from
20H to 7FH.
0H 10H 16H 49H 4FH 5FH
0D 16D 22D 73D 79D 95D
0H/0D
23H/35D
2FH/47D
3FH/63D
Picture 1 OLED on-board memory map
Command to generator characters for OLED color #2
This command generate 1 to 12 characters in font 8x10(include the space between the character) from
the specified coordinate in the OLED memory. Please note the characters can be generated on the
memory outside the viewing area. It uses the ON/OFF colors.
command format: 27H 52H [# of characters] [Row] [column] [Characters]
transmit format: (xxH) (xxH) (xxAH) (xxAH) (xxAH) [xxH]
[# of characters] is one byte send as ASCII HEX format. The acceptable values are from 01H to 0CH.
[Row] is one byte send as ASCII HEX format. It specifies the starting pixel row of the memory. The
acceptable values are from 00H to 36H.
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 31 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
[Column] is one byte send as ASCII HEX format. It specifies the starting pixel column in the memory.
The acceptable values are from 00H to 58H.
[Characters] 1 to 12 bytes of ASCII code for characters. The acceptable values for characters are from
20H to 7FH.
Command to change a line color (pixel row) for OLED color #1
This command changes the color of 1 to 64 rows of pixels from the specified row in the OLED memory.
. Please note the entire row of the memory change including the outside the viewing area. The controller
uses the specified line command color.
command format: 27H 59H [# of rows] [Row]
transmit format: (xxH) (xxH) (xxAH) (xxAH)
[# of Rows] is one byte send as ASCII HEX format. The acceptable values are from 01H to 40H.
[Row] is one byte send as ASCII HEX format. It specifies the starting pixel row of the memory. The
acceptable values are from 00H to 3FH.
Command to change a line color (pixel row) for OLED color #2
This command changes the color of 1 to 64 rows of pixels from the specified row in the OLED memory.
. Please note the entire row of the memory change including the outside the viewing area. The controller
uses the specified line command color.
command format: 27H 5AH [# of rows] [Row]
transmit format: (xxH) (xxH) (xxAH) (xxAH)
[# of Rows] is one byte send as ASCII HEX format. The acceptable values are from 01H to 40H.
[Row] is one byte send as ASCII HEX format. It specifies the starting pixel row of the memory. The
acceptable values are from 00H to 3FH.
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 32 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
10. Hardware
Controls Overview
The Mode Select Switch has two settings; “Switch” is for the OLED (64x48) switches and “Display” is for the
OLED (52x36) displays.
The Connector is for the installation of the Logic Boards onto the controller. One pin is keyed to reduce miss
mates.
Note: Improper installation of the Logic Boards could damage either/both the Logic Board and
controller.
The Batt/PWR switch has three positions: battery, off, line power.
Buzzer Volume adjusts the volume of the buzzer that activates when a button is pushed.
The 9V DC Power jack mates with a 2.5mm cylinder power connector with a center positive.
Power Requirement: 5V to 12V at 100mA Max
The RS232 Connector links the controller to the host.
1 2 3 4 5 6
RS232 GND TX RX GND
Note: To turn off the controller, press both switches at the same time until the switches are off then
turn off the Batt/PWR switch. This step must be followed to comply with OLED power off
requirement.
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 33 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
Controller Schematic
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 34 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
Logic board, IS-L02L1, Two OLED SmartSwitches
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 35 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
Logic board, IS-L02P1, Two OLED SmartDisplays
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 36 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
Container size
Board photo
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 37 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
11. Key Terms & Definitions
OLED module NKK Switches’ OLED SmartSwitches and SmartDisplays.
Host Any computer, terminal, or other device that can communicate over the
RS232 line.
Controller A PCB assembly that controls one or more logic boards and the switches
associated with them. It communicates with a host over the RS232 line.
Logic Board A PCB assembly with “glue logic” for mounting switches. It is controlled by a
controller.
Byte An eight bit hex value ranging from 00H to FFH (Decimal 0 to 255). The bit
format of a byte is: (B7 B6 B5 B4 B3 B2 B1 B0) where B7 is most significant
and bit B0 is least significant bit.
Nibble/Hex digit A four bit value ranging from 0H to FH. A byte consists of two nibbles.
ASCII A byte value representing a symbol.
Communication There are two formats to transmit a byte:
Format
1. Hex format - A hex byte is transmitted without any change to it. [xxH] will
be used to denote this.
All commands and some data are sent by using this format.
2. ASCII HEX format - Each nibble of the byte is converted to ASCII code
and sent as a byte. [xxAH] will be used to denote this.
For example, the hex byte 5AH is transmitted in two bytes, 35H and 41H.
The ASCII value for 5 is 35H and the ASCII value for A is 41H.
All addresses and most data are sent using this format.
Address A two byte value ranging from 0001H to FFFFH representing the 65536
memory locations for pictures and attributes on microSD flash.
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 38 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
12. Firmware issues
The problems found in the most current version are listed below and get resolved in the following version.
Version V2.6 Xon/Xoff was implemented for receive communication. Controller transmits
0x11after power up indicating it is ready for communication. The controller
transmits 0x13 when the buffer is ¾ full and transit 0x11 when the buffer is ¼
full.
Character generation commands have been added.
Version V2.4 During batch downloads, due to the different response times of the MicroSD,
sometimes the communication buffer gets filled/overwrite so some images
would be corrupted.
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 39 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
Appendix
Understanding Decimal, Hexadecimal and Binary Numbers
Decimal is the numbering system we use. It is called base-10. Every digit can be between 0 to 9.
The value of each digit is equal to the digit with ((Digit order) -1) zero in front.
Table 1, Base-10
Value in base-10
Digit x
10000 1000 100 10 1
Multiplication
for converting to
decimal
10
(N
-
1)
10
4
10
3
10
2
10
1
10
0
Digit order Nth
digit
…. …. Fifth
digit
Fourth
digit
Third
digit
Second
digit
First
digit
Example: The value of each digit of the Base-10 number 7605 is as follow:
Fourth digit: 7 with (4-1) zero = 7000
Third digit: 6 with (3-1) zero = 600
Second digit: 0 with (2-1) zero = 0
First digit: 5 with (1-1) zero = 5
Numbering system
A numbering system can be based on any number (base-N). However it has to follow the rules:
1. Each digit has to be between 0 to (Base minus one). For example:
---Each digit for Base-2 numbering system can be 0 or 1
---Each digit for Base-5 numbering system can be 0 to 4
---Each digit for base-8 numbering system can be 0 to 7
2. The value of each digit is equal to the digit with ((Digit order) -1) zeros in front.
All the operations that we use on base 10 numbering system such as addition, subtraction, multiplication,
division… works the same for all the numbering systems. The difference is the carry over will be based on the
base-number of the numbering system instead of 10.
Why do we need other base numbering systems?
Computers logic is based on two states:
Yes or No
False or True
High voltage or low voltage
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 40 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
Base-2 numbering system (binary)
The numbering system to accommodate the computer logic is called binary or base 2. Each digit of binary can
be 0 or 1.
Table 2, Base-2
Value in base-2
Digit x
10000 1000 100 10 1
Multiplication
for converting to
decimal
2
(N
-
1)
2
4
=16 2
3
=8 2
2
=4 2
1
=2 2
0
=1
Digit order Nth
digit
…. …. Fifth
digit
Fourth
digit
Third
digit
Second
digit
First
digit
Example: The value of each digit of the Base-2 number 1010 is as follow:
Fourth digit: 1 with (4-1) zero = 1000
Third digit: 0 with (3-1) zero = 0
Second digit: 1 with (2-1) zero = 10
First digit: 0 with (1-1) zero = 0
To convert a base-2 number to decimal, multiply each digit by multiplier and add them together:
Example: converting base-2 number 1010 to decimal is as follow:
(1 x 8) + (0 x 4) + (1 x 2) + (0 x 1) = 10
To convert a decimal number to base-2 number
---divide the decimal number by 2, the remainder is the first digit of the base-2 number
--- continue dividing quotient by 2 and put the remainder as the next digit until the quotient is equal 0.
Example: Convert the decimal number 21 to base-2
21 divide by 2 = 10 with 1 remainder First digit = 1
10 divide by 2 = 5 with 0 remainder Second digit = 0
5 divide by 2 = 2 with 1 remainder Third digit = 1
2 divide by 2 = 1 with 0 remainder Fourth digit = 0
1 divide by 2 = 0 with 1 remainder Fifth digit = 1
21 decimal = 101001 base-2 or binary
The base-2 number 101001 reads as one zero one zero zero one.
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 41 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
Base-16 numbering system
Communicating base-2 numbers is difficult for human because of all zero’s and one’s. To make it easier to
present computer data, hexadecimal or base-16 numbering system is used. Four digit of base-2 numbering
system convert to one digit of base-16 numbering system. Since we did not have digits for 10, 11, 12, 13, 14
and 15, they were assigned letters A, B, C, D, E and F respectively.
Table 3, Number base conversion
Hexadecimal
base-16
Decimal
base-10
Binary base-2
0
0
0
1
1
1
2
2
10
3
3
11
4
4
100
5
5
101
6
6
110
7
7
111
8
8
1000
9
9
1001
A
10
1010
B
11
1011
C
12
1100
D
13
1101
E
14
1110
F
15
1111
10
16
10000
11
17
10001
etc
etc
etc
Table 4, Base-16
Value in base-16
Digit x
10000 1000 100 10 1
Multiplication
for converting to
decimal
16
(N
-
1)
16
4
=65536
16
3
=4096
16
2
=256
16
1
=16
16
0
=1
Digit order Nth
digit
…. …. Fifth
digit
Fourth
digit
Third
digit
Second
digit
First
digit
IS-Dev Kit-7 User’s Manual
7850 East Gelding Drive • Scottsdale, AZ 85260-3420
IS-Dev Kit-7 Users Manual B.doc
Page 42 of 42
Toll Free 1.877.2BUYNKK (877.228.9655) Phone 480.991.0942 • Fax 480.998.1435
www.nkkswitches.com • Email engineering@nkkswitches.com 1013
Example: Convert 2A7 hex to decimal
Digit 3: 2 x 256 = 512
Digit 2: (10) x 16 = 160
Digit 1: 7x1 = 7
----------
679
2A7 hex = 679 decimal
Example: Convert 925 decimal to hex
925 divide by 16 = 57 with 13 remainder First digit =D
57 divide by 16 = 3 with 9 remainder Second digit = 9
3 divide by 16 = 0 with 3 remainder Third digit = 3
925 decimal = 39D hex
Converting between hex and binary is as easy as replacing each digit of hex with equivalent 4 digit of binary.
Example: convert A5B hex to binary
A = 1010
5 = 0101
B = 1011
A5B hex = 1010 0101 1011 binary
Converting binary to hex is as easy as replacing each 4 digit of binary to equivalent digit of hex. If the binary
digits are not multiple of 4 for grouping, add enough zero to the left to make them multiple of 4.
Example: Convert 0111 1010 1111 binary to hex
1111 = F
1010= A
0111 = 7
0111 1010 1111 binary = 7AF hex
Common terms:
Bit = binary digit
Nibble = 4 binary digits
Byte = 8 binary digits = 2 nibbles = 2 HEX digits