Odoo POS Customer Display配置异常求助:客显无显示/仅显示‘P’
解决POS Customer Display在Posbox上的显示问题
结合你描述的部署场景,我来帮你一步步排查客显异常的问题:
一、先确认硬件本身的可用性
- 先把客显连回Windows,用厂商提供的调试工具(或者通用串口助手)测试,发送简单字符看是否能正常显示,排除客显硬件故障或者Windows端驱动问题。
- 如果是USB转串口的客显,登录Posbox执行命令
ls /dev/ttyUSB*或ls /dev/ttyACM*,确认系统识别到了设备节点。如果没找到,执行apt-get install usbserial安装串口驱动,重启Posbox后再检查。
二、检查Posbox端的模块配置与服务加载
- 登录Posbox的后台(
192.168.50.36:8069),进入POS硬件代理配置页,核对客显的参数:- 设备路径:要和刚才查到的
/dev/ttyUSB0这类节点一致 - 波特率、数据位、停止位:必须和客显的出厂参数匹配(常见是9600,8,N,1)
- 客显类型:选择对应品牌或兼容类型(比如ESC/POS兼容)
- 设备路径:要和刚才查到的
- 检查Posbox的Odoo启动脚本:打开
/root_bypass_ramdisks/etc/init.d/odoo,确认--load参数里包含hw_customer_display,比如:
如果没有,添加后执行--load=hw_proxy,hw_posbox_homepage,hw_customer_displayservice odoo restart重启服务。
三、核对Odoo服务器与客户端配置
- 登录Ubuntu上的Odoo后台,进入对应POS收银台的配置页面,确保:
- 勾选了客户显示选项
- 硬件代理地址准确填写为
192.168.50.36:8069(无多余空格或符号)
- 在Windows客户端的浏览器中,直接访问
192.168.50.36:8069,确认能打开Posbox主页,排除网络连通性问题。同时建议用Chrome/Firefox这类浏览器,避免小众浏览器的WebSocket限制(Odoo与Posbox依赖WebSocket通信)。
四、通过日志定位具体问题
- 查看Posbox的Odoo日志:在Posbox上执行
tail -f /var/log/odoo/odoo-server.log,然后操作POS客户端(打开收银台、添加商品),观察日志中是否有客显相关的报错(比如设备连接失败、参数不匹配)。 - 查看Windows客户端的控制台日志:按F12打开开发者工具→Console标签,检查是否有WebSocket连接失败或JS报错信息,这可能是客户端与Posbox的通信障碍。
五、一些常见的额外调整
- 如果客显需要初始化指令,可在Posbox的客显配置中添加初始化代码,比如ESC/POS的初始化指令
\x1B\x40(用于清屏并重置设备)。 - 若串口设备存在权限问题,执行
chmod 666 /dev/ttyUSB0(替换为你的设备节点),赋予读写权限后重启服务。
内容的提问来源于stack exchange,提问作者KbiR
相关产品推荐
相关产品推荐

