我想获得arduino-esp8266(https://github.com/esp8266/Arduino)的时间戳.
但我不知道如何做到这一点.
我想我们必须从互联网上得到时间,因为ESP8266没有时钟.我们是否只需要一次或每次需要时间戳时都这样做?
我已经通过wifi连接到互联网.
我已经搜索了这个问题的解决方案很长一段时间没有运气.
我希望NodeMCU能够寻找一个开放的wifi网络并连接到它.只要连接可用,就使用该连接 - 当连接断开时,开始寻找新的开放网络.
我住在芬兰,几乎每个角落都有免费的开放式WiFi.我打算创建可穿戴/移动的东西,可用时使用WiFi.
我也只是从编程开始,用C语言编写基础知识并使用Arduino IDE,所以这里没有Lua语言经验.
我知道WiFi.scanNetworks()可以区分安全和不安全的SSID,但我还没有发现如何在Arduino IDE中使用它对我有利.
我有一块带有运行Micropython固件v1.8.7的ESP8266芯片的电路板。我的要求是通过大学Wi-Fi使用WebREPL,后者使用WPA2 Enterprise EAP-MSCHAPv2身份验证。到目前为止,我的Google-fu告诉我Arduino用户已经可以连接到WPA2 Enterprise EAP-TLS(基于证书的身份验证)(链接),但不能连接(SSID,用户名,密码)网络。
到目前为止,我所看到的关于该主题的所有线索似乎都是最迟于2016年中开始的,所以我想知道自那时以来是否有人能够弄清楚该怎么做。我以前从未涉足网络相关的东西(我也不是一个出色的程序员),所以上面所有的大词对我来说都是很新的。因此,我有以下问题:
感谢您提供的任何帮助。如果我没有提供任何相关信息,请告诉我,我将对其进行编辑。
编辑:@MaximilianGerhardt这是在WPA2 Personal上对我有效的方法:
import network
wlan = network.WLAN(network.STA_IF)
wlan.active(True)
wlan.connect('ssid','pwd')
wlan.ifconfig()
import webrepl
webrepl.start()
Run Code Online (Sandbox Code Playgroud)
在WPA2 Enterprise上,我曾希望更改此行是可行的,但没有任何乐趣:
wlan.connect('ssid',auth=WPA2_ENT,'user','pwd')
Run Code Online (Sandbox Code Playgroud)
谢谢,我将研究Espressif Non-OS SDK V2.0.0,看看是否可以使它工作。
我尝试了几个引脚配置来连接 nodemcu 和 micro sd 卡。但是,我没有成功连接到 SD 卡的运气。我关注了esp8266 论坛和其他一些解决方案!我需要你的建议:)
我试图让我的ESP8266嗅探附近的设备,然后通过HTTP请求发布它们.目的是记录我的室友和我在家时的情况.然后在将来,如果我们在家或不在家,会触发某些任务,例如开灯/关灯.我根本不关心数据包内容只是mac地址.
所以我发现了这个脚本,打印出kalanda创建的附近设备的mac地址:esp8266-sniffer.以及这个HTTP发布脚本ESP8266 http获取请求.
我试图将这两者结合起来并在回调函数中使ESP发送找到的数据,但看起来不像ESP建立wifi连接.
我尝试使用不同的WIFI模式:STATION_MODE,SOFTAP_MODE,STATIONAP_MODE.它们都没有同时用于嗅探和http请求.我知道STATIONAP_MODE确实有一些缺陷.我发现它必须以某种方式切换,但不幸的是我不是ESP专家,不知道如何做到这一点.
这是我的代码(在我这边的任何垃圾编码srry):
#include <ESP8266WiFi.h> // added this
#include <ESP8266HTTPClient.h> // added this
const char* ssid = "**********"; // Wifi SSID
const char* password = "**********"; // Wifi Password
String main_url = "http://*********.php?"; // Website url to post the information
String temp_url = ""; // Url with information
extern "C" {
#include <user_interface.h>
}
#define DATA_LENGTH 112
#define TYPE_MANAGEMENT 0x00
#define TYPE_CONTROL 0x01
#define TYPE_DATA 0x02
#define SUBTYPE_PROBE_REQUEST 0x04
struct RxControl {
signed …Run Code Online (Sandbox Code Playgroud) 我有一个Raspberry Pi作为WiFi热点,一个Arduino Uno试图使用ESP8266模块从中获取数据。
这是我的Arduino接收器代码:
#include <SoftwareSerial.h>
#include <SerialESP8266wifi.h>
#define sw_serial_rx_pin 4 // Connect this pin to TX on the esp8266
#define sw_serial_tx_pin 6 // Connect this pin to RX on the esp8266
#define esp8266_reset_pin 5 // Connect this pin to CH_PD on the esp8266, not reset. (let reset be unconnected)
SoftwareSerial swSerial(sw_serial_rx_pin, sw_serial_tx_pin);
// the last parameter sets the local echo option for the ESP8266 module..
SerialESP8266wifi wifi(swSerial, swSerial, esp8266_reset_pin, Serial);//adding Serial enabled local echo and wifi debug
String inputString; …Run Code Online (Sandbox Code Playgroud) 我正在尝试通过unwiredlabs获取 ESP8266 的位置。我接着做了这个介绍。这是我的arduino代码:
#include <ESP8266HTTPClient.h>
#include <ArduinoJson.h>
#include "ESP8266WiFi.h"
char myssid[] = "Your wifi/hotspot name";
char mypass[] = "Your password";
const char* Host = "www.unwiredlabs.com";
String endpoint = "/v2/process.php";
String token = "d99cccda52ec0b";
String jsonString = "{\n";
double latitude = 0.0;
double longitude = 0.0;
double accuracy = 0.0;
void setup(){
Serial.begin(115200);
// Set WiFi to station mode and disconnect from an AP if it was previously connected
WiFi.mode(WIFI_STA);
WiFi.disconnect();
Serial.println("Setup done");
// We start by connecting …Run Code Online (Sandbox Code Playgroud) 我可以从浏览器输入此URL,输入凭据后,它会成功调用我的API http://172.16.0.40/rest/vars/set/1/12/666。
我正在尝试使用HTTPClient从ESP8266进行此操作。我的凭据是username:password,我使用了一个在线转换实用程序来获取dXNlcm5hbWU6cGFzc3dvcmQ =。
当执行时,以下返回错误701(不知道那是什么)。
HTTPClient http;
http.begin("172.16.0.40", 80, "/");
http.addHeader("Content-Type", "text/plain");
http.addHeader("Authorization", "dXNlcm5hbWU6cGFzc3dvcmQ=");
auto httpCode = http.POST("rest/vars/set/1/12/999");
Run Code Online (Sandbox Code Playgroud)
如果我注释掉Authorization标头,则会得到401,这是未经授权的访问。我究竟做错了什么?
我将我的 esp8266 作为接入点,以便移动设备可以连接到它。想要获取连接到它的设备的 macAddress。我怎么能得到它?
我有一个WeMos D1 Mini。以下是董事会信息:
Arduino: 1.8.9 (Windows Store 1.8.21.0) (Windows 10), Board: "LOLIN(WEMOS) D1 R2 & mini, 80 MHz, Flash, Legacy (new can return nullptr), All SSL ciphers (most compatible), 4MB (FS:2MB OTA:~1019KB), v2 Lower Memory, Disabled, None, Only Sketch, 115200"
Run Code Online (Sandbox Code Playgroud)
我正在尝试上传眨眼程序,但出现以下错误:
Executable segment sizes:
IROM : 228360 - code in flash (default or ICACHE_FLASH_ATTR)
IRAM : 26564 / 32768 - code in IRAM (ICACHE_RAM_ATTR, ISRs...)
DATA : 1236 ) - initialized variables (global, static) in RAM/HEAP
RODATA : …Run Code Online (Sandbox Code Playgroud) arduino-esp8266 ×10
esp8266 ×7
iot ×2
nodemcu ×2
access-point ×1
arduino ×1
arduino-ide ×1
arduino-uno ×1
automation ×1
http-post ×1
httprequest ×1
https ×1
micropython ×1
ntp ×1
python ×1
sd-card ×1
sniffing ×1
timestamp ×1