Keypad library. Status of a key

Hi. I'm using this Keypad library in a project:

Is there a way to interrogate the status of a specific button of the matrix?
So I have this in my code:

byte buttons[NUMROWS][NUMCOLS] = {
  {0, 1, 2, 3, 4, 5, 6},
  {7, 8, 9, 10, 11, 12, 13},
  {14, 15, 16, 17, 18, 19, 20},
  {21, 22, 23, 24, 25, 26, 27},
  {28, 29, 30, 31, 32, 33, 34},
  {35, 36, 37, 38, 39, 40, 41},
  {42, 43, 44, 45, 46, 47, 48},
};

byte rowPins[NUMROWS] = {1,0,2,15,14,16,10};
byte colPins[NUMCOLS] = {9,8,7,6,5,4,3};

Keypad buttbx = Keypad( makeKeymap(buttons), rowPins, colPins, NUMROWS, NUMCOLS); 

I want to know if key 4, for instance is pressed or not.

Thank you

Have you looked at the examples that come with the library ?

  char key = keypad.getKey();

Then test the value of the key variable

I did check the examples, yes, but for some reason, that's not returning anything on the serial monitor, even though the windows USB device properties is registering proper inputs (it's a button box). For instance, serial monitor is not displaying anything (baudrate is correct), but you can properly see the input in the USB screen:
image
Also, what would be the expectation for the variable "key"? (assuming I manage for it to work). Would key return the key that is being pressed? how do I get the status of that key? because it's a rocker switch that can be on while other keys are being pressed.

Nevermind. The reason I asked this is because I have a 3-pin 3-position rocker switch. This is effectively 2 buttons, but I wanted it to be 3 (1 for each position). I've managed it to work by detecting when the forward and aft positions are released. The only downside to this is that you won't have any of the 3 buttons pressed at the start of the device. Once you action the switch at least once, it works as expected. I think I can live with that.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.