描写叙述

用于控制随意红外设备的Apple手表及iPhone应用。

IOS应用发送HTTP请求至一个或多个带有以太网插板的Arduino。Arduino正在解析http请求并发送红外信号。Arduino代码基于IRremote库(https://github.com/shirriff/Arduino-IRremote)。我使用三重红外发射线来给多个设备发送红外信号。

详述

遇到的问题:

我须要用5个不同的遥控器来控制我的媒体设备!

解决方式:

我构建了一个Apple 手表/iPhone 应用 及 Arduino设备来控制我全部的红外设备!

项目:

项目分成两部分:

1. 带有以太网插板及红外led的Arduino设备

2. 带有Apple手表扩展功能的iPhone应用

Arduino:

我使用的是带有以太网插板及红外led的Arduino UNO板。已经编译好程序进行http命令接收并将其解析成红外信号。

http命令样例:

http://<arduino ip>/send?p=1&c=2FD48B7&l=32&

命令会发送电源信号给我的东芝电视。

命令有3部分:

  • p:协议(1是NEC IR 协议)
  • c:16进制代码
  • l:长度

我正使用IRremote Arduino库来发送红外信号(https://github.com/shirriff/Arduino-IRremote)

iPhone 应用:

我开发了一个iPhone应用作为远程的用户接口。能够在应用的设置中进行对设备的添加及编辑。

我给每个设备起了一个名字,通过Arduino的IP来控制设备及设备介绍。

设备介绍包括设备的代码(电源,静音…)信息。每一个代码我都有协议信息,十六进制代码及长度。

所以,当我按下东芝电视的电源键。app就知道怎样为此功能构建Http命令。

用户能够在app的设备选择菜单中对设备控制进行更改。

app有苹果手机扩展项,所以用户能够使用手表来控制设备。

组件

1 * Arduino Uno

1 * Arduino 以太网插板

1 * 红外LED

我正使用一个三重红外发射器线给多个设备发送信号

1 * 苹果手机

1 * iPhone

感谢阅读!

翻译自:https://hackaday.io/project/5894-apple-watch-ir-remote-with-arduino

WIZnet官方站点:http://www.iwiznet.cn

WIZnet微信公众平台:

用Arduino对Apple手表进行远程红外控制的更多相关文章

  1. 远程桌面控制项目开发(Spring+Netty+Swing)

    [目录] 1.前言 2.初现端倪 3.款款深入 4.责任细分 5.功能层级图 6.项目结构 7.关键类设计 8.一些设计想法 9.待优化 10.一点心得 11.效果演示 12.讨论 13.GitHub ...

  2. ubuntu 18 怎样对Windows进行远程桌面控制

    ubuntu 18 怎样对Windows进行远程桌面控制: 1. 先安装一个redesktop 工具(sudo apt-get install redesktop) 2. 在通过 redesktop ...

  3. 【雕爷学编程】Arduino动手做(45)---红外避障传感器

    37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器和模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里 ...

  4. GP1UM26(78)1RK远程红外遥控接收IC数据手册学习

    1.Features 该系列IC具有多种BMP带通频率可供选择,典型的GP1UM261RK带通频率为38KHz,内部的前置放大器等放大电路工作频率均为38KHz. Compact紧凑型,体积小 2.i ...

  5. git之remote branch controller(远程分支控制)

    1.创建本地分支 git branch  //查看远程分支 git checkout -b branch_name //创建远程分支 在查看分支git branch 2.将分支提交到远程仓库 此时远程 ...

  6. TI CC2541的红外控制

    整整一个礼拜, 整了...大约40个小时吧, 最少.. 下面是结果, 只能做一个delay延时.: unsigned char Time;unsigned char IrValue[6];#pragm ...

  7. 树莓派 LED+蜂鸣+声音传感器+红外模块组合打造声控/红外控制LED

    昨天搞了控制LED,玩了第一个,剩下的就感觉很简单了,这里记录一下 先来几张照片 玩了蜂蜜模块才发现规律,一般这种模块,都会有三个针脚,VCC(3.3V或5V供电输出针脚).GNC(对应GPIO针脚的 ...

  8. Linux 远程桌面控制

    我现在知道有两种方式: 1.直接使用Gnome桌面的远程控制功能.在服务器端登录到gnome桌面,然后在系统菜单中打开远程桌面配置,勾选允许远程即可.这种方式客户端和服务器的两种操作将保持同步,也就是 ...

  9. 基于W5500+Yeelink的远程灯光控制设计

    概述 工具:物联网云平台Yeelink  DHT11温湿度传感器   W5500EVB 编译环境:Keil4 目的:通过以太网实时监控远程某个位置的温度和湿度 在W5500EVB端连接LED灯.通过W ...

随机推荐

  1. STL容器迭代过程中删除元素技巧(转)

    1.连续内存序列容器(vector,string,deque) 序列容器的erase方法返回值是指向紧接在被删除元素之后的元素的有效迭代器,可以根据这个返回值来安全删除元素. vector<in ...

  2. Python基础:基本数据类型

    python基本标准6类数据类型:Number数字, String字符串, List列表,Tuple元组,Set集合,Dictionary字典 不可变数据3个(Number数字,String字符串,T ...

  3. System.err与System.out的区别

    大多数操作系统都有三个标准文件描述符:标准输入,标准输出,标准出错. 三个操作系统的文件描述符映射到编程语言的标准库中,往往加了一层包装,但是名字通常还是叫标准输入,标准输出,标准出错. 在其它语言中 ...

  4. java死锁问题

    一.先从定义上了解一下死锁 二.从代码角度上去解释一下死锁问题 三.上述程序就是出现了死锁,我们来查看一下 1.命令如下   cmd>>jps(查看到了死锁线程所在的类,前面是PID) 2 ...

  5. Think PHP中URL_MODE相关事项

    官网上有关于URL_MODE的解释:http://document.thinkphp.cn/manual_3_2.html#url 这里主要讲一下URL_MODE为2,即REWRITE模式. REWR ...

  6. 类似倒圆角方法输入半径选择实体 kword

    ads_name ename; ads_point adspt; acedInitGet(NULL, TEXT("R")); while (1) { int rc = acedEn ...

  7. CAD设置系统变量(com接口VB语言)

    主要用到函数说明: MxDrawXCustomFunction::Mx_SetSysVar 设置系统变量.详细说明如下: 参数 说明 CString sVarName 系统变量名 Value 需要设置 ...

  8. Java必知必会的20种常用类库和API

    转载:https://blog.csdn.net/u011001084/article/details/79216958 个人感觉工具类对日常开发是很重要的,所以推荐一下这篇文章,虽然有的类库过时了 ...

  9. spring用来干什么,解决的问题

    // 1. 实体类 class User{ } //2. dao class  UserDao{ .. 访问db } //3. service class  UserService{ UserDao ...

  10. Ceres

    sudo apt-get install liblapack-dev libsuitesparse-dev libcxspares3.1.2 libgflags-dev libggoogle-glog ...