Developed based on Arduino IDE, using Atmega328p-AU chip
* I used kicad to draw before. Since the latest version of kicad cannot import files, only the schematic diagram is provided for the time being (lccad-pcb is too difficult to draw 2333). The source code, board file and 3D printing shell can be downloaded from Code Cloud.
* The LDO version has been successfully verified and the shell suitable for 3D printing has been uploaded
* Watch the demo video: https://www.bilibili.com/video/BV1UV411b7vG
* All TB connections are ad-free and purely useful if you think they are useful
* Sleep time unit is hours
Features
* Water according to the soil moisture threshold you set, rather than simply watering regularly to avoid unnecessary watering.
* Automatically enters sleep when there is no watering task to save power. The dormant current is 0.6ma, which can be charged once every few weeks (small flower pots). With the solar charger, it can achieve long-term unsupervised supervision.
* MX612E motor driver chip supports PWM adjustment of water pump speed, with overheating and power-off protection.
* The combined structure of the main control PCB + capacitive soil moisture detection PCB, the main control integrates the soil moisture drive circuit, the sensor can be flying wires, or can be welded to the main control board from the side to achieve higher integration.
Instructions for use (must read)
* Button 1: Confirm/Wake up, Button 2: Up /Plus/Left, Button 3: Down/Minus/Right, press and hold the Down button and then press the Confirm button to soft restart the system
* The AUTO/OFF mode can be switched on the main interface. In AUTO mode, manual watering is not available, but automatic sleep and wake-up are available. In OFF mode, manual watering is available, but automatic sleep and wake-up are not available.
* The main control board does not have a battery low-voltage protection circuit. Over-discharge of the battery will cause the battery life to decrease. Please use a battery with a protection board and do not let the battery voltage fall below 3.0V.
* It is recommended to calibrate the reference voltage for first time use so that the power display is more accurate. The power supply voltage for measuring the screen is the reference voltage.
* Using a battery with a low discharge rate may cause the overcurrent protection of the battery protection board to be triggered and power outage when the water pump is started. Turning on the smooth start function of the water pump can improve this phenomenon. The reason is that the starting current of some water pumps is too high, causing the protection to be triggered and smooth. Start can reduce the starting current of the water pump.
* When using a 6V peristaltic pump (NKP-DC-S10B) , the larger the pipe diameter, the greater the water output. It is recommended to use a silicone tube with an outer diameter of 5mm and an inner diameter of 3mm.
* The water outlet should not be too far away from the soil moisture sensor. If the humidity is too far away, slow transmission of humidity will cause the flowerpot to overflow with water.
* The watering speed cannot be too fast. You can adjust the watering speed by adjusting PWM MAX. If it is too fast, only the soil near the sensor will be wet.
* If you want to pursue perfect watering effect, you need to bury the soil moisture sensor horizontally at the bottom of the flower pot and take waterproof measures for the sensor.
* Use 4 M2x12 screws to fix the cover, and 2 M3x8 screws to fix the water pump.
* Battery size: length 20, width 30, thickness 9mm (902030), 500mah
Menu setting instructions
* Soil moisture menu: Set the upper and lower limits of watering, the delay time for starting watering, and the delay time for stopping watering.
* Water pump menu: Set the water pump timeout (when the humidity growth rate is less than 4% and continues for the set time, it will automatically stop and sleep), set whether the water pump needs to be started smoothly, and the initial PWM value and PWM increment value of the smooth start.
* Sleep & Brightness Menu: Set sleep time, screen on time, and OLED brightness.
* Voltage & frequency menu: Set the battery low voltage alarm value, reference voltage value, PWM frequency, and PWM maximum value.
* Soil moisture calibration menu: Set the range of calibration soil moisture. It is recommended to calibrate to 10% when exposed to air and 95% when immersed in water.
* Restore factory settings: reset all parameters.
Hardware Configuration
* Powered by 500mah, 3.7V lithium battery, sleep power consumption is 0.6ma
* External OLED II2 module
* With charging, boost, LDO circuit
* With motor drive circuit
* With capacitive soil moisture sensor drive circuit
Burning instructions
1. Place the library files I provided in place
2. Method a: Use an empty chip, then use the AVR ICSP online burner or offline burner to burn boot or bootable firmware, and then use the CH340 serial port module to update the program.
Method b: Buy a UNO, upload the program, remove the chip and solder it to the watering board
Method c: Use Arduino uno as the icsp burner to burn and boot the empty chip, and then upload the program through CH340
3. To use the ch340 module update program, you need to manually reset it. Open the Arduino IDE, file-preferences-show details output-upload check, click the upload button on the main interface, and see Overriding Baud Rate: 115200 appear below, quickly press the reset button. You can update the program
All reference designs on this site are sourced from major semiconductor manufacturers or collected online for learning and research. The copyright belongs to the semiconductor manufacturer or the original author. If you believe that the reference design of this site infringes upon your relevant rights and interests, please send us a rights notice. As a neutral platform service provider, we will take measures to delete the relevant content in accordance with relevant laws after receiving the relevant notice from the rights holder. Please send relevant notifications to email: bbs_service@eeworld.com.cn.
It is your responsibility to test the circuit yourself and determine its suitability for you. EEWorld will not be liable for direct, indirect, special, incidental, consequential or punitive damages arising from any cause or anything connected to any reference design used.
Supported by EEWorld Datasheet