The project uses ultrasonic sensor and ESP8266 to monitor tank water level at any point of time.
The monitoring aspect has 2 objectives:
To check water level at any given point (achieved with the help of cloud connectivity through Thingspeak)
To send an alert message when tank is filled or empty (achieved with the help of Notify My Android app)
DHT11 based remote temparature Monitor. Uses ESP8266 and DHT11 to monitor temperature remotely using a WiFi connection and Thingspeak and NMA application.
Presentation of the ESP8266 WiFi module created for the course Pervasive Systems 2016 of the Master Degree in Engineering in Computer Science (DIAG, University of Rome "La Sapienza")
Pervasive Systems 2016 Web Site: http://ichatz.me/index.php/Site/PervasiveSystems2016
LinkedIn Profile: https://www.linkedin.com/in/biagio-botticelli-444b87105?trk=hp-identity-name
GitHub Repository: https://github.com/biagiobotticelli/ESP8266
My slide at the Milan Codemotion 2015, a session called "An Adventure with ESP8266 and IOT" about using the esp8266 with NodeMCU, mosquitto, nodejs and an accelerometer. All the sourcecode will be available at http://pestohacks.blogspot.com soon
DHT11 based remote temparature Monitor. Uses ESP8266 and DHT11 to monitor temperature remotely using a WiFi connection and Thingspeak and NMA application.
Presentation of the ESP8266 WiFi module created for the course Pervasive Systems 2016 of the Master Degree in Engineering in Computer Science (DIAG, University of Rome "La Sapienza")
Pervasive Systems 2016 Web Site: http://ichatz.me/index.php/Site/PervasiveSystems2016
LinkedIn Profile: https://www.linkedin.com/in/biagio-botticelli-444b87105?trk=hp-identity-name
GitHub Repository: https://github.com/biagiobotticelli/ESP8266
My slide at the Milan Codemotion 2015, a session called "An Adventure with ESP8266 and IOT" about using the esp8266 with NodeMCU, mosquitto, nodejs and an accelerometer. All the sourcecode will be available at http://pestohacks.blogspot.com soon
Minha palestra no TDC-Porto Alegre sobre a utilização do Python como a linguagem de programação para o ESP8266, demonstrando desde o processo de gravação do firmware, conexão com o dispositivo e exemplos de programas.
lesson1 - Getting Started with ESP8266Elaf A.Saeed
lesson1 - Getting Started with ESP8266
1- What is NodeMCU.
2- NodeMCU Instillation in Arduino IDE.
3- Simple Projects with NodeMCU (Sensors & Actuators)
4- NodeMCU with Communication protocols.
5- Connection NodeMCU with Wi-Fi.
6- Use NodeMCU as Clients & Server.
7- Different Platform uses with IOT application.
By AWS & Espressif
Learn about Amazon FreeRTOS and the Espressif Systems’ ESP32-DevKitC. Determine how this fits into an IoT solution and look at examples of using cloud services in IoT microcontroller-based devices.
Lightning talk from the 24 March 2016 FW Dev meetup.
http://www.meetup.com/FW-Dev/
This talk will give a brief overview of the ESP8266, show how easy they are to get started with and discuss interest in holding a Saturday workshop
lesson2 - Nodemcu course - NodeMCU dev BoardElaf A.Saeed
1- What is NodeMCU.
2- NodeMCU Instillation in Arduino IDE.
3- Simple Projects with NodeMCU (Sensors & Actuators)
4- NodeMCU with Communication protocols.
5- Connection NodeMCU with Wi-Fi.
6- Use NodeMCU as Clients & Server.
7- Different Platform uses with IOT application.
Introduction to ESP32 Programming [Road to RIoT 2017]Alwin Arrasyid
Introduction to ESP32 programming using official development framework, ESP-IDF and Arduino for ESP32.
Every demo code is published in this github repository:
https://github.com/alwint3r/RTR_Surabaya2017
Designed keeping in mind the latest technology on a single board. It is really easy to design, experiment with, and test circuitry without soldering. Students can explore a wide variety of electronic concepts simply by placing components on to the breadboard. It is very useful in electronics laboratories for performing IoT experiments. It is also useful to build and test circuits as well as making projects related to IoT integrating with the cloud platform. visit https://researchdesignlab.com/esp32-development-board-trainer-kit.html for more details
Minha palestra no TDC-Porto Alegre sobre a utilização do Python como a linguagem de programação para o ESP8266, demonstrando desde o processo de gravação do firmware, conexão com o dispositivo e exemplos de programas.
lesson1 - Getting Started with ESP8266Elaf A.Saeed
lesson1 - Getting Started with ESP8266
1- What is NodeMCU.
2- NodeMCU Instillation in Arduino IDE.
3- Simple Projects with NodeMCU (Sensors & Actuators)
4- NodeMCU with Communication protocols.
5- Connection NodeMCU with Wi-Fi.
6- Use NodeMCU as Clients & Server.
7- Different Platform uses with IOT application.
By AWS & Espressif
Learn about Amazon FreeRTOS and the Espressif Systems’ ESP32-DevKitC. Determine how this fits into an IoT solution and look at examples of using cloud services in IoT microcontroller-based devices.
Lightning talk from the 24 March 2016 FW Dev meetup.
http://www.meetup.com/FW-Dev/
This talk will give a brief overview of the ESP8266, show how easy they are to get started with and discuss interest in holding a Saturday workshop
lesson2 - Nodemcu course - NodeMCU dev BoardElaf A.Saeed
1- What is NodeMCU.
2- NodeMCU Instillation in Arduino IDE.
3- Simple Projects with NodeMCU (Sensors & Actuators)
4- NodeMCU with Communication protocols.
5- Connection NodeMCU with Wi-Fi.
6- Use NodeMCU as Clients & Server.
7- Different Platform uses with IOT application.
Introduction to ESP32 Programming [Road to RIoT 2017]Alwin Arrasyid
Introduction to ESP32 programming using official development framework, ESP-IDF and Arduino for ESP32.
Every demo code is published in this github repository:
https://github.com/alwint3r/RTR_Surabaya2017
Designed keeping in mind the latest technology on a single board. It is really easy to design, experiment with, and test circuitry without soldering. Students can explore a wide variety of electronic concepts simply by placing components on to the breadboard. It is very useful in electronics laboratories for performing IoT experiments. It is also useful to build and test circuits as well as making projects related to IoT integrating with the cloud platform. visit https://researchdesignlab.com/esp32-development-board-trainer-kit.html for more details
WATER LEVEL MEASURE AND CONTROL WITH ULTRASONIK SENSOR AND ARDUINO UNOSri Adhiyani Sunaryo
This is a water level measure and control using ultrasonic sensor and arduino uno. this thing can measure the distance between sensor and the closest thing to it. We've done some improvisation by using it as a water control and measure in one package.
Assignmet 2 selectedtopic Topic in Computer EngineerAey Unthika
Create simple IoT that connect to web service on cloud
วัดอุณหภูมิโดยใช้ dht11 ส่งค่าเวลาและอุณภูมิผ่าน Webservice ซึ่งจะมีฟังก์ชันส่งช่วงเวลาปัจจุบัน หรือช่วงหนึ่งถึงอีกช่วงหนึ่ง แล้วคืนค่าเป็นอุณหภูมิกับเวลาในช่วงเวลานั้นๆ
Many of the people have a phobia of darkness, so to assist them in such situation, we have explained a simple circuit. It will automatically turn on street light in the way of LEDs or bulb coupled with relay. Working this circuit is very much easy and also the power consumed by the circuit is very low because of the very few components used in the circuit.
Automatic Light Control using LDR and PIR SensorZiauddin Ridoy
The main purpose of designing this project is to prevent loss of current unnecessarily during day time.
During night the bulb will automatically glow .
COMPONENTS REQUIRED :
RELAY
LIGHT EMITTING DIODE (LED)
LIGHT DEPENDENT RESISTOR (LDR)
PASSIVE INFRARED SENSOR (PIR)
RESISTOR (1k ohm)
DIODE
TRANSISTOR (BC547)
BATTERY (POWER SOURCE)
Presented by Andy Sutton, Principal Network Architect - Chief Architect’s Office, TSO, BT at IET "Towards 5G Mobile Technology – Vision to Reality" seminar on 25th Jan 2017
Shared with permission
3GPP Standards for the Internet-of-ThingsEiko Seidel
Presenation by 3GPP RAN3 Chairman - Philippe Reininger - at the IoT Business & Technologies Congress (November 30, in Singapore). Main topics are eMTC, NB-IOT and EC-GSM-IoT as completed in 3GPP Release 13 and enhanced in Release 14
Stanley A Meyer Legacy Back up Secret Docs Save all Protect Spread print and give to schools NEVER STOP!!!!!!! Join Support here https://www.patreon.com/securesupplies/shop
ESAT-ISP Programmer is a multipurpose development tool for Physical Computing and ISP Programming for Atmel AVR 8 bit devices.
ESAT-ISP is compatible with Arduino-UNO board.
The main aim of this project is to avoid the accident and death in the gas leakage explosion in house, hotels and industries. Domestically we use natural gas and it is very useful for burning purpose. If this gas is leaked in our kitchens, hotels or factories and not sensed in time, it may lead to fatal disaster, and may cause human and material loss. For this purpose we have developed “GAS LEAKAGE DETECTION SYSTEM”.
ESP12.OLED_V1 Datasheet EN - Universal ESP8266 controller board with 0.96″ I2...IoTdevices
The ESP12.OLED_V1 board is a ready-to-use 32-bit universal controller with a graphical display and interfaces for connecting digital and analog sensors and actuators.
This product is compatible with many modern platforms such as Arduino IDE, Platformio, ESPHome, MicroPython, Tasmota, NodeMCU, and many others. The user can freely choose the programming language and development
environment: C/C++, Python, YAML, JS, Berry, Lua, and others.
The board is universal and is used as a master controller. The ESP12.OLED is equipped with an ESP8266-12F, 32-bit, 60/180 MHz from
Espressif Systems. The board layout provides the following functions:
- Data input/output using all available GPIOs of the ESP8266;
- Data output to the built-in RGB LED connected to the GPIO;
- The module is equipped with a built-in monochrome 0.96" OLED display with
SSD1306 controller, 128x64 pixels, connected via I2C;
- Access to the I2C serial bus functions in Master device mode to connect any
external devices supporting the I2C specification;
- Since all ports of the ESP8266 are on the board, the user can organize the rest
of the interfaces and protocols supported by the ESP8266 as needed, such as
I2C, PWM, SPI, UART, 1-Wire, 1-channel unipolar 10-bit ADC, ISR, True Random Number Generator, etc.
Designed 2020-2022 by IoT-devices LLC in Kyiv, Ukraine.
https://iot-devices.com.ua/en/
https://allmylinks.com/iot-devices
Republic of IoT 2018 - ESPectro32 and NB-IoT WorkshopAlwin Arrasyid
Getting started with ESPectro32 v2 boards and NB-IoT Backpack, brand new NB-IoT enabler product powered with U-blox's SARA R410M 02B LTE-M and NB-IoT powered module that supports TCP/IP and UDP/IP protocols. This workshop introduces the participant to ESPectro32 as "things" in IoT, and the concept of LPWA network and NB-IoT as one of the LPWA network technology.
The presentation was delivered by Roman Chobik (Software Engineer, Consultant, GlobalLogic)
at GlobalLogic Lviv Embedded TechTalk #2 on May 23, 2018.
Roman described the automated stand assembled by BSP team on automotive project. The stand is intended for remote control of various electronic boards, as well as for automated testing of images collected using the Yocto system. Management and testing is carried out with Jenkins.
In this presentation, we highlight the details on doing IoT home automation with openHAB on pcDuino3B, and use Bluetooth BLE 4.0 technology to talk to sensors
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
Generating a custom Ruby SDK for your web service or Rails API using Smithyg2nightmarescribd
Have you ever wanted a Ruby client API to communicate with your web service? Smithy is a protocol-agnostic language for defining services and SDKs. Smithy Ruby is an implementation of Smithy that generates a Ruby SDK using a Smithy model. In this talk, we will explore Smithy and Smithy Ruby to learn how to generate custom feature-rich SDKs that can communicate with any web service, such as a Rails JSON API.
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
After immersing yourself in the blue book and its red counterpart, attending DDD-focused conferences, and applying tactical patterns, you're left with a crucial question: How do I ensure my design is effective? Tactical patterns within Domain-Driven Design (DDD) serve as guiding principles for creating clear and manageable domain models. However, achieving success with these patterns requires additional guidance. Interestingly, we've observed that a set of constraints initially designed for training purposes remarkably aligns with effective pattern implementation, offering a more ‘mechanical’ approach. Let's explore together how Object Calisthenics can elevate the design of your tactical DDD patterns, offering concrete help for those venturing into DDD for the first time!
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
2. Summary
• The project uses ultrasonic sensor and ESP8266 to monitor tank water
level at any point of time.
• The monitoring aspect has 2 objectives:
• To check water level at any given point (achieved with the help of cloud connectivity through Thingspeak)
• To send an alert message when tank is filled or empty (achieved with the help of Notify My Android app)
3. Things needed
6Pin USB 2.0 to TTL
UART Module Serial
Converter
HARDWARE
ESP8266 – 01
Microcontroller with
WiFi capability
HCSR-04
Ultrasonic Sensor
Multi Power Supply
(5V and 3.3V)
Jumper wires Male to
Male
Jumper wires Female
to Female
Jumper wires Male to
Female
12V adaptor (1Amp)
Bread Board
Laptop
Breadboard Adapters
(optional)
WiFi connection
Any android mobile
4. Things needed
SOFTWARE
NodeMCU firmware (free)
Scripting language (free)
Account on Thingspeak (free)
Account on NMA (free)
Premium one at $5
Windows (any other
also would do)
5. Costing
• ESP8266 Rs300
• UART Rs180
• HCSR 04 Rs180
• Multipower supply Rs90
• 12V adapter Rs100
• Jumper wires(12) Rs30
• Bread board Rs70
• Premium NMA membership Rs350
TOTAL COST ~Rs 1400
Note: The price quoted is as per what I got on SP road in Bangalore,India. It may be cheaper online/offline at other places so cost can come down further.
Assumptions:
1. WiFi connection already exists
2. Laptop with windows is available
3. Android Mobile phone available
7. 1.ESP8266
microcontroller from Chinese manufacturer Espressif that includes Wi-Fi capability
Cadence Tensilica LX106 microcontroller
• Operates at 3.3V
• Firmware upgrade is needed as first step after purchase
• GPIO 0 should be grounded for firmware upgrade mode
• RST and GPIO2 to be left open
• Connect RX of ESP8266 to TX of FT232RL
• Connect TX of ESP8266 to RX of FT232RL
• Supply external voltage of 3.3V to VCC and CH_PD
• GND to be connected to ground (FT232RL and ESP8266 ground should be
common)
Once the connections are done. RED LED on ESP8266 should be on. BLUE LED
will flash momentarily.
PIN PIN Description
VCC 3.3V
RST Reset (low active)
CH_PD Chip Power down (low active)
TXD Transmit data (3.3V level)
RXD Receive data (3.3V level)
GPIO 0 General Purpose Input / Output
GPIO 2 General Purpose Input / Output
GND Ground
Steps for firmware upgrade: http://www.whatimade.today/loading-the-nodemcu-firmware-on-the-esp8266-windows-guide/
8. 2. Lua
powerful, fast, lightweight, embeddable scripting language
What is Lua?
Lua is a powerful, fast, lightweight, embeddable scripting language.
Lua combines simple procedural syntax with powerful data description constructs based on associative arrays and
extensible semantics. Lua is dynamically typed, runs by interpreting bytecode for a register-based virtual machine, and has
automatic memory management with incremental garbage collection, making it ideal for configuration, scripting, and rapid
prototyping.
Where does Lua come from?
Lua is designed, implemented, and maintained by a team at PUC-Rio, the Pontifical Catholic University of Rio de Janeiro in
Brazil. Lua was born and raised in Tecgraf, formerly the Computer Graphics Technology Group of PUC-Rio in 1993. Lua is
now housed at LabLua, a laboratory of the Department of Computer Science of PUC-Rio.
What's in a name?
"Lua" (pronounced LOO-ah) means "Moon" in Portuguese. As such, it is neither an acronym nor an abbreviation, but a noun.
More specifically, "Lua" is a name, the name of the Earth's moon and the name of the language. Like most names, it should
be written in lower case with an initial capital, that is, "Lua".
9. 3. NodeMCU firmware upgrade
Lua based firmware for wifi-soc esp8266
• http://benlo.com/esp8266/esp8266QuickStart.html
• Plug the USB to serial adapter into your PC. Most adapters are automatically recognized by
Windows 7 and 8. Users of XP or older versions of Windows may need a driver which should be
supplied by the manufacturer of the USB adapter. The adapter will appear as a new COM port
on your system. Check the Device Manager if necessary.
• Run ESP8266Flasher.exe
• NodeMcuFlasher
• If you only have one COM device, the port will appear automatically. If you have more than one,
select the correct one from the drop down menu.
• The flasher program comes with default NodeMCU firmware in memory. This is unlikely to be
the latest version, but to get started quickly, use the default internal image. Later, you can
download the latest firmware, then select the [Config] tab and choose the new .bin file. Select
the 0x7C000 default and 0x7E000 blank sections. Uncheck the box for the 0x10000 IROM
section.
• Click on Flash(E) to start the programming process.
• https://www.youtube.com/watch?v=Gh_pgqjfeQc
• https://github.com/nodemcu/nodemcu-firmware
• https://bigdanzblog.wordpress.com/2015/04/14/installing-nodemcu-lua-firmware-on-esp8266-wifi-module/
• http://www.roboremo.com/flashing-nodemcu-firmware-to-esp8266.html
Videos:
10. Sketch for ESP8266 firmware upgrade
ESP 8266-01FT232RL
TXD
TXD
RXD
RXD
GND GND
GPIO 0
GPIO 2
+3.3V
Multi-Power
Supply
VCC CH_PD
GND
USBconnectiontoLaptop
3 pins used 7 pins used
Note: use a bread board to get connections in place.
A
11. 4.HC SR04 Ultrasonic Sensor
0 of ESP8266
2 of ESP8266
along with ESP8266 and FT232 ground pins
External power supply
• The sensor emits a short ultrasonic burst and then
"listens" for the echo.
• Under control of a host microcontroller (trigger pulse), the
sensor emits a short 40 kHz (ultrasonic) burst.
• This burst travels through the air at about 1130 feet per
second, hits an object and then bounces back to the
sensor.
• The sensor provides an output pulse to the host that will
terminate when the echo is detected, hence the width of
this pulse corresponds to the distance to the target.
Basic working principle:
12. 5. ThingSpeak
The open data cloud platform for the Internet of Things
ThingSpeak API Quick Start
1. Sign Up for a ThingSpeak account
2. Go to Channels, and click New Channel
3. Complete the channel settings, and click Save Channel.
4. Update your Channel via URL:
5. https://api.thingspeak.com/update?api_key=YOUR_CHANN
EL_API_KEY&field1=7
6. View your Channel feed:
7. https://api.thingspeak.com/channels/YOUR_CHANNEL_ID/f
eeds.json
Video Link: https://www.youtube.com/watch?v=I_Jm6Q4z7ig
13. 6. Notify My Android(NMA)
platform that allows you to deliver push notifications from virtually any application to your Android device
NMA API Quick guide
1. Sign Up for a NMA account
2. Go to Manage API Keys and Generate New Key
3. Key details will appear in Key Description field.
4. Update NMA alerts via URL:
conn:send("GET /publicapi/notify?apikey=YOUR API KEY
&application=ESP8266&event=TANK_EMPTY&description=text
1%20text2%20text3&priority=2rn HTTP/1.1rn")
14. 7. ESPlorer
Integrated Development Environment (IDE) for ESP8266 developers
• The essential multi-platforms
tools for any ESP8266 developer
from luatool author’s, including
a LUA for NodeMCU and
MicroPython.
• Download link :
• https://github.com/4refr0nt/ESPlorer
• http://esp8266.ru/esplorer/#download
15. Code (init.lua)
print("Setting up WIFI...")
wifi.setmode(wifi.STATION)
--modify according your wireless router settings
wifi.sta.config(“SSID",“PASSWORD")
wifi.sta.connect()
tmr.alarm(1, 1000, 1, function()
if wifi.sta.getip()== nil then
print("IP unavailable, Waiting...")
else
tmr.stop(1)
print("Config done, IP is "..wifi.sta.getip())
dofile("hcsr04.lua")
device = hcsr04.init()
tmr.alarm(0, 30000, 1, function() notify() end)
end
end)
16. Code (hcsr04.lua) function notify()
if device.measure() < 10 then
print("ALERT: TANK IS FULL")
if n == 1 then
conn=net.createConnection(net.TCP, 0)
conn:on("receive", function(conn, payload) print(payload) end)
conn:connect(80,"50.116.34.97")
conn:send("GET
/publicapi/notify?apikey=YOURAPIKEY&application=ESP8266&event=TANK_FULL&description=Tank%20is%20full%20now&priority=2rn
HTTP/1.1rn")
conn:send("Host: notifymyandroid.comrn")
conn:send("Accept: */*rn")
conn:send("User-Agent: Mozilla/4.0 (compatible; esp8266 Lua; Windows NT 5.1)rn")
conn:send("rn")
n = 0
else n = 1
end
elseif device.measure() > 150 then
print("ALERT: TANK IS EMPTY")
if m == 1 then
conn=net.createConnection(net.TCP, 0)
conn:on("receive", function(conn, payload) print(payload) end)
conn:connect(80,"50.116.34.97")
conn:send("GET
/publicapi/notify?apikey=YOURAPIKEY&application=ESP8266&event=TANK_EMPTY&description=Tank%20is%20empty%20now&priority=2rn
HTTP/1.1rn")
conn:send("Host: notifymyandroid.comrn")
conn:send("Accept: */*rn")
conn:send("User-Agent: Mozilla/4.0 (compatible; esp8266 Lua; Windows NT 5.1)rn")
conn:send("rn")
m = 0
else m = 1
end
else
print("TANK OK")
print (device.measure())
conn=net.createConnection(net.TCP, 0)
conn:on("receive", function(conn, payload) print(payload) end)
-- api.thingspeak.com 184.106.153.149
conn:connect(80,'184.106.153.149')
conn:send("GET /update?key=YOURAPIKEY&field1="..device.measure().."HTTP/1.1rn")
conn:send("Host: api.thingspeak.comrn")
conn:send("Accept: */*rn")
conn:send("User-Agent: Mozilla/4.0 (compatible; esp8266 Lua; Windows NT 5.1)rn")
end
end
--https://github.com/loiphin/ESP8266/blob/master/hcsr04.lua
n=0
m=0
hcsr04 = {};
function hcsr04.init(pin_trig, pin_echo)
local self = {}
self.time_start = 0
self.time_end = 0
-- Choose the correct GPIO pins for the trigger and echo of the HC-SR04 module
self.trig = pin_trig or 3
self.echo = pin_echo or 4
gpio.mode(self.trig, gpio.OUTPUT)
gpio.mode(self.echo, gpio.INT)
function self.echo_cb(level)
if level == 1 then
self.time_start = tmr.now()
gpio.trig(self.echo, "down")
else
self.time_end = tmr.now()
end
end
function self.measure()
gpio.trig(self.echo, "up", self.echo_cb)
gpio.write(self.trig, gpio.HIGH)
tmr.delay(100)
gpio.write(self.trig, gpio.LOW)
tmr.delay(100000)
if (self.time_end - self.time_start) < 0 then
return -1
end
return (self.time_end - self.time_start) / 58
end
return self
end
17. Sketch for SW update and working model
ESP 8266-01FT232RL
HC-SR04
Ultrasonic Sensor
TXD
TXD
RXD
RXD
GND GND GND
GPIO 0
GPIO 2
TRIG
ECHO
+5V+3.3V
Multi-Power
Supply
VCC CH_PD
VCC
GND
USBconnectiontoLaptop
3 pins used 7 pins used 4 pins used
Note: use a bread board to get connections in place.
B
18. Important for software upload on ESP8266
• FIRST UPLOAD hcsr04.lua on ESP8266
by clicking on Save to ESP in ESplorer.
• NEXT UPLOAD init.lua on ESP8266 by
clicking on Save to ESP in ESplorer.
• Wait for 1-2 min after upload. The setup
should work and updated data points
available on Thingspeak channel and
alerts on Notify My Android as per
distance monitored.
19. Sketch for post software update on ESP8266
ESP 8266-01
HC-SR04
Ultrasonic Sensor
TXD
RXD
GND GND
GPIO 0
GPIO 2
TRIG
ECHO
+5V+3.3V
Multi-Power
Supply
VCC CH_PD
VCC
GND
5 pins used 4 pins used
C
21. In a Nutshell
• Get ESP8266 upgraded with NodeMCU firmware with help of UART (Sketch A)
• Open accounts on Thingspeak and Notify My Android App and get the API keys to be used
in code
• Connect HCSR-04 to ESP8266 and upload the code on ESP8266 using ESPlorer (Sketch B)
• Check the working of init.lua on serial monitor:
• Check Tank Full condition alert on mobile
• Check Tank Empty condition alert on mobile
• Check Tank OK and Charts on Thingspeak scenario
• Remove UART connections and check standalone working of ESP8266 and HCSR-04
(Sketch C)
22. Next Steps
• Get the things working on circuit board with minimal size
• Implement it in real tank environment
• Look for alternate economical battery sources for powering ESP8266
and HCSR04