我正在尝试在Cactus Micro Rev2开发板上使用PubNub库。这款主板基本上是一款带有ESP8266 WiFi芯片的Arduino Lillypad USB。
目标:使用PubNub使用ESP8266 WiFi接口订阅频道。
PubNub库表明它设计用于以太网或WiFi屏蔽。
Cactus Micro使用espduino库,使用SLIP流与WiFi通信。 (我想)。
如何利用espduino库而不是以太网或WiFi屏蔽库?
上下文: PubNub Library
/* By default, the PubNub library is built to work with the Ethernet
* shield. WiFi shield support can be enabled by commenting the
* following line and commenting out the line after that. Refer
* to the PubNubJsonWifi sketch for a complete example. */
//#define PubNub_Ethernet
#define PubNub_WiFi
#if defined(PubNub_Ethernet)
#include <Ethernet.h>
#define PubNub_BASE_CLIENT EthernetClient
#elif defined(PubNub_WiFi)
#include <WiFi.h>
#define PubNub_BASE_CLIENT WiFiClient
要在Arduino代码中使用带有MQTT的espduino库,我会执行以下操作,因为espduino.h具有MQTT类。
// ESP8266 WiFi
#include <espduino.h>
#define PIN_ENABLE_ESP 13
#define SSID ".interwebs"
#define PASS "meraki81"
boolean wifiConnected = false;
ESP esp(&Serial1, &Serial, PIN_ENABLE_ESP);
// MQTT
#include <mqtt.h>
MQTT mqtt(&esp);
... snip
mqtt.connect("myBroker", 1883, false);
我希望/希望做这样的事情来使用PubNub
PUBNUB pubnub(&esp);
... snip
pubnub.publish("news", "OLED board online");
但这显然不起作用。
预期的技术是使用wifi屏蔽库中的WiFiClient类:
// PubNub
WiFiClient *client;
client = PubNub.publish("news", "OLED board online");
任何可以提供帮助的建议,变通方法,图书馆?我更熟悉NodeJS,然后是C / C ++,所以我只是想绕过它。
谢谢!