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.
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
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
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
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.
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
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.
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)
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
Making wearables with NodeMCU - FOSDEM 2017Etiene Dalcol
NodeMCU is an open hardware IoT platform based on eLua for the ESP8266 microcontroller. It allows creating low-cost projects using Wi-Fi and easy scripting in Lua, which makes it great for making wearables, for example. In this talk I'll give an introduction to the platform, show how I built an audio reactive graduation dress and share the materials to get you started on your own wearable project. This talk is ideal for beginners to hardware hacking or Lua enthusiasts looking for project inspiration.
Transforme ideias em realidade com python e web2pyRelsi Maron
Slides da palestra de "evangelização" sobre as facilidades que o web2py fornece para colocar rapidamente ideias em prática. 1º PyPoA - Encontro de usuários Python de Porto Alegre e Região Metropolitana.
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.
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
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.
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)
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
Making wearables with NodeMCU - FOSDEM 2017Etiene Dalcol
NodeMCU is an open hardware IoT platform based on eLua for the ESP8266 microcontroller. It allows creating low-cost projects using Wi-Fi and easy scripting in Lua, which makes it great for making wearables, for example. In this talk I'll give an introduction to the platform, show how I built an audio reactive graduation dress and share the materials to get you started on your own wearable project. This talk is ideal for beginners to hardware hacking or Lua enthusiasts looking for project inspiration.
Transforme ideias em realidade com python e web2pyRelsi Maron
Slides da palestra de "evangelização" sobre as facilidades que o web2py fornece para colocar rapidamente ideias em prática. 1º PyPoA - Encontro de usuários Python de Porto Alegre e Região Metropolitana.
Desenvolvimento de Jogos com Software LivreRelsi Maron
Slides da apresentação sobre o desenvolvimento de jogos com software livre no FISL 17, apresentando a Godot Game Engine como uma plataforma completa para o desenvolvimento de jogos no linux.
Arduino + Python: produtividade ao extremoÁlvaro Justen
Slides da palestra que ministrei online no dia 06/09/2011 às 20h no LabDeGaragem.com, onde abordei introdução à linguagem Python, integração de Python com Arduino com e sem fio (através de USB, Ethernet, Bluetooth, Wi-Fi e ZigBee) e exemplifiquei essa integração com a apresentação de alguns projetos.
Desenvolvendo games com ferramentas livresRelsi Maron
Desenvolvendo Games com Tecnologias Livres apresenta diversas ferramentas para quem quer começar com o desenvolvimento de games utilizando ferramentas livres. A palestra focará na Godot Game Engine, um motor de jogos multi-plataforma para criação de Games mobile, desktop e web, e também apresentará outras ferramentas, e recursos, auxiliares.
Desenvolvimento web com python e web2pyRelsi Maron
Desenvolvimento Web com Python e Web2py apresenta a linguagem de programação Python e o framework web2py, ambas tecnologias livres, e as facilidades inerentes para quem quer desenvolver para web de forma ágil e sem complicações.
[CB20] Vulnerabilities of Machine Learning Infrastructure by Sergey GordeychikCODE BLUE
The boom of AI brought to the market a set of impressive solutions both on the hardware and software side. On the other hand, massive implementation of AI in various areas brings about problems, and security is one of the greatest concerns.
In this talk we will present results of hands-on vulnerability research of different components of AI infrastructure including NVIDIA DGX GPU servers, ML frameworks such as Pytorch, Keras and Tensorflow, data processing pipelines and specific applications, including Medical Imaging and face recognition powered CCTV. Updated Internet Census toolkit based on the Grinder framework will be introduced.
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
Low-cost microcontrollers are being used more and more often in embedded applications that previously may have used a microprocessor. Microcontrollers often run a real-time operating system (RTOS) rather than a full operating system like Linux. In this webinar we introduce FreeRTOS, a popular RTOS for microcontrollers that has been ported to 35 microcontroller platforms.
Workshop on IoT and Basic Home Automation_BAIUST.pptxRedwan Ferdous
A 2 days hands-on workshop on IoT and Basic Home Automation was held back in 16-17th August, 2023 in the campus of 'Bangladesh Army International University of Science & Technology' (BAIUST), Cumilla.
There were 2 workshop expert, Mr. Redwan Ferdous- Director, FronTech Ltd. and Mr. Nahidul Alam, Lecturer, Dept of EEE, BAIUST.
In total 2 days, total of 12 projects were being practiced hands-on. Total 45 participants participated in the workshop. Successful 2-days, full workshop participants achieved participation certificate. 03 best performer received crests.
Media Coverages:
1) https://l.facebook.com/l.php?u=https%3A%2F%2Fwww.jagocomilla.com%2F%25e0%25a6%25ac%25e0%25a6%25be%25e0%25a6%2587%25e0%25a6%2589%25e0%25a6%25b8%25e0%25a7%258d%25e0%25a6%259f%25e0%25a7%2587-%25e0%25a6%2586%25e0%25a6%2587%25e0%25a6%2593%25e0%25a6%259f%25e0%25a6%25bf-%25e0%25a6%258f%25e0%25a6%25ac%25e0%25a6%2582-%25e0%25a6%25ac%25e0%25a7%2587%25e0%25a6%25b8%25e0%25a6%25bf%25e0%25a6%2595%2F%3Ffbclid%3DIwAR0SwfJEKqiPmXZDYbjTudVSnb6pZCI9ZTun7LRe3C5YG7U7Uj9ciU6VH7w&h=AT04ghurTxB171Iqx9jkDjpRmC4s-ljW1QDziJeDEULOwH0gTQixVxt5Ck9cDEFgcv3Lx1JFplwTnnMp9sawh2X6pjjWAe7fvReKUZMdjHDhAkRIIXvSnstZtKRbU6VfHDVG&__tn__=R]-R&c[0]=AT1AFR198waQ2tUPRvRRROX7ncbzJPe01QTOoyAp0vtDadgjaX7kIyG2tVauxEuHXt0GcbkCuvoTWd7FJ78-WSRlVRj3Fs0-FpgvP_K8F2QVuHNM_QN6yIGvcjCqTxvdMDkMDrHJ-OpuFlZc4p2HqsJ7vcqZpXslk7biWJNWJaO6k4yQrrm1Hg
2) https://l.facebook.com/l.php?u=https%3A%2F%2Fgonomanusherawaj.com%2Fothers%2F89168%2F%3Ffbclid%3DIwAR3Jut2kJ0DuS8t5e5TQYG3rMGt1eA63wdWHr2KzeXJtACRoYc45FAbBnHQ&h=AT1x-PBWSNW6TQxeOMRbtEsZE51yAd-UWWotcD8s9RU_G8khaJhWMHxWyrsZk32nB64v0Sk2dW1Stq9p68HBJbrMJX6TemYsk4TwR7yx2OrQ_N9q9PmhaFXTODlfNjjTRJoK&__tn__=R]-R&c[0]=AT1AFR198waQ2tUPRvRRROX7ncbzJPe01QTOoyAp0vtDadgjaX7kIyG2tVauxEuHXt0GcbkCuvoTWd7FJ78-WSRlVRj3Fs0-FpgvP_K8F2QVuHNM_QN6yIGvcjCqTxvdMDkMDrHJ-OpuFlZc4p2HqsJ7vcqZpXslk7biWJNWJaO6k4yQrrm1Hg
3) https://l.facebook.com/l.php?u=https%3A%2F%2Fcomillanews.com%2F%25e0%25a6%25ac%25e0%25a6%25be%25e0%25a6%2587%25e0%25a6%2589%25e0%25a6%25b8%25e0%25a7%258d%25e0%25a6%259f%25e0%25a7%2587-%25e0%25a6%25b8%25e0%25a6%25ae%25e0%25a7%258d%25e0%25a6%25aa%25e0%25a6%25a8%25e0%25a7%258d%25e0%25a6%25a8-%25e0%25a6%25b9%25e0%25a6%25b2-%25e0%25a6%2586%25e0%25a6%2587%25e0%25a6%2593%25e0%25a6%259f%3Ffbclid%3DIwAR0bFEj8N9UuFmg_WL5PPlWZefIqEohMedvFfqFKacfl8xLAmyRxb0nE6gg&h=AT0ZNYsvxPvJGFPLPch3kK_67c_W4FtZv01NUSckrCT7HPNzbhpr7TeZ26PDSMG903Vz70Lk3y5ldoTbBDV_Dz-fSU8mohXGt6jLV8yM_N1gEJ4WBP0qjQkMnyRUS4CQfF02&__tn__=R]-R&c[0]=AT1AFR198waQ2tUPRvRRROX7ncbzJPe01QTOoyAp0vtDadgjaX7kIyG2tVauxEuHXt0GcbkCuvoTWd7FJ78-WSRlVRj3Fs0-FpgvP_K8F2QVuHNM_QN6yIGvcjCqTxvdMDkMDrHJ-OpuFlZc4p2HqsJ7vcqZpXslk7biWJNWJaO6k4yQrrm1Hg
The Internet of Things (IoT) is the interconnection of uniquely identifiable embedded computing devices within the existing Internet infrastructure.
Ethernet Web shield is a smart communication shield for controlling and monitoring embedded application via internet. Internet is the media and economic way for communication between anywhere from to geographical location. This shield is compatible with Arduino open source and make easy way for customized application development. This shield has got four relay 10AMP.The board by ULN2003 IC. The board works on 5V
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.
Prometheus as exposition format for eBPF programs running on KubernetesLeonardo Di Donato
The kernel knows more than our programs. Stop bloating our applications with copy-and-paste instrumentation code for metrics. Let's go look under the hoods!
Nowadays every application exposes their metrics via an HTTP endpoint readable by using Prometheus. Nevertheless, this very common pattern, by definition only exposes metrics regarding the specific applications being observed.
This talk, and its companion slides, wants to expose the idea, and a reference implementation (https://github.com/bpftools/kube-bpf), of using eBPF programs to collect and automatically expose applications and kernel metrics via a Prometheus endpoint.
It walks through the architecture of the proposed reference implementation - a Kubernetes operator with a custom resource for eBPF programs - and finally links to a simple demo showing how to use it to grab and present some metrics without having touched any application running on the demo cluster.
---
Talk given at Cloud_Native Rejekts EU - Barcelona, Spain - on May 18th, 2019
All levels of security from simple software to Java Cards and cloud encryption service. Unchain the crypto ecosystem.
Visit https://bouncycrypto.com for more details!
We have presented the first version of the library at Black Hat. We put an incredible effort into development to present a “fully functioning prototype” with a profiler.
The library was verified on four types of JavaCards (and JCardSim simulator). It provided all low-level operations to build protocols with Elliptic Curve cryptography (256, 384, 512, and 521 bits):
Bignat - addition, multiplication, modular operations, inversion, etc.
EC point - low-level operations with EC points
EC curve - generation of EC
7. Globalcode – Open4education
Por que Python?
Bonito é melhor que feio.
Explícito é melhor que implícito.
Simples é melhor que complexo.
Complexo é melhor que complicado.
Linear é melhor do que aninhado.
Esparso é melhor que denso.
Legibilidade conta.
Casos especiais não são especiais o bastante para quebrar as regras.
Ainda que praticidade vença a pureza.
Erros nunca devem passar silenciosamente.
A menos que sejam explicitamente silenciados.
Diante da ambigüidade, recuse a tentação de adivinhar.
Deveria haver um — e preferencialmente só um — modo óbvio para fazer algo.
Embora esse modo possa não ser óbvio a princípio a menos que você seja holandês.
Agora é melhor que nunca.
Embora nunca freqüentemente seja melhor que *já*.
Se a implementação é difícil de explicar, é uma má idéia.
Se a implementação é fácil de explicar, pode ser uma boa idéia.
Namespaces são uma grande idéia — vamos ter mais dessas!
10. Globalcode – Open4education
Por que Python?
- Linguagem de altíssimo nível (VHLL)
- Criada por Guido van Rossum em 1991
- Interpretada e interativa
- Multiplataforma
- Multipropósito
- Muito Foda
17. Globalcode – Open4education
Micropython
MicroPython is a lean
and efficient implementation
of the Python 3
programming language
that includes a small subset
of the Python standard library
and is optimised to run on microcontrollers
and in constrained environments.
http://www.micropython.org/
18. Globalcode – Open4education
MicroPython
- STM32F405RG microcontroller
- 168 MHz Cortex M4 CPU
- 1024KiB flash ROM and 192KiB RAM
- Micro USB connector
- Micro SD card slot
- 3-axis accelerometer (MMA7660)
- Real time clock with optional battery backup
- 24 GPIO on left and right edges
- 5 GPIO on bottom row
- 3x 12-bit analog to digital converters
- 2x 12-bit digital to analog (DAC) converters
- 4 LEDs (red, green, yellow and blue)
- 1 reset and 1 user switch
- On-board 3.3V LDO voltage regulator,
capable of supplying up to 250mA,
input voltage range 3.6V to 16V
- DFU bootloader in ROM
19. Globalcode – Open4education
- array – arrays of numeric data
- Builtin Functions
- gc – control the garbage collector
- math – mathematical functions
- sys – system specific functions
- ubinascii – binary/ASCII conversions
- ucollections – collection and container types
- uhashlib – hashing algorithm
- uheapq – heap queue algorithm
- uio – input/output streams
- ujson – JSON encoding and decoding
- uos – basic “operating system” services
- ure – regular expressions
- usocket – socket module
- ussl – ssl module
- ustruct – pack and unpack primitive data types
- utime – time related functions
- uzlib – zlib decompression
MicroPython
Standard libraries
https://goo.gl/w1Q3Yy
20. Globalcode – Open4education
- machine — functions related to the board
- micropython – access and control MicroPython internals
- network — network configuration
- uctypes – access binary data in a structured way
- esp — functions related to the ESP8266
MicroPython
Specific libraries
https://goo.gl/w1Q3Yy
21. Globalcode – Open4education
import machine
machine.freq() # get the current frequency of the CPU
machine.freq(160000000) # set the CPU frequency to 160 MHz
MicroPython
Módulo machine
https://goo.gl/8hCppg
22. Globalcode – Open4education
from machine import Pin
p0 = Pin(0, Pin.OUT) # create output pin on GPIO0
p0.high() # set pin to high
p0.low() # set pin to low
p0.value(1) # set pin to high
p2 = Pin(2, Pin.IN) # create input pin on GPIO2
print(p2.value()) # get value, 0 or 1
p4 = Pin(4, Pin.IN, Pin.PULL_UP) # enable internal pull-up resistor
p5 = Pin(5, Pin.OUT, value = 1) # set pin high on creation
MicroPython
Módulo machine
https://goo.gl/8hCppg
23. Globalcode – Open4education
import network
wlan = network.WLAN(network.STA_IF) # create station interface
wlan.active(True) # activate the interface
wlan.scan() # scan for access points
wlan.isconnected() # check if the station is connected to an AP
wlan.connect('essid', 'password') # connect to an AP
wlan.config('mac') # get MAC adddress
wlan.ifconfig() # get the interface's
#IP/netmask/gw/DNS
MicroPython
Módulo network
https://goo.gl/8hCppg
24. Globalcode – Open4education
import network
ap = network.WLAN(network.AP_IF) # create access-point interface
ap.active(True) # activate the interface
ap.config(essid='ESP-AP') # set the ESSID of the access point
MicroPython
Módulo network
https://goo.gl/8hCppg
31. Globalcode – Open4education
ESP8266 + MicroPython
Gravando o firmware
Verificar a porta do dispositivo
$ lsusb
Bus 001 Device 006: ID 10c4:ea60 Cygnal Integrated Products, Inc. CP210x UART...
$ dmesg | grep USB
usb 1-1: cp210x converter now attached to ttyUSB0
Instalar o esptool
$ pip install esptool
Ou
$ git clone https://github.com/themadinventor/esptool.git
Python 2.7
32. Globalcode – Open4education
ESP8266 + MicroPython
Gravando o firmware
Apagar o firmware atual
$ esptool.py --port /dev/ttyUSB0 erase_flash
esptool.py v1.1
Connecting...
Erasing flash (this may take a while)...
$ esptool.py --port /dev/ttyUSB0 --baud 115200 write_flash --flash_size=8m -fm
dio 0 esp8266-20160909-v1.8.4.bin
Connecting...
Running Cesanta flasher stub...
Flash params set to 0x0220
Writing 565248 @ 0x0... 565248 (100 %)
Wrote 565248 bytes at 0x0 in 12.7 seconds (357.1 kbit/s)...
Leaving...