Skip to content
This repository has been archived by the owner on Dec 17, 2021. It is now read-only.

Commit

Permalink
Merge pull request #14 from zotbins/release-v1
Browse files Browse the repository at this point in the history
v0.0.1
  • Loading branch information
okyang committed Jun 26, 2021
2 parents f0dbcd5 + aa91b86 commit 59c71ce
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 16 deletions.
2 changes: 1 addition & 1 deletion README.md
Expand Up @@ -9,7 +9,7 @@ This is the first step of a multi-part project of creating a smart waste ecosyst

# Quick Start
Please follow the appropriate build guide for the waste watcher version of your choosing.
- [Waste Watcher Guide](https://raw.githubusercontent.com/zotbins/waste_watcher/release-v1-develop/guide/guide.md)
- [Waste Watcher Guide](https://github.com/zotbins/waste_watcher/blob/release-v1/guide/guide.md)
- Measures bin fullness and collects waste images
- Saves data and images to HTTP server
- Syncs with NTP Client to generate UTC datetime stamps
Expand Down
30 changes: 15 additions & 15 deletions guide/guide.md
Expand Up @@ -2,7 +2,7 @@

Waste Watcher v1 is an IoT-based sensor module unit that collects bin fullness data and takes images of the trash. The main difference between v0 and v1 is the use of an HTTP server to record data instead of a SD card. This build guide will walk you through the steps of setting everything up. If you need additional help feel free to ask for help on our [Discord Server](https://discord.com/invite/mGKVVpxTPr).

![feature photo](https://raw.githubusercontent.com/zotbins/waste_watcher/main/v0/guide_images/feature_photo.jpg)
![feature photo](https://raw.githubusercontent.com/zotbins/waste_watcher/release-v1/guide/feature_photo.jpg)

## Features
- Sends to an HTTP server (You should set up the [ZBCE API]())
Expand All @@ -27,7 +27,7 @@ Waste Watcher v1 is an IoT-based sensor module unit that collects bin fullness d


## 1. Supplies
![supplies](https://raw.githubusercontent.com/zotbins/waste_watcher/release-v1-develop/guide/supplies_materials.jpg)
![supplies](https://raw.githubusercontent.com/zotbins/waste_watcher/release-v1/guide/supplies_materials.jpg)
### Materials Needed
- ESP32-CAM (~$9 per unit)
- 5V Boost Converter (~$1.5 per unit)
Expand Down Expand Up @@ -62,21 +62,21 @@ Waste Watcher v1 is an IoT-based sensor module unit that collects bin fullness d

1. **Use a 4cm x 3cm prototyping board.** This will be approximately the same size as the ESP32 CAM. I cut a 4cm x 6cm board in half to get that size.

![](https://raw.githubusercontent.com/zotbins/waste_watcher/release-v1-develop/guide/circuit_assembly_1.jpg)
![](https://raw.githubusercontent.com/zotbins/waste_watcher/release-v1/guide/circuit_assembly_1.jpg)

2. **Use two 8-pin female headers and place it on the center of board for the ESP32-CAM.** I just cut a 20 pin female header piece to get the 8-pin female headers.

![](https://raw.githubusercontent.com/zotbins/waste_watcher/release-v1-develop/guide/circuit_assembly_1.jpg)
![](https://raw.githubusercontent.com/zotbins/waste_watcher/release-v1/guide/circuit_assembly_1.jpg)

3. **(Optional) Place a 2-pin screw terminal block connector near the top.** You can use this to conveniently plug in my battery pack of 3 AA batteries. If you don't follow this step just solder the wires from your battery pack directly into the prototyping board.
4. **Solder wires for HC-SR04 and the 5V Boost Converter.** These wires will be used to connect the components to the prototyping board.
5. **Solder Components.** Once everything is placed, just solder those components in place. See image above of my setup for reference.
6. **Plug in your ESP32 CAM into the female headers for referencing the pins.** Helps you see which pins for the female headers correspond to which pin on the ESP32 CAM.

![](https://raw.githubusercontent.com/zotbins/waste_watcher/release-v1-develop/guide/circuit_assembly_3.jpg)
![](https://raw.githubusercontent.com/zotbins/waste_watcher/release-v1/guide/circuit_assembly_3.jpg)
7. **Solder connections according to wiring diagram below.**

![](https://raw.githubusercontent.com/zotbins/waste_watcher/release-v1-develop/guide/v0_circuit.png)
![](https://raw.githubusercontent.com/zotbins/waste_watcher/release-v1/guide/v0_circuit.png)

**Circuit Explanation**

Expand All @@ -97,7 +97,7 @@ By the end of this tutorial you should have the following:

## 4. Select AI Thinker ESP32-CAM as Board in the Arduino IDE

![](https://raw.githubusercontent.com/zotbins/waste_watcher/main/release-v1-develop/guide/arduino_ide.png)
![](https://raw.githubusercontent.com/zotbins/waste_watcher/main/release-v1/guide/arduino_ide.png)

Refer to the picture above for reference.

Expand All @@ -114,7 +114,7 @@ We'll be using Wifi and connecting to a NTP server to keep automatically determi

3. Move the folder to your Arduino IDE installation libraries folder. On Windows, I move the folder here: `C:\Users\REPLACE_WITH_YOUR_USERNAME\Documents\Arduino\libraries`

![](https://raw.githubusercontent.com/zotbins/waste_watcher/release-v1-develop/guide/NTP_client_reference.png)
![](https://raw.githubusercontent.com/zotbins/waste_watcher/release-v1/guide/NTP_client_reference.png)
NTP_client_reference.png
4. Restart the Arduino IDE

Expand All @@ -124,9 +124,9 @@ Now that you have all the software setup. Let's start with programming the ESP32
1. Get your FT232RL FTDI USB to TTL Serial Adapter Module (FTDI Adapter) and your Female to Female Jumper Wires
2. Connect the FTDI Adapter pins to your ESP32-CAM according to the diagram below

![](https://raw.githubusercontent.com/zotbins/waste_watcher/release-v1-develop/guide/ftdi_circuit_design.png)
![](https://raw.githubusercontent.com/zotbins/waste_watcher/release-v1/guide/ftdi_circuit_design.png)

![](https://raw.githubusercontent.com/zotbins/waste_watcher/release-v1-develop/guide/ftdi_connection.jpg)
![](https://raw.githubusercontent.com/zotbins/waste_watcher/release-v1/guide/ftdi_connection.jpg)


3. Plug in your FTDI Adapter USB side to the computer and make sure that your computer is able to recognize the device. If your computer does not recognize the device follow these steps:
Expand All @@ -143,7 +143,7 @@ Now, we're going to download the code and make some changes so that everything w
1. Download the *waste_watcher_code* folder from GitHub: https://github.com/zotbins/waste_watcher_code
2. Open up the code in the Arduino IDE. You should see two tabs (one called `waste_watcher_code` and the other called `config.h`). See image below for reference.

![code reference](https://raw.githubusercontent.com/zotbins/waste_watcher/release-v1-develop/guide/code_reference.png)
![code reference](https://raw.githubusercontent.com/zotbins/waste_watcher/release-v1/guide/code_reference.png)

3. Go to the `config.h` tab so that we can change the parameters

Expand All @@ -159,7 +159,7 @@ Now, we're going to download the code and make some changes so that everything w
String serverName = "<YOUR_SERVERNAME>"; // only the serverName, don't add http://
```

![config reference](https://raw.githubusercontent.com/zotbins/waste_watcher/release-v1-develop/guide/coding_parameters_reference.png)
![config reference](https://raw.githubusercontent.com/zotbins/waste_watcher/release-v1/guide/coding_parameters_reference.png)

5. Measure the height of your bin and change *binHeight* value to reflect the height of your particular bin. That way the sensor module can calculate how full your bin is.
```c
Expand All @@ -174,7 +174,7 @@ Now, we're going to download the code and make some changes so that everything w
## 8. Understanding the Code
*Feel free to skip this section if you are not interested or just save it for later.*

![](https://raw.githubusercontent.com/zotbins/waste_watcher/release-v1-develop/guide/software_diagram.png)
![](https://raw.githubusercontent.com/zotbins/waste_watcher/release-v1/guide/software_diagram.png)

Above, is a quick high-level flow chart that shows the logic of the code. It is pretty simple.

Expand All @@ -187,7 +187,7 @@ However, if you want a more in-depth explanation, I made a PDF document and made

## 10. 3D Printing the Case

![](https://raw.githubusercontent.com/zotbins/waste_watcher/release-v1-develop/guide/sensor_mod_v0_enclosure.png)
![](https://raw.githubusercontent.com/zotbins/waste_watcher/release-v1/guide/sensor_mod_v0_enclosure.png)

1. Download the the STL files from https://github.com/zotbins/waste_watcher/tree/main/v0/stl_files
2. Infill: 10-15%
Expand All @@ -199,7 +199,7 @@ However, if you want a more in-depth explanation, I made a PDF document and made

Currently, this design only fits on a bin with a 1cm width lip. You may have to modify the CAD file. I have included a Fusion360 file called *sensor_mod_handle v9.f3d*, in the [github repository](https://github.com/zotbins/waste_watcher), that you can modify to fit your needs. Another option is to design your own handles for your bin, I made the case pretty modular where you can create a custom attachment with M3 screws.

![](https://raw.githubusercontent.com/zotbins/waste_watcher/release-v1-develop/guide/feature_photo2.jpg)
![](https://raw.githubusercontent.com/zotbins/waste_watcher/release-v1/guide/feature_photo2.jpg)


## 11. Start Data Logging
Expand Down

0 comments on commit 59c71ce

Please sign in to comment.