ZNDS智能电视网 推荐当贝市场

TV应用下载 / 资源分享区

软件下载 | 游戏 | 讨论 | 电视计算器

综合交流 / 评测 / 活动区

交流区 | 测硬件 | 网站活动 | Z币中心

新手入门 / 进阶 / 社区互助

新手 | 你问我答 | 免费刷机救砖 | ROM固件

查看: 1175|回复: 3
上一主题 下一主题
[教程]

天邑TY1208Z(S905M2)Armbian纯命令行适配遥控器 + B站投屏

[复制链接]
跳转到指定楼层
楼主
发表于 2026-9-13 16:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式 | 来自广西
本帖最后由 1147557131 于 2026-9-17 14:10 编辑

设备:天邑 TY1208Z(CPU:S905M2,1GB RAM,8GB ROM)
系统:Armbian 25.5.0 (Ubuntu noble) / 内核 6.1.135-ophub
背景:盒子刷了纯命令行的Armbian(无桌面),不安装Xorg,直接跑Kodi,并用原装红外遥控器控制,实现手机B站投屏。废话不多说,直接上折腾过程,全网首发,踩坑无数,按我的步骤走保证成功!
第一步:安装所需软件
在终端执行(注意带上 kodi-inputstream-adaptive,这是B站等流媒体播放的核心依赖):
  1. sudo apt update
  2. sudo apt install kodi kodi-inputstream-adaptive kodi-standalone ir-keytable evtest -y
复制代码
kodi-standalone 是专为无桌面环境设计的启动脚本,能自动处理虚拟终端切换,让 Kodi 直接在电视上全屏运行,无需额外安装 Xorg 或桌面环境。
第二步:检查红外功能是否启用
不要急着抓码,先确认红外接收器是否被系统识别。
1. 检查内核日志:
  1. dmesg | grep -i infrared
复制代码
如果有输出(例如 rc rc0: meson-ir 之类),说明红外驱动已加载。
2. 检查输入设备:
  1. cat /proc/bus/input/devices
复制代码
在输出中找 meson-ir 或类似的红外设备名称,记下它对应的 event 编号(通常是 event1)。
3. 确认设备节点存在:
  1. ls /dev/input/event*
复制代码
应该能看到 /dev/input/event1(或你的实际编号)。
4. 快速测试:
  1. sudo evtest
复制代码
选择你的红外设备(如 1),然后按遥控器任意键。如果终端有输出,说明红外功能正常。按 Ctrl+C 退出。

第三步:抓取遥控器按键码
确认红外正常后,抓取按键码:
  1. sudo ir-keytable -s rc1 -p all -t
复制代码
然后依次按下遥控器上的所有按键,记录下终端跑出的 scancode(长按会带有 repeat 提示,可忽略)。

我这边测试了这台天邑遥控器的完整键码(NEC协议),可直接参考:
  • 电源:0xb3dc,菜单:0xb388,返回:0xb3c5
  • 上:0xb3ca,下:0xb3d2,左:0xb399,右:0xb3c1,OK:0xb3ce
  • 音量+:0xb380,音量-:0xb381
  • 频道+:0xb385,频道-:0xb386
  • 快进:0xb39e,后退:0xb39d
  • 上页:0xb3dd,暂停:0xb395,静音:0xb39c,下页:0xb38c
  • #键:0xb3d0,刷新:0xb3d6,0:0xb387,*键:0xb3da
  • 1:0xb392,2:0xb393,3:0xb3cc,4:0xb38e,5:0xb38f
  • 6:0xb3c8,7:0xb38a,8:0xb38b,9:0xb3c4
  • 设置:0xb38d,声道:0xb398,定位:0xb39a,本地:0xb382
  • 收藏:0xb39b,点:0xb383,信息:0xb3c3,直:0xb3cd

⚙️ 第四步:配置系统底层映射(防重启失效)
新手建议:可以使用 1Panel 的图形化文件管理器来新建文件夹和文件,极其方便。
⚠️ 避坑警告:千万别用面板直接编辑文件内容! 网页编辑器会带入不可见的换行符,导致底层程序报错 FAIled to read 或 status=64。创建完空文件后,内容必须用终端 tee 命令写入!

      1. 写入底层按键映射文件(返回键已改为退格键(0xb3c5 = "KEY_BACK"        # 返回键),输入时删除字符):
  1. sudo tee /etc/rc_keymaps/ty1208z_ir.toml << 'EOF'
  2. # 天邑 TY1208Z 遥控器底层映射模板
  3. [[protocols]]
  4. name = "ty1208z_ir"
  5. protocol = "nec"

  6. [protocols.scancodes]
  7. # ==================== 基础导航 ====================
  8. 0xb3dc = "KEY_POWER"       # 电源键
  9. 0xb388 = "KEY_MENU"        # 菜单键
  10. 0xb3c5 = "KEY_BACKSPACE"   # 返回键0xb3c5 = "KEY_BACK" (已改为退格键,用于命令行删除)
  11. 0xb3ca = "KEY_UP"          # 上键
  12. 0xb3d2 = "KEY_DOWN"        # 下键
  13. 0xb399 = "KEY_LEFT"        # 左键
  14. 0xb3c1 = "KEY_RIGHT"       # 右键
  15. 0xb3ce = "KEY_ENTER"       # 确定/OK键
  16. 0xb380 = "KEY_VOLUMEUP"    # 音量 +
  17. 0xb381 = "KEY_VOLUMEDOWN"  # 音量 -

  18. # ==================== 功能键区 ====================
  19. 0xb398 = "KEY_AUDIO"       # 声道
  20. 0xb39c = "KEY_MUTE"        # 静音
  21. 0xb38d = "KEY_SETUP"       # 设置
  22. 0xb39a = "KEY_BOOKMARKS"   # 定位
  23. 0xb39b = "KEY_FAVORITES"   # 收藏
  24. 0xb39e = "KEY_FASTFORWARD" # 快进 >>
  25. 0xb39d = "KEY_REWIND"      # 后退 <<
  26. 0xb391 = "KEY_DELETE"      # 回看键(已改为删除键)
  27. 0xb383 = "KEY_VIDEO"       #
  28. 0xb3c3 = "KEY_INFO"        # 信息
  29. 0xb3cd = "KEY_TV"          #
  30. 0xb382 = "KEY_FILE"        # 本地

  31. # ==================== 导航与多媒体 ====================
  32. 0xb395 = "KEY_PLAYPAUSE"   # 播放/暂停
  33. 0xb3dd = "KEY_PAGEUP"      # 上页
  34. 0xb38c = "KEY_PAGEDOWN"    # 下页
  35. 0xb385 = "KEY_CHANNELUP"   # 频道 +
  36. 0xb386 = "KEY_CHANNELDOWN" # 频道 -
  37. 0xb3d6 = "KEY_REFRESH"     # 刷新

  38. # ==================== 数字键区 ====================
  39. 0xb392 = "KEY_1"           # 1
  40. 0xb393 = "KEY_2"           # 2
  41. 0xb3cc = "KEY_3"           # 3
  42. 0xb38e = "KEY_4"           # 4
  43. 0xb38f = "KEY_5"           # 5
  44. 0xb3c8 = "KEY_6"           # 6
  45. 0xb38a = "KEY_7"           # 7
  46. 0xb38b = "KEY_8"           # 8
  47. 0xb3c4 = "KEY_9"           # 9
  48. 0xb387 = "KEY_0"           # 0
  49. 0xb3da = "KEY_STAR"        # *(软键盘)
  50. 0xb3d0 = "KEY_POUND"       # #(输入法)
  51. EOF
复制代码

2. 创建Systemd开机自启服务(加5秒延迟,防开机红外硬件未就绪):
  1. sudo tee /etc/systemd/system/ir-keytable.service << 'EOF'
  2. [Unit]
  3. Description=IR Keytable Loader
  4. After=local-fs.target

  5. [Service]
  6. Type=oneshot
  7. RemainAfterExit=yes
  8. ExecStartPre=/bin/sleep 5
  9. ExecStart=/bin/bash -c '/usr/bin/ir-keytable -c -w /etc/rc_keymaps/ty1208z_ir.toml -s rc1'

  10. [Install]
  11. WantedBy=multi-user.target
  12. EOF
复制代码

rc1是我这机子的红外设备,请按你实际的,来选择你的红外设备。

3. 加载并启动服务:
  1. sudo systemctl daemon-reload
  2. sudo systemctl enable --now ir-keytable.service
  3. sudo systemctl status ir-keytable.service
复制代码
加载并启动服务enable 就是加入开机自启,--now 是立即生效。(这一步就是设置红外遥控器开机自启)
检查自启是否设置成功:
  1. sudo systemctl is-enabled ir-keytable.service
复制代码

如果输出
enabled,说明开机自启已经配置好了。此时服务状态应该是绿色的Active: active (exited),说明系统底层彻底认下了这个遥控器!
第五步:让Kodi认识这套按键
底层通了后,Kodi还需要一份映射文件。
新手继续用 1Panel 图形化工具,在 /home/用户名/.kodi/userdata/ 目录下新建 keymaps 文件夹。
必看:把路径中的 an 换成你的用户名,你在操作时请替换成你自己的。 你可以在终端输入 whoami 查看到自己的用户名。
建完文件夹后,终端执行权限修复(防止Kodi读不到):
  1. # 以我的用户名 an 为例,记得把下面的 an 换成你的
  2. sudo chown -R an:an /home/an/.kodi
复制代码
然后用 tee 命令写入 Kodi 专属的 keyboard.xml
复制代码

第六步:配置 kodi-standalone 服务,实现 Kodi 开机自启。注意:下面的 User=an 和 Group=an 也要换成你的用户名
使用 Kodi 自带的 kodi-standalone 脚本,能自动处理虚拟终端(tty)切换,让 Kodi 直接在电视上全屏运行,无需安装桌面环境。
1. 创建 Kodi 服务文件:
  1. sudo tee /etc/systemd/system/kodi.service << 'EOF'
  2. [Unit]
  3. Description=Kodi standalone
  4. After=remote-fs.target systemd-user-sessions.service network-online.target nss-lookup.target sound.target bluetooth.target
  5. Wants=network-online.target
  6. Conflicts=getty@tty1.service

  7. [Service]
  8. User=an
  9. Group=an
  10. PAMName=login
  11. TTYPath=/dev/tty1
  12. ExecStart=/usr/bin/kodi-standalone
  13. ExecStop=/usr/bin/killall --exact --wait kodi.bin
  14. Restart=on-abort
  15. StandardInput=tty
  16. StandardOutput=journal

  17. [Install]
  18. Alias=display-manager.service
  19. EOF
复制代码
2. 设置系统默认启动到图形目标(配合 Kodi 自启):
  1. sudo systemctl set-default graphical.target
复制代码
3. 设置 Kodi 开机自启,并立刻启动它:
  1. sudo systemctl daemon-reload
  2. sudo systemctl enable kodi
  3. sudo systemctl start kodi
复制代码
4. 检查 Kodi 是否已设置开机自启:
  1. sudo systemctl is-enabled kodi.service
复制代码
输出 enabled 即代表自启设置成功。
5. 可选:配置免密 sudo(部分系统需要。楼主没用到)
如果你的系统提示 kodi-standalone 需要 sudo 权限,可以添加以下配置(记得替换 an 为你的用户名):
  1. sudo tee /etc/sudoers.d/030-kodi-standalone << 'EOF'
  2. an ALL=(ALL) NOPASSWD:/usr/bin/kodi,/usr/lib/kodi,/usr/share/kodi,/usr/bin/kodi-standalone,/usr/lib/kodi/kodi.bin,/usr/bin/killall,/usr/sbin/service,/usr/bin/openvt
  3. EOF
复制代码
执行完 sudo systemctl start kodi 后,HDMI 输出应该就会出现 Kodi 界面。
未完

上一篇:cm311-1aCH代工线刷烧录成功开机无反应
下一篇:汇趣RK3128投影仪,开机卡在汇趣logo,求原厂固件
沙发
发表于 2026-9-14 09:25 | 只看该作者 | 来自广东
谢谢分享
回复 支持 反对

使用道具 举报

板凳
 楼主| 发表于 2026-9-14 15:40 | 只看该作者 | 来自广西

还得等等,审核吞了一些内容,我需要慢慢补齐0.0
回复 支持 反对

使用道具 举报

地板
 楼主| 发表于 2026-9-14 16:10 | 只看该作者 | 来自广西
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条

Archiver|新帖|标签|软件|Sitemap|ZNDS智能电视网 ( 苏ICP备2023012627号 )

网络信息服务信用承诺书 | 增值电信业务经营许可证:苏B2-20221768 丨 苏公网安备 32011402011373号

GMT+8, 2026-9-18 07:34 , Processed in 0.061174 second(s), 13 queries , Redis On.

Powered by Discuz!

监督举报:report#znds.com (请将#替换为@)

© 2007-2026 ZNDS.Com

快速回复 返回顶部 返回列表