
Explore how MicroPython powers IoT projects by building a sensor setup on a bread board with a ESB 82 66 development board, and an HD 22 temperature and humidity sensor.
Explore the esb 82 66 esp8266 development board, its wifi antenna, 30 pins (3v3, gnd, gpio, adc a0), reset and flash modes, and usb power for programming.
Learn how to set up a microcontroller on a breadboard, using top and bottom power rails for power and ground, and connect components through five-hole columns for flexible wiring.
Connect the breadboard power strips to the microcontroller by wiring 3v3 and ground to the top and bottom rows with red and black jumpers.
Set up your computer to communicate with a microcontroller by installing CP210x drivers, creating a Python virtual environment, and installing esptool and rshell across Windows, Mac, and Linux.
Connect your microcontroller via usb, open rshell, identify the serial port, enter the MicroPython repl, run simple Python commands, and exit with ctrl-x; on Windows, you may need -a.
Demonstrates controlling on-board leds with MicroPython by configuring pins as outputs with machine.pin, using 0/1 or on/off logic, including reverse wiring and a blinking loop with time.sleep.
Explore the MicroPython file system, how flash memory on the board stores it, and how boot.py and main.py scripts determine startup behavior across different boards.
Develop a full blinking lights application in MicroPython, running on the board, using machine and time to toggle two LEDs with reverse wiring and create a standalone program.
Learn to add a bread board button to a MicroPython IoT project, read its state, and stop the blinking light by exiting the while true loop.
Learn how to wire a button to a microcontroller input, reading high or low based on connection to vcc or ground, and avoiding a floating pin by proper wiring.
Learn how electricity flows from positive to negative in a circuit and why direct power-to-ground connections cause short circuits that can damage a microcontroller.
Learn how pull-up resistors keep a GPIO pin at a high level until a button press pulls it to ground, with the internal resistor limiting current to prevent short circuits.
wire a button to the microcontroller using ground and enable the pull-up on GPIO 14, read the button in MicroPython, and power off the LCD when pressed.
Replace magic numbers with named constants and add comments for pin mappings in MicroPython, then wrap the application in a function to run from import for repeated execution without rebooting.
Explains the two Wi-Fi interfaces on the ESP8266 board: the access point interface and the station interface, including activation, scanning networks, connecting to a router, and viewing network settings.
Enable the web repl to write MicroPython in a browser, set a password, reboot the board, and download the web client from GitHub to connect via the board's IP.
Create a separate config file to store wifi ssid and password. Copy it to board and reference it in code to avoid exposing secrets and keep config out of repository.
Learn how to send HTTP requests from a microcontroller using MicroPython, including establishing wifi, using urequests, issuing GET to a public IP service, and exploring POST options.
Learn to create an IFTTT webhook and applet to trigger actions from a microcontroller, such as sending an email when a button is pressed, via a post request.
Connect the MicroPython board to Wi-Fi, then implement a webhook call to trigger on button press, using a config file for network, button id, and webhook URL.
Reuse the blinking lights routine to signal errors by blinking three times on crash or failed requests, using a try-except block and printing the exception.
Explore using MicroPython’s machine reset causes to distinguish power-on from deep-sleep wakeups, trigger the webhook, and enter deep sleep to conserve battery in IoT devices.
Implement a debug mode by wiring a ground-referenced debug pin with a pull-up resistor to the microcontroller, preventing deep sleep and keeping the board awake for debugging.
Connect an external reset button to the microcontroller's reset pin, grounding it to trigger a reset and wake from deep sleep, offering a hardware alternative to the onboard reset button.
Learn how to wire a DHT22 temperature and humidity sensor to a microcontroller, including power, ground, and data connections, and how to place it on a breadboard to read measurements.
Power and connect the microcontroller, import the HD22 or HD11 sensor module, and create a sensor instance with a data pin. Measure reads temperature and humidity, with Fahrenheit conversion shown.
build a weather station application in MicroPython by reading temperature and humidity from a DHT22 sensor, using a config file for pin and units, with fahrenheit conversion and tuple return.
Push microcontroller temperature and humidity readings to the cloud using a ThingSpeak channel via a GET webhook, manage API keys, and visualize data over time.
Configure a wake-up alarm for deep sleep on a microcontroller, measure temperature and humidity, upload to the cloud, and log data at a configurable interval.
Extend the RST pin with a small five-hole adapter to connect reset, D0 wake-up, and the button, enabling manual or automatic resets while the temperature data updates.
Learn to wire and use the ssd1306 oled screen with micro Python on a breadboard, connecting ground, vcc, and i2c serial clock and data pins for reliable display.
Control a monochrome MicroPython display over I2C with the SSD1306 1.3 or 6 class. Initialize I2C, scan devices, draw text at 0 0 using a buffer, and flush with show.
Combine a temperature sensor and an LCD display to build a weather station. Display temperature and humidity on a four-line, centered screen using MicroPython and I2C.
Explore drawing primitives in MicroPython on the MicroPython rebel board by rendering rectangles, lines, and pixels to create richer visuals for temperature and humidity.
Learn to load monochrome bbm images into a MicroPython frame buffer, then copy the buffer to the display via bit blitting to render weather icons.
Explore how to implement custom fonts in MicroPython by using font to PI and the writer class to render temperature and humidity as centered image-based text.
This end marks a beginning: learn to build your own firmware, freeze modules to manage memory, and explore boards, Microdot, and forks like CircuitPython for MicroPython projects.
Welcome to MicroPython and the Internet of Things, a beginner tutorial that will introduce you to the exciting world of microcontrollers and small-form Internet enabled devices. On the hardware side, the tutorial is centered around the ESP8266 chip, an inexpensive, yet unbelievably powerful microcontroller. As far as software, I'm going to show you how to program this little device with MicroPython, a lightweight version of the Python language that is designed to run on devices with limited resources.