×

基于Wifi的集线器

消耗积分:0 | 格式:zip | 大小:0.00 MB | 2023-06-16

吴藩

分享资料个

描述

索诺斯UPnP

创建基于 Wifi 的集线器,用于扫描、监控和控制家庭网络上的 Sonos 设备。

基本上,你为什么要这样做?- 您的智能手机可以完成这项工作,许多其他智能设备也可以!

然而,这是一个软件基础,​​可用于其他项目,例如构建您自己的 Demotics 壁挂式 Sonos 控制器,将旧的点唱机转换为 Sonos 播放器,或者将您损坏的旧飞利浦电子管收音机重新构建成具有复古外观的 Sonos播放器包括音量控制和精美的 rgb 颜色。以这个集线器为基础,您可以稍后添加硬件控制 :)

索诺斯图书馆

基础是 2015 年的 Sonos 库,扩展了额外的功能来构建 Sonos-Hub。这个库是原始 Sonos 库的一个分支:https://github.com/tmittet/sonos,我为 Mkr1010 构建了 WIFININA 端口。,:https ://github.com/javos65/sonos

我添加了 Sonos uPnP 扫描以在您的网络上查找您的 Sonos 设备为 TrackMetaData 解析添加了一个修补函数解析(非常松散!)新的 SonosUPnP 类函数是:

  • getZone(IP地址,.buffer)
  • getSerial(IP地址,缓冲区)
  • 获取源(IP地址,缓冲区)
  • getMedium(IPAddress, buffer) - 包括 Spotify
  • getSonosInfo(IPAddress) :使用新结构:SonosInfo

跟踪元数据:

  • getFullTrackInfo(IPAddress):使用新结构:FullTrackInfo
  • getTrackCreator(IP地址,缓冲区)
  • getTrackTitle(IP 地址,缓冲区)
  • getTrackAlbum(IP 地址,缓冲区)

通过 UDP 广播扫描 uPnP

  • CheckUPnP(IP地址*Plist)

最后一个是用于在网络上查找 uPnP Sonos 的扫描功能,并生成所有 uPnP 设备的 IP 地址列表

索诺斯信息

有趣的阅​​读端口 1400 上的可用服务:

SvRooij 的 Sonos TypeScript:链接

此外,该库在端口 1400 上使用 HTTP GET status/zp 调用来接收 XML 反馈。

依赖项

此应用程序使用以下 Arduino 库:

WIFININA - mkr1010 / uBlox Nina W10 的wifi 库

MicroXPath 库,用于解析 XML,由T.Mittet构建

EasyWifi 库,用于设置 Wifi 和凭证存储

例子

Github 库现在有两个示例,一个通过您可以访问的 WebServer 显示具有扫描和信息功能的 Sonos 集线器

另一个是恶作剧演示。在 .ino 代码中填写您的“坏音乐”艺术家姓名,每次该艺术家出现在您的 Spotify 播放列表中时,集线器都会跳过该艺术家 :) 非常有用

去做

  • 改进 EasyWifi 库

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !