The Ideazon ZBoard is an excellent
keyboard. There have been many attempts at
innovation in this field in, mainly on extending the 98-key layout to include such things as a "
Windows key" and a
Popup menu key. Also popular are
multimedia control keys, to allow the user to control
playback of music or
video from the keyboard itself, without having to learn any
keystrokes.
The ZBoard, however, incorporates these additions with one completely innovative extra; the keys themselves are
detachable.
A ZBoard keyset is attached to the base station by slotting it into it, and clipping an
attachment on the side onto the base. This results in the keys being attached firmly and in the correct
position.
Two keysets come with the ZBoard, the
Ideazon Microsoft Windows and Internet Explorer keyset, and the
Ideazon Gaming Keyset, which is optimised for
FPS games.
The
keyset identifies itself to the base station using a microchip with 6 connectors, contained inside a small box next to the indicator LEDs, and secured by 2
Phillips head screws. This chipset is now common to all Zboards, but was originally limited to the Zboards of the country it was purchased in. For this reason, the
Ideazon Neverwinter Nights Keyset will not work on any Zboards save those purchased in the
USA.
The layout of the Zboard is stored in a proprietary format
XML file, the basic structure of which is outlined here.
All elements are contained within a <m> tag. Inside this you find a <cover> tag, with the attributes id, name and template. The ID is, I assume,
transmitted by the keyset, and is a 6 digit hexadecimal number. Each keyset can have
multiple layouts
assigned to it, by saving the XML in a file called xxxxxx00.xml xxxxxx01.xml, etc. where xxxxxx is the ID. The name attribute is self evident, and template is the known layout that this is based on, usually:
- Game4:
- Game1:Generic
- Keyboard:108
Custom FPS games are based on Game4, the included FPS layout is Game1:
Generic and the included Windows layout is based on Keyboard:108. The cover tag should be closed immediately.
Following this is the <ls> tag, which contains multiple <l> tags, which I believe control the toggle switches. They have an id of the form lx, where x is a number, a name, an initial value (init) which is boolean true/false, and an enabled value of the same type. Only the id and name are
mandatory.
An L tag may contain an <las> tag, which in turn contains multiple <la> tags. I believe these to set
LEDs when the button is pressed. An example is below.
<l id="l1" name="Enabled">
<las t="1">
<la type="f">g:tel(0,1)</la>
</las>
<las t="0">
<la type="f">g:tel(0,-1)</la>
</las>
</l>
Next the <ls> tag is closed, and the <apps> tag opened. This contains which applications can trigger the keyset to be selected. This is used to make sure that when you play a game, the correct keyset is automatically chosen. Here is the example for the Halo keyset.
<apps>
<app id="a0" name="halo.exe">
<aas t="1">
<aa type="t" tlid="l1" op="3"/>
<aa type="t" tlid="l1" op="1"/>
</aas>
<aas t="0">
<aa type="t" tlid="l1" op="0"/>
<aa type="t" tlid="l1" op="2"/>
</aas>
</app>
</apps>
Finally comes the <ks> tag, which contains <k> tags, which map physical keys to the keystrokes they perform. These are, I believe, represented by a
hexadecimal ASCII value of two characters. More than two characters are sometimes included, but never an
odd number of hexadecimal
digits. The
parameters for a k tag are phys, for the
physical key, and inside the tag is the hexadecimal.
Finally, the USB version of the Zboard has two
USB 1.1 connectors on the back, which together provide 100
mA.