[phpBB Debug] PHP Warning: in file [ROOT]/phpbb/db/driver/mysqli.php on line 258: mysqli_fetch_assoc(): Couldn't fetch mysqli_result
[phpBB Debug] PHP Warning: in file [ROOT]/phpbb/db/driver/mysqli.php on line 320: mysqli_free_result(): Couldn't fetch mysqli_result
rusefi.com The most advanced open source ECU 2023-09-07T18:36:15 https://rusefi.com/forum/app.php/feed/topic/2611 2023-09-07T18:36:15 2023-09-07T18:36:15 https://rusefi.com/forum/viewtopic.php?t=2611&p=48275#p48275 <![CDATA[Re: Reasonable priced Grayhill 12 and 20 button keypads availabe from DigiKey.]]> Statistics: Posted by AndreyB — Thu Sep 07, 2023 6:36 pm


]]>
2023-09-07T16:02:08 2023-09-07T16:02:08 https://rusefi.com/forum/viewtopic.php?t=2611&p=48274#p48274 <![CDATA[Re: Reasonable priced Grayhill 12 and 20 button keypads availabe from DigiKey.]]>

Code:

function onKeyClick(bus, id, dlc, data)if data[1] == 0x80 thentxCan(1, 0x20A, 0, { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 })elseif data[1] == 0x40 thentxCan(1, 0x20A, 0, { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 })elseif data[1] == 0x20 thentxCan(1, 0x20A, 0, { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 })elseif data[1] == 0x10 thentxCan(1, 0x20A, 0, { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 })elseif data[1] == 0x08 thentxCan(1, 0x20A, 0, { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 })elseif data[1] == 0x06 thentxCan(1, 0x20A, 0, { 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 })elseif data[1] == 0x05 thentxCan(1, 0x20A, 0, { 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 })elseif data[1] == 0x04 thentxCan(1, 0x20A, 0, { 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 })elseif data[1] == 0x03 thentxCan(1, 0x20A, 0, { 0x9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 })elseif data[1] == 0x02 thentxCan(1, 0x20A, 0, { 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 })elseif data[1] == 0x01 thentxCan(1, 0x20A, 0, { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 })elseif data[1] == 0x00 thentxCan(1, 0x20A, 0, { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 })endendfunction onTick()endtxCan(1, 0x000, 0, { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 })txCan(1, 0x20A, 0, { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 })txCan(1, 0x30A, 0, { 0xFF, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00 })canRxAdd(0x18A, onKeyClick)

Statistics: Posted by opelpanfan — Thu Sep 07, 2023 4:02 pm


]]>
2023-09-07T14:27:01 2023-09-07T14:27:01 https://rusefi.com/forum/viewtopic.php?t=2611&p=48273#p48273 <![CDATA[Re: Reasonable priced Grayhill 12 and 20 button keypads availabe from DigiKey.]]>
Programming manual:
3K012-4RN3AG.pdf
Default NodeId is 0x18A hex

Wake up Keypad need to send
ID = 000h, LEN = 8, Data = {01h 00h 00h 00h 00h 00h 00h}
Enough send once after power up and Init message received
ID = 70Ch, LEN = 1, Data = {00h}

Keypad clicks return with
ID = 18Ah, LEN = 3, Data = {xxh xxh xxh}
image.png

Multiple button clicks at once sum up data:
Button 1 + Button 2 will get you Data = {03h 00h 00h}

Set indicator LED's:
In total 3 LED's per button so {Number of Buttons} x 3 = 36 (in case of 12 buttons)
ID = 20Ah, LEN = 8, Data = {00h 11h 22h 33h 44h 55h 66h 77h}

00 - Control 1-8 LED's addressing in 8 bit binary (00000000) to hex (00-FF)
11 - Control 9-16 LED's addressing in 8 bit binary (00000000) to hex(00-FF)
22 - Control 17-24 LED's addressing in 8 bit binary (00000000) to hex(00-FF)
33 - Control 25-32 LED's addressing in 8 bit binary (00000000) to hex(00-FF)
44 - Control 33-40 LED's addressing in 8 bit binary (00000000) to hex(00-FF)
55 - Control 41-48 LED's addressing in 8 bit binary (00000000) to hex(00-FF)
66 - Control 49-56 LED's addressing in 8 bit binary (00000000) to hex(00-FF)
77 - Control 57-64 LED's addressing in 8 bit binary (00000000) to hex(00-FF)

Set Brightness:
ID = 30Ah, LEN = 8, Data = {xxh 00h yyh 00h 00h 00h 00h}
xx - 0-255 in hex (00 - FF) indicator brightness
yy - 0-255 in hex (00 - FF) backlight brightness

Statistics: Posted by opelpanfan — Thu Sep 07, 2023 2:27 pm


]]>
2023-09-07T15:11:21 2023-09-06T18:06:36 https://rusefi.com/forum/viewtopic.php?t=2611&p=48267#p48267 <![CDATA[Re: Reasonable priced Grayhill 12 and 20 button keypads availabe from DigiKey.]]> image.png4 pin Deutsch DT connector
DT06-4S

Also very nice stickers are available from Haltech for these keypads:

https://www.haltech.com/product/ht-011500-can-keypad-label-set/

Statistics: Posted by opelpanfan — Wed Sep 06, 2023 6:06 pm


]]>
2023-09-05T13:16:42 2023-09-05T13:16:42 https://rusefi.com/forum/viewtopic.php?t=2611&p=48265#p48265 <![CDATA[Re: Reasonable priced Grayhill 12 and 20 button keypads availabe from DigiKey.]]> Statistics: Posted by AndreyB — Tue Sep 05, 2023 1:16 pm


]]>
2023-09-05T07:51:55 2023-09-05T07:51:55 https://rusefi.com/forum/viewtopic.php?t=2611&p=48264#p48264 <![CDATA[Reasonable priced Grayhill 12 and 20 button keypads availabe from DigiKey.]]>
12 button part code 3K012-4RN3AG CANOpen protocol
https://www.digikey.co.uk/en/products/detail/grayhill-inc/3K012-4RN3AG/9809016

20 button part code 3K020-4RN3AG
https://www.digikey.co.uk/en/products/detail/grayhill-inc/3K020-4RN3AG/9809020

It would be super nice to have support added to FW

Statistics: Posted by opelpanfan — Tue Sep 05, 2023 7:51 am


]]>