68 lines
1.1 KiB
Org Mode
68 lines
1.1 KiB
Org Mode
|
|
#+TITLE: MicroPython Implementation Notes
|
|
|
|
|
|
* Circuit Layout
|
|
|
|
| Pin | Used For |
|
|
| 37 | SDA - MPU6050 |
|
|
| 36 | SCL - MPU6050 |
|
|
| | |
|
|
|
|
|
|
* SSD 1306
|
|
|
|
#+BEGIN_SRC python
|
|
from machine import I2C, Pin
|
|
import ssd1306
|
|
|
|
rst = Pin(16, Pin.OUT)
|
|
rst.value(1)
|
|
scl = Pin(15, Pin.OUT, Pin.PULL_UP)
|
|
sda = Pin(4, Pin.OUT, Pin.PULL_UP)
|
|
i2c = I2C(scl=scl, sda=sda, freq=450000)
|
|
oled = ssd1306.SSD1306_I2C(128, 64, i2c, addr=0x3c)
|
|
|
|
oled.fill(0)
|
|
oled.text('ESP32', 45, 5)
|
|
oled.text('MicroPython', 20, 20)
|
|
oled.show()
|
|
#+END_SRC
|
|
|
|
* MPU 6050
|
|
|
|
#+BEGIN_SRC python
|
|
from machine import I2C, Pin
|
|
from mpu6050 import accel
|
|
|
|
scl=Pin(36, Pin.OUT)
|
|
sda=Pin(37, Pin.OUT)
|
|
i2c = I2C(scl=scl, sda=sda, freq=450000)
|
|
a = accel(i2c)
|
|
a.get_values()
|
|
#+END_SRC
|
|
|
|
|
|
* Connections
|
|
|
|
Pin 23 ESP -> SDA MPU
|
|
Pin 19 ESP -> SCL MPU
|
|
|
|
MPU AD0 -> - Rail
|
|
MPU GND -> - Rail
|
|
MPU Vcc -> + Rail
|
|
|
|
ESP GND -> - Rail
|
|
ESP VEXT -> +Rail
|
|
|
|
* Things to look at
|
|
|
|
- Can we turn off the MPU with VEXT Control? (ESP Pin 21).
|
|
- Connecting to WiFi - Client Mode
|
|
- Connecting to WiFi - Direct Mode
|
|
- BLE?
|
|
- NTP?
|
|
- How to store the data appropriately
|
|
- How to retrieve data over WiFi
|
|
- How to detect battery low
|