Questions tagged «esp8266»

有关ESP8266微控制器单元的问题,包括对其进行编程或在IoT上下文中使用它。

1
ESP8266快速HTTP GET响应率
在开始对ESP8266进行编程以从服务器获取不断变化的数据(汽车位置)时,我遇到了一个问题:我无法让ESP8266从服务器接收数据的速度超过每秒3次。 数据速率最好是15次/秒。接收的数据是47个元素的字符串。 #include <ESP8266WiFi.h> #include <WiFiClient.h> // WiFi information const char WIFI_SSID[] = "my-wlan"; const char WIFI_PSK[] = "123qwe123qwe"; // Remote site information const char http_site[] = "10.13.137.144"; const int http_port = 8080; // Pin definitions const int LED_PIN = 16; // Global variables WiFiClient client; String readString, readString1 ; …

1
DIY将Sonoff添加到家用恒温器
我不是电气工程师,只是一个热情的DIY房主。我希望我的A / C可以在晚上8点自动打开,那是在我回家之前并能够自动切断电源的能力。我的Sonoff基本设备带有草坪灯,游泳池等。我有一个1英寸微动/自锁WiFi无线开关5V 12V,一直闲置在这里。我将其连接到洒水系统的一个区域,并且按预期方式工作—当洒水控制器打开该区域时,我可以打开/关闭Sonoff WiFi开关,然后再打开/关闭该区域很长时间,然后关闭。 我以为是夏天,将HVAC选择器转到AC,找到电源线,切断电源,将其插入此低压Sonoff中,然后我就可以在手机上打开/关闭AC或仅使用设置的计时器。温控器是霍尼韦尔RTH110B。这是安装手册。Sonoff设备由手机充电器或12vc直流连接器供电。 是否可以集成此Sonoff来智能化此恒温器,并能够在夏季打开空调,在冬季加热?

2
带以太网连接的ESP8266
我想知道是否有人知道将ESP8266转换为非WiFi的方法。即通过以太网(最好具有PoE功能)进行连接。 问原因:我的计划是将传感器放在不是wifi友好环境的储物柜中。我想特别监测湿度和温度。我有很多ESP8266单元,并且喜欢固件ESPeasy,因此想坚持使用该平台。

2
在Web浏览器中检测IoT设备?
最近,我从小米那里买了几个无线中继器。到目前为止,尽管它们表现稳定,但我真的不喜欢小米的应用程序。但是,我很喜欢它实际上可以在LAN和Internet上运行的想法。考虑到小米的服务器在中国,在局域网中时,它们可以快速打开和关闭。 因此,我想推出自己的基于ESP8266的继电器(我知道我可以准备好硬件,所以这是一个好处)。我的问题是,如何从网页上自动检测网络中的中继? 从“应用程序”中,我可以使用SSDP,mDNS-SD或UPNP来检测事物。但是我还没有从网络浏览器(基本上是Android上的Chrome)上找到信息。自从我将气象站的网页更改为渐进式Web应用程序以来,我就迷上了。我真的很喜欢仅作为网页而不是必须安装的应用程序的想法。而且PWA也在离线模式下填补了空白。 但是,奇怪的是,“困难的”部分(从LAN外部打开和关闭中继)很难通过MQTT服务器解决。但是我不希望不依赖外部MQTT服务器。如果我在局域网上,我想直接与中继交谈。如果不是,则通过MQTT发送命令。 我当然可以依靠服务器查询中继,但是在那种情况下,我需要Internet连接(如果我的MQTT服务器位于“云”上)或家庭托管的服务器。我确实有一个服务器,即使没有,树莓派也可以轻松填补空白。但是理想的情况是,通过LAN与设备(在这种情况下为Wifi)通信时,甚至不需要服务器。我更喜欢尽可能地保持P2P,并且仅当我在WAN上时才使用MQTT作为后备(MQTT解决了CG-NAT和端口转发的问题)。

2
ESP8266 Mesh网络根节点
我正在基于ESP8266的网状网络上工作,使用Coopdis的EasyMesh的示例代码似乎一切正常。在他/她的示例中,有3个ESP8266入网并提供一个简单的Web界面。这对我来说也很完美。 但是,在我的解决方案中,我需要将这些节点之一连接到Internet,以便整个Mesh都可以访问它(或者至少可以访问Mesh)。Espressif的ESP8266 Mesh用户指南文档(第4页)中也提到了这一点。我还发现他们发布了一些其他文档,所有文档都在谈论这,因为这很正常,但是没有任何我容易理解的示例代码。 如何配置网状网络以也连接到路由器。它像在Wi-Fi路由器上使用相同的SSID和Pass密钥一样简单吗?还是需要将Wi-Fi网格的Raspberry Pi做成一部分,然后再进行连接通过以太网连接到我的路由器?我认为我完成的研究不应该要求使用后者。 我需要这个世界的示例代码。我认为,AT命令不会帮助我。

2
802.11操作框架在软件中发送和接收
是否可以通过软件访问802.11动作帧TX / RX?有一个基于供应商特定操作框架的专有协议,称为ESP8266和ESP32芯片的ESP-NOW,我想尝试在Raspberry Pi上实现它。 从我的私人项目开始,我将Raspberry Pi与ESP8266连接(以交换短消息),然后我注意到ESP8266还有其他API(ESP-NOW和Simple Pair),并想将性能与普通WiFi连接进行比较。 如果我成功搜索有关访问WiFi Action框架的详细信息,我将发布所有结果(也许是供其他应用程序使用的库)。

2
非互联网连接的WiFi设备的标准?
我打算做很多家庭自动化。为此,我将托管一个私有的隔离WiFi网络,所有设备都将连接到该WiFi网络。这些设备将是简单的灯,RGB LED灯带(smd5050和ws2812b),恒温器,风扇,开窗器,窗帘控制器和普通插座。此外,IR发射器还可以模拟遥控器以启动电视等。还有433MHz发射器可以模拟可以切换标准遥控插座的遥控器。 现在,我想知道这些设备应向WiFi网络公开哪种接口的标准。 我当然可以给每台设备一个简单的http路由,然后编写可以理解我的界面的应用程序,但是如果我可以实现一个标准,让我可以使用已经编写并且确实理解该标准的应用程序和程序,那就太好了。 。

1
Alexa无法识别Fauxmo和ESP8266
我正在尝试使用fauxmo控制ESP8266。该程序可以正确编译,但是当我运行Alexa应用查找设备时,ESP不会显示。 ESP肯定已连接到我的家庭网络,并且程序正在运行(我已经检查了串行输出)。其他联网设备,例如我的Nest温控器也正在出现。 非常感谢任何关于为什么它可能不会出现的想法。 这是我的wemos d1 mini上的代码 #include <Arduino.h> #include <ESP8266WiFi.h> #include "fauxmoESP.h" #define WIFI_SSID "..." #define WIFI_PASS "..." #define SERIAL_BAUDRATE 115200 fauxmoESP fauxmo; // ----------------------------------------------------------------------------- // Wifi // ----------------------------------------------------------------------------- void wifiSetup() { // Set WIFI module to STA mode WiFi.mode(WIFI_STA); // Connect Serial.printf("[WIFI] Connecting to %s ", WIFI_SSID); WiFi.begin(WIFI_SSID, WIFI_PASS); …

2
ESP8266对讲环通知器
我的项目构想是在对讲机上附加“东西”,当它收到电信号(有人按门铃)时,请与家用服务器中的本地Web服务联系,然后该服务器将推送通知发送到电话。 我当前控制的项目部分是服务器和推送通知之一(我是开发人员),丢失的部分是硬件部分。 看来ESP8266的样子对我来说是很好的选择。但是,我需要知道如何使它对振铃信号做出反应,以及如何使它通过对讲电源供电,您能给我一些建议吗? 这是对讲机 也许 SparkFun ESP8266可能是更好的选择? 根据克里斯·斯特拉顿(Chris Stratton)的评论,拥有自带电源的ESP8266并跟踪对讲机的声音信号会比使用对讲机的内部电路更好吗? 如果是,我需要使我的设备跟踪声音信号吗?并且,是否有电池电源可以告知电源寿命?还是电池寿命足够长而不必担心呢? 继续我最初的想法,我找到了这个电流传感器模块ACS712。我知道这可能会使从门户到对讲机的电缆“绕开”,并导致对讲机振铃,这样当该电缆通电时(有人打电话),我能检测到这种变化吗? 在我看来,这比声音检测更精确,更简单。
10 esp8266 

1
通过DHCP分配IP创建专用子网
如果有问题,我正在使用esp8266 wifi模块。我打算做的是将模块连接到我的家庭路由器,并让其他模块连接到该模块并形成第二层,而其他模块可以连接到该第二层形成第三层,并且网络扩展,基本上就是一棵树像网络拓扑。连接到家庭路由器的第一个模块将使其独立于家庭路由器ip范围而成为自己的私有IP范围,我们将对此进行进一步子网划分。所以我们从开始: 第一个模块为10.0.0.0/8。它需要IP 10.1.0.0 它通过DHCP提供10.2.1.0/16、10.3.1.0/16 ... 10.254.0.0/16 10.2.1.0/16可以通过DHCP进一步提供10.2.2.1/24、10.2.3.0/24等,直到10.2.254.0/24 10.2.2.1/24可以通过10.2.2.254/32 DHCP提供10.2.2.2/32 每个模块都运行自己的DHCP服务器。 现在的问题是,当一个模块收到另一个模块的分配IP地址的请求时,DHCP服务器应该做出响应。但是问题是DHCP无法以我所描述的方式分配IP地址,而且我似乎只能将其设置为连续的ip-blocks。 例如192.168.1.0到192.168.254.254可以,但是我需要192.168.1.0到192.168.254.0 有什么方法可以让DHCP服务器按照我想要的方式分配IP地址吗?

1
如何在Arduino上使用MQTT,使用串行com将AT命令发送到ESP8266
我刚刚开始研究MQTT协议。 情况 目前,在我的大学项目中,我使用Arduino作为主要MCU,并在其中做所有工作并使用Serial Comm。发送AT指令到esp8266(用于HTTP请求,在服务器上运行脚本等)。我基本上需要在网页(由本地服务器托管)上推送一些数据(来自Arduino)。我搜索并找到了关于MQTT协议的信息,该协议可以在客户端上发布和订阅数据(正是我想要的)。但是我发现的大多数教程要么完全在Arduino(带wifi屏蔽)上,要么完全在esp8266上。 我想知道的是,是否有可能将MQTT与当前配置一起使用?也就是说,使用Arduino通过串行通讯来完成所有工作。仅通过MQTT上的AT命令发布数据。 这里提到有关我的项目的其他信息:对智能家居系统中使用的技术感到困惑
10 mqtt  esp8266 

2
ESP8266不带网页
是否可以在不创建Web服务器的情况下将数据发送到ESP8266? 我正在通过Web服务器访问ESP8266的GPIO引脚。现在,我想为此制作一个Android应用程序。因此,我想在不使用Web服务器的情况下将数据发送到8266,这可能吗?
9 wifi  esp8266 

1
通过MQTT通过Raspberry Pi控制ESP8266
我正在从事家庭自动化项目。我项目的基本目标是控制位于不同位置的继电器和其他传感器。我已经将Raspberry Pi设置为MQTT代理。Mosquitto运行良好。现在,我想做的是触发与esp8266(GPIO2)连线的继电器。这是我的Python Web服务器代码: import paho.mqtt.client as mqtt from flask import Flask, render_template, request app = Flask(__name__) mqttc=mqtt.Client() mqttc.connect("localhost",1883,60) mqttc.loop_start() # Create a dictionary called pins to store the pin number, name, and pin state: pins = { 2 : {'name' : 'GPIO 2', 'board' : 'esp8266', 'topic' : 'esp8266/2', 'state' …
9 mqtt  esp8266 

1
无法刷新ESP8266最新固件,显示“快速刷新错误”和“包头无效('')”
我不知道如何刷新http://www.electrodragon.com/w/ESP8266_AT-Command_firmware上的固件。我正在使用ESP8266 Download tool v3.4.4。当我在下载路径中添加固件时,它会一直持续到固定百分比(大部分为77或99 ..)并给出错误消息Invalid head of packet, FAST FLASHING ERROR。还有一件事是,我正在使用的教程在下载工具中填充了许多下载路径条目,而我的只是空白。表示将合并的文件上传到0x0000。我尝试上传V1.54...文件的内容(两个文件),但仍然收到类似的错误。 因此,任何人都可以指导我完成此任务,因为我是新手。请在评论中提及任何其他信息。 聚苯乙烯 我很确定电源已经足够,因为我一直在使用esp8266和旧固件平稳运行。我还连接了一个200uF电容器b / w gnd和vcc(来自FTDI的3.3v)。 我已仔细检查了连接。(是的,GPIO0已接地)。 我成功地刷新了较早的版本,ai-thinker-v1.1.1.bin但是当我将其连接到arduino IDE串行监视器时,它开始发出无休止的乱码:P。
9 esp8266 

1
这种架构可行且灵活吗?
确保我的项目确实可行时,我遇到了麻烦。 我要存档的内容:通过互联网控制我的Senseo咖啡机。归结为简单地控制2个按钮。 第一个简单的解决方案: 在我的Raspberry Pi上设置NodeJS服务器。 我将Raspberry GPIO插入2个晶体管,以控制咖啡机按钮 我可以直接在Javascript中控制Raspberry GPIO。例如,调用http://myraspberrypi.com/makemeacoffee激活GPIO,激活按钮,咖啡流 但是:我不想将树莓插入咖啡机(出于其他目的,我需要使用Pi),并且我认为将Web服务器与控制器本身分离是一个好主意。如果明天我想监控自己浴室的温度,或者控制第二台咖啡机(使用另一台ESP8266),我希望能够做到这一点而无需重新思考整个过程。 我需要将带有NodeMCU的ESP8266存档,以将其用作Wi-Fi无头控制器(请参阅此链接)。Raspberry GPIO不再使用(这就是重点)。Pi上只有一个NodeJS Web服务器。 这是该架构的快速草图: 让我澄清一下主要组件的作用: Raspberry Pi:托管NodeJS Web服务器 NodeJS Web服务器:将网页提供给最终用户。基本上是一个带有“煮一杯咖啡”按钮的页面。在幕后,我们需要“推动”加热水按钮,等待30秒,然后“推动”咖啡按钮。Web服务器通过将HTTP请求发送到ESP8266(通过Wi-Fi)来实现。NodeJS服务器还进行日志记录和数据分析(您今年喝了几杯咖啡?) ESP8266:使用NodeMCU。它的GPIO插入控制咖啡机按钮的晶体管。我不在乎如何为ESP8266供电。它运行一个Web服务器来侦听Raspberry Pi的请求并相应地对GPIO进行操作。 这种架构可行吗?这种架构灵活吗? 编辑,以回答Sean Houlihane(破坏者,以使职位相对较短): 我对此不是100%的确定,但是晶体管似乎就足够了。咖啡机开关工作在低电压(3.3V)上,ESP8266不会与咖啡机共用地线。 关于温度感应和水位控制,Senseo咖啡机内置了此功能。典型用途:按中心按钮启动加热过程,按“单”或“双”按钮选择咖啡尺寸。一旦加热过程结束,咖啡就开始流动。如果没有足够的水,则结束并且LED闪烁。 我期望的进度: 1.0版将是“只要运行咖啡机,我确定它已经准备就绪”。我控制单个杯子按钮和加热按钮。 2.0版将是“运行机器并给我反馈”,我将另一个ESP8266插入反馈LED指示灯(以便我可以知道它何时变热以及何时没水),还有一个ESP8266可以缩放到一定比例,以确保在运行咖啡机之前先准备好杯子。当咖啡机运行时,我可能还会添加一条警报,告诉用户更换咖啡盒。 3.0版将通过某种开关跟踪机制的开启,从而找到一种方法来判断容器是否已更改。但这目前不在我的项目范围内。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.