Monday, June 8, 2015

Publishing MQTT every 30 Sec and Sleep ( NodeMCU v2)

image
Connect GPIO16 ( D0) and RST Pin for MCu to wakeup from deep sleep after specified Time.

 

image 

 

After the Mqtt is sent , Put sleep in mqttPublishedCb ( callback ) .

system_deep_sleep(30000000) puts mcu to sleep for 30s.

If you want that system should not wakeup (no wakeup until rst pin to low )

system_deep_sleep(0)

=================================

load ...
WIFI_INIT
MQTT_InitConnection
MQTT_InitClient
mode : sta(18:fe:34:a1:c3:5f)
add if0
STATION_IDLE
scandone
STATION_IDLE
add 0
aid 6
pm open phy_2,type:2 0 0
cnt

connected with SSID, channel 6
dhcp client start...
STATION_IDLE
ip:192.168.43.35,mask:255.255.255.0,gw:192.168.43.1

MQTT Connecting.....

MQTT Connecting 2.....
TCP: Connect to ip  192.168.43.206:1883
espconn_connect = 0
MQTT: Connected to broker 192.168.43.206:1883
MQTT: Sending, type: 1, id: 0000
TCP: Sent
TCP: data received 4 bytes
MQTT: Connected to 192.168.43.206:1883
MQTT: Connected
MQTT: queuing publish, length: 23, queue size(0/2048)
MQTT: Sending, type: 3, id: 0000
TCP: Sent
MQTT: Published
rm match
pm close 7 0 0/1324668
del if0
usl
sul 0 0
TCP: Reconnect to 192.168.43.206:1883
deep sleep 30s

=========================

Deep Sleep Option

  1. deep_sleep_set_option(0): Radio calibration after deep-sleep wake up depends
    on init data byte 108.
  2. deep_sleep_set_option(1): Radio calibration is done after deep-sleep wake
    up; this increases the current consumption.
  3. deep_sleep_set_option(2): No radio calibration after deep-sleep wake up;
    this reduces the current consumption.
  4. deep_sleep_set_option(4): Disable RF after deep-sleep wake up, just like
    modem sleep; this has the least current consumption; the device is not able
    to transmit or receive data after wake up.

I tried No RF calibration but it dosent work. Probably some bit has to be set in esp_data bin file….need to explore.

1 comment:

  1. Hi Alok,

    Is it possible to make that nodemcu stays alive all the time? I don't need that function deep sleep :) If yes let me know that info would be grateful! Thank you, Kes.

    ReplyDelete

Featured Post

XDP - Getting Started with XDP (Linux)