Due, key mapping trouble


i bought due keyboard(keypad) key mapping. , attached mini keypad due, tested 'usbhost' - 'keyboardcontroller'. doesn't working(numlock led on).
i tried other hid : mini keyboard, mouse, keypad. working! well.
i don't understand. why doesn't working, 1 keypad? reason?

+
so... first, tried key mapping working keypad. code is...

code: [select]
#include <keyboardcontroller.h>

usbhost usb;

keyboardcontroller keyboard(usb);

int pressedkey, releasedkey;
 // keypad buttons.
boolean slash = false, multi = false, minus = false, plus = false, num7 = false, num8 = false, num9 = false, bs = false, num4 = false, num5 = false, num6 = false, tap = false, num1 = false, num2 = false, num3 = false, num0 = false, dot = false, enter = false;

void keypressed() {
  pressedkey = keyboard.getoemkey();
 
  if (pressedkey == 84) {slash = true;}
  if (pressedkey == 85) {multi = true;}
  if (pressedkey == 86) {minus = true;}
  if (pressedkey == 87) {plus = true;}
  if (pressedkey == 36) {num7 = true;}
  if (pressedkey == 37) {num8 = true;}
  if (pressedkey == 38) {num9 = true;}
  if (pressedkey == 42) {bs = true;}
  if (pressedkey == 33) {num4 = true;}
  if (pressedkey == 34) {num5 = true;}
  if (pressedkey == 35) {num6 = true;}
  if (pressedkey == 43) {tap = true;}
  if (pressedkey == 30) {num1 = true;}
  if (pressedkey == 31) {num2 = true;}
  if (pressedkey == 32) {num3 = true;}
  if (pressedkey == 39) {num0 = true;}
  if (pressedkey == 55) {dot = true;}
  if (pressedkey == 88) {enter = true;}
}

void keyreleased() {
  releasedkey = keyboard.getoemkey();
 
  if (releasedkey == 84 && slash == true) {slash = false;}
  if (releasedkey == 85 && multi == true) {multi = false;}
  if (releasedkey == 86 && minus == true) {minus = false;}
  if (releasedkey == 87 && plus == true) {plus = false;}
  if (releasedkey == 36 && num7 == true) {num7 = false;}
  if (releasedkey == 37 && num8 == true) {num8 = false;}
  if (releasedkey == 38 && num9 == true) {num9 = false;}
  if (releasedkey == 42 && bs == true) {bs = false;}
  if (releasedkey == 33 && num4 == true) {num4 = false;}
  if (releasedkey == 34 && num5 == true) {num5 = false;}
  if (releasedkey == 35 && num6 == true) {num6 = false;}
  if (releasedkey == 43 && tap == true) {tap = false;}
  if (releasedkey == 30 && num1 == true) {num1 = false;}
  if (releasedkey == 31 && num2 == true) {num2 = false;}
  if (releasedkey == 32 && num3 == true) {num3 = false;}
  if (releasedkey == 39 && num0 == true) {num0 = false;}
  if (releasedkey == 55 && dot == true) {dot = false;}
  if (releasedkey == 88 && enter == true) {enter = false;}
}

void setup()
{
  serial.begin(9600);
  keyboard.begin();
  mouse.begin();
}

void loop()
{
  usb.task();
 
  if (num0 == true) {mouse.press(); serial.println("mouse_left_pressed");} else {mouse.release(); serial.println("mouse_left_released");} // 'serial.println' worked.
}


i have been make keypad leonardo. know keyboard, mouse library little. time... omg. do? plz, me!
(sorry baby english level...)



Arduino Forum > Products > Arduino Due (Moderator: fabioc84) > Due, key mapping trouble


arduino

Comments