核桃派walnutpi添加红外遥控器键盘映射(其他的linux板子同理)ir-keytable

本文讲述了作者使用01Studio的全志H616Linux开发板核桃派,通过红外接收头和ir-keytable工具学习Linux中红外遥控器的配置,实现遥控器按键映射到键盘输入的操作过程。

01studio终于又发布新品了,全志h616 linux开发板核桃派,正好我也打算学习linux,做为我的启蒙公司,必须支持果断入了一个。
在这里插入图片描述
这个板子自带红外接收头,比较少见,一般都需要自己加,看官网文档,已经安装好并使用了ir-keytable这个工具来接收红外,但是除了测试外并未给出其他用法,于是在网上搜了下,发现有些人用linux板子做机顶盒,直接将红外遥控器映射键盘输入,很帮,于是就照猫画虎移植了一下。

类似上图的遥控器,某宝一堆,真的很便宜,我买的只要1.2元!!!他们大多数都是nec红外协议的,最经典的一种,先使用测试工具看下键值对应:

sudo ir-keytable -c -p NEC -t

在这里插入图片描述
如上图所示会出现对应的编码,这时候就记下来并且可以编辑自己的keymap了,新建文件walnutpi-ir输入以下内容

# table mbh, type: NEC
### 在核桃派1B上成功安装LinuxCNC系统的解决方案 #### 系统配置优化与实时性能提升 #### 关闭不必要的后台服务 为了减少系统负载,可以通过禁用或停止不需要的后台服务来优化性能。例如,可以使用以下命令禁用`bluetooth`和`network-manager`服务: ```bash sudo systemctl disable --now bluetooth sudo systemctl disable --now network-manager ``` 这些命令确保系统中未使用的资源被释放,从而为LinuxCNC提供更多的CPU时间[^1]。 #### 使用`nice`或`renice`调整进程优先级 通过`nice`或`renice`命令,可以调整LinuxCNC的优先级以确保其获得更高的CPU资源分配。启动LinuxCNC时,可以使用以下命令设置较低的“niceness”值(即更高的优先级): ```bash nice -n -20 /path/to/linuxcnc ``` 对于已经运行的进程,可以使用`renice`命令动态调整其优先级。例如,将PID为1234的进程优先级设置为-20: ```bash sudo renice -n -20 -p 1234 ``` 这里需要注意的是,负数表示更高的优先级,而普通用户只能调整到最小的正值优先级,需要超级用户权限才能设置负值[^2]。 #### 配置`nohz_full`参数关闭动态滴答定时器 为了进一步减少中断对实时性能的影响,可以通过内核参数`nohz_full`配置特定的CPU核心以完全禁用周期性定时器滴答。编辑`/etc/default/grub`文件并添加以下内容: ```bash GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nohz_full=3" ``` 上述配置中,`nohz_full=3`表示将第3个CPU核心设置为无周期滴答模式。这有助于减少由定时器中断引起的延迟,从而提高实时性能[^3]。 完成以上配置后,重启系统以使更改生效: ```bash sudo update-grub sudo reboot ``` #### 示例综合应用 假设需要优化核桃派1B上的LinuxCNC性能,可以按照以下方法操作: 1. **关闭后台服务**: ```bash sudo systemctl disable --now bluetooth sudo systemctl disable --now network-manager ``` 2. **调整优先级**: 启动LinuxCNC时设置高优先级: ```bash nice -n -20 /path/to/linuxcnc ``` 或者对已运行的进程调整优先级: ```bash sudo renice -n -20 -p $(pgrep linuxcnc) ``` 3. **配置`nohz_full`**: 编辑`/etc/default/grub`文件: ```bash GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nohz_full=3" sudo update-grub sudo reboot ``` #### 安装LinuxCNC的具体步骤 在核桃派1B上安装LinuxCNC时,可以参考以下方法。首先确保系统更新至最新版本: ```bash sudo apt update sudo apt upgrade ``` 然后安装必要的依赖项和LinuxCNC软件包: ```bash sudo apt install linuxcnc-uspace linuxcnc-uspace-dev ``` 如果需要从源代码构建LinuxCNC,可以参考以下步骤: 1. 安装编译环境: ```bash sudo apt install build-essential git ``` 2. 克隆LinuxCNC源代码仓库: ```bash git clone https://github.com/LinuxCNC/linuxcnc.git cd linuxcnc ``` 3. 配置并编译项目: ```bash ./autogen.sh ./configure --with-realtime=uspace make -j$(nproc) ``` 4. 安装编译后的软件: ```bash sudo make setuid sudo make install ``` 最后,确保系统配置正确以支持实时扩展,并验证是否启用了实时功能: ```bash cat /sys/kernel/realtime ``` 如果输出为`1`,则表示实时扩展已启用[^4]。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值