RK3399 開發板增加紅外遙控器支援

2021-09-26 13:54:23 字數 1353 閱讀 8044

$ vi kernel/arch/arm64/boot/dts/rockchip/rk3399pro-toybrick-prod.dtsi

// add by renton

&pwm3 ;

};

根據遙控器修改相應的key_table。

字母和符號鍵都是 linux 的標準鍵值,在可以在 include/dt-bindings/input/input.h 中查詢。

kernel/drivers/input/remotectl/rockchip_pwm_remotectl.c
1、開啟列印鍵值的除錯開關

# echo 1 > sys/module/rockchip_pwm_remotectl/parameters/code_print
按遙控器的按鍵,記錄下對應的鍵值

例如按向下鍵,有如下列印

[19634.735833] get usercode=0x4040

[19634.762463] rmc_getdata=e9

則,該遙控器的 usercode 是 0x4040,向下鍵的鍵值就是 0xe9,如此反覆,直到列印完遙控器上的所有鍵值。

2、有時候需要配合

# echo 1 > /sys/module/rockchip_pwm_remotectl/parameters/code_print
一起列印,然後看出錯的時候,是哪乙個或者幾個 bit 引起的,有時候放寬一點判斷的條件即可,一般是通過修改上下限來達到,具體可以參考**裡面 bit 值的判斷地方。

3、getevent

有時候無法確定是核心按鍵判斷出錯,還是 android 層沒有響應某個按鍵, 可以在串列埠下輸入getevent 除錯命令,該命令會打出驅動上報的所有 input 事件,如果按遙控器有列印,並且鍵值正確,那說明是 android 響應的問題。

# getevent

add device 1: /dev/input/event0

name: "ff680000.pwm"

/dev/input/event0: 0001 006c 00000001

/dev/input/event0: 0000 0000 00000000

/dev/input/event0: 0001 006c 00000000

/dev/input/event0: 0000 0000 00000000

以上是在除錯平台輸入 getevent 的效果,最前面會列出所有的 input 裝置,按的時候會上報事件,其中 0x6c 是上報的 linux 鍵值,後面的 1 代表按下,如果是 0 則代表彈起。

RK3399核心板與人臉識別機櫃控制之間的「聯絡」

一 產品背景 i cabinetc是一款基於物聯網技術為完善物品溯源管理而生的智慧型儲存終端,旨在解決當前高值備品管理的弊端。配套的智慧型管理系統可實時記錄人員資訊,物品有效期,領還記錄等管理資訊,為精細化管理提供有力的基礎性保障。由電腦和微控制器組成的多功能備品管理控制系統終端裝置,是工具管理現代...

ARM開發板 瑞芯微RK3288開發板

g3288 開發板由郵票孔核心板,底板和液晶板三大塊組成,核心板採用 8 層板工藝設計,確保穩定可靠,可以批量用於平板電腦,車機,學習機,pos機,遊戲機,行業監控等多種領域。主控為cortex a17四核rk3288,最高主頻1.8ghz。底板留有豐富的外設,幾乎可以演示 rk3288 晶元的全部...

linux開發板增加adb功能

linux開發板增加adb功能 二 配置linux kernel 三 功能使用示例 本文將以100ask的imx6ull開發板為例,在開發板增加adb功能,該功能可以用於檔案傳輸和開發除錯 可以將pc端的檔案傳輸到開發板。buildroot配置,需要將adb功能開啟並加usb功能配置指令碼 進入bu...