设备自动化总线(DAB 2.0)在数字电视中的应用及测试环境搭建

什么是 DAB

设备自动化总线(DAB)是一种简便的协议,允许在客厅中的消费设备之间轻松交互。它主要针对互联网连接设备,如智能电视、机顶盒和游戏机。它是device-automation-bus的缩写

本文摘要

本文深入浅出介绍了DAB的基本概念, 软件环境部署, 以及为了让DAB正常工作, 列举了目前开源DAB代码需要加入的补丁 。

DAB 的目的是什么?

DAB 使应用程序与客厅设备之间的通信变得更加容易。它使设备制造商和应用程序开发人员能够以编程方式执行各种任务。

主要特点

  • 应用程序控制:DAB 允许在设备上启动和停止应用程序。
  • 按键操作:它允许向设备发送按键操作。
  • 设备指标:DAB 便于捕获设备性能指标。
  • 重启操作:您可以使用 DAB 重启设备。

好处

  • 测试自动化:通过使用标准化的设备交互来自动化您的客厅应用程序测试套件。
  • 稳定的应用程序:衡量设备性能并提高应用程序的稳定性。
  • 节省时间和成本:减少开发和测试过程中的手动任务。

对设备制造商的好处

  • 通过支持 DAB,减少手动和临时测试工作。
  • 在您的设备上启用稳定的应用程序。
  • 减少设备测试和认证所需的时间。

对应用程序开发人员的好处

  • 提高您构建的应用程序的质量。
  • 使用 DAB 自动化手动测试。
  • 提高测试的可靠性。

DAB 2.0 在数字电视中的应用

架构

DAB 2.0 已经被实施以增强设备自动化能力。在数字电视中,DAB 2.0 是在 Google 和 Collabra 的合作下引入的。DAB基于物联网MQTT通讯协议. 所以要了解DAB,先必须熟悉MQTT.

以下是 DAB 2.0 如何与 数字电视集成的说明。

DAB的协议文档参考

https://github.com/device-automation-bus/dab-specification-2.0

DAB离不开的MQTT服务器软件MQTT broker

代码在 GitHub - eclipse/mosquitto: Eclipse Mosquitto - An open source MQTT broker 英文蚊子,加了个字母T

DAB分原生Native模式和桥接模式

1, 原生Native模式

参考代码在

https://github.com/device-automation-bus/dab-adapter-cpp

这个 C++ DAB 适配器模板旨在简化 DAB 操作的实现。该库处理所有消息层接口、解析和分发工作;这意味着 DAB 合作伙伴可以专注于逐步实现他们希望支持的 DAB 操作。

修改代码将在加入相应的patch

https://github.com/joyfish/dab-adapter-cpp

外部依赖:

eclipse-paho-mqtt-c - 该库实现了 MQTT 层。

Dab adapter cpp 调用Paho MQTT的C库函数, 对MQTT总线收发数据, 实现DAB协议.

主要函数的修改说明

原本的代码, 接收数据很好,

  • 13
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值