Skip to content

Prototype

Barkin Simsek edited this page Feb 7, 2021 · 18 revisions

Design

mermaid.js code:

graph TD
  battery[9V Battery] --> curr
  curr[INA219 <br> Current Sensor] --> esp[ESP8266]
  baro[BMP280 <br> Barometer] --> |I2C| esp
  imu[MPU6050 <br> IMU] --> |I2C| esp

  esp --> |I2C| pwm[PCA9685 <br> PWM Driver]
  pwm --> led1[LED]
  pwm --> led2[LED]
  pwm --> led3[LED]
  pwm --> led4[LED]

  button1[Button] --> esp
  button2[Button] --> esp
  button3[Button] --> esp
  
  esp --> |I2C| oled[0.96 Inch OLED]

Parts

Part Pins I2C Address Vin Library Data Sheet ESP8266 Tutorial
PCA9635 I2C 0x0 to 0x7F 2.3~5.5v https://github.com/RobTillaart/PCA9635 https://www.nxp.com/docs/en/data-sheet/PCA9635.pdf https://cdn-learn.adafruit.com/downloads/pdf/16-channel-pwm-servo-driver.pdf
ACS712 ADC (2) N/A 4.5~5.5v https://github.com/RobTillaart/ACS712 https://www.sparkfun.com/datasheets/BreakoutBoards/0712.pdf https://www.romn.io/2020/05/a-simple-approach-to-measure-acdc.html
MPU-6050 I2C (AD0 = 0 > 0x68) or (AD0 = 1 > 0x69) 2.37~3.46v https://github.com/ElectronicCats/mpu6050 https://invensense.tdk.com/wp-content/uploads/2015/02/MPU-6000-Datasheet1.pdf https://randomnerdtutorials.com/esp8266-nodemcu-mpu-6050-accelerometer-gyroscope-arduino/
LPS25HB I2C (SA0 = 0 > 0x5C) or (SA0 = 1 > 0x5D) -0.3~4.8v https://github.com/pololu/lps-arduino https://www.st.com/resource/en/datasheet/lps25hb.pdf N/A
OLED 0.91" I2C 0x3C 3.3~5v https://github.com/adafruit/Adafruit_SSD1306 https://www.buydisplay.com/download/manual/ER-OLED0.91-1_Series_Datasheet.pdf https://www.instructables.com/OLED-I2C-Display-ArduinoNodeMCU-Tutorial/
1291 (Battery Holder) N/A N/A N/A N/A https://www.alliedelec.com/m/d/bf82d2027fd113b1f5ed6a8032a62ade.pdf N/A
Clone this wiki locally