-
Notifications
You must be signed in to change notification settings - Fork 877
Update README.md #56
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Update README.md #56
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| @@ -1,37 +1,59 @@ | ||||||
|
|
||||||
| <img width="3188" height="1202" alt="frame (3)" src="https://github.com/user-attachments/assets/517ad8e9-ad22-457d-9538-a9e62d137cd7" /> | ||||||
|
|
||||||
|
|
||||||
| # [Project Name] 🎯 | ||||||
| # Abnormal Water Dispenser 🎯 | ||||||
|
|
||||||
|
|
||||||
| ## Basic Details | ||||||
| ### Team Name: [Name] | ||||||
| ### Team Name: BIT JUNKIES | ||||||
|
|
||||||
|
|
||||||
| ### Team Members | ||||||
| - Team Lead: [Name] - [College] | ||||||
| - Member 2: [Name] - [College] | ||||||
| - Member 3: [Name] - [College] | ||||||
| - Team Lead: JOE RAPHAEL JOSHY - CE VADAKARA | ||||||
| - Member 2: VIMAL DEV AS - CE VADAKARA | ||||||
|
|
||||||
| ### Project Description | ||||||
| [2-3 lines about what your project does] | ||||||
| This is a playful and impractical water dispenser that only works when your mug is held upside down. Instead of filling your cup normally, it challenges common sense by activating the water flow only in the least useful position possible, making it a perfect example of a “useless” engineering concept. Built purely for humor and curiosity, it’s a fun reminder that not all inventions are meant to be practical. | ||||||
|
|
||||||
| ### The Problem (that doesn't exist) | ||||||
| [What ridiculous problem are you solving?] | ||||||
|
|
||||||
| “People have had it far too easy filling cups the right way up. The world desperately needs a device that challenges basic logic and tests patience. By creating a water dispenser that only works when your mug is upside down, we solve the non-existent problem of making hydration inconvenient, messy, and mildly absurd.” | ||||||
| ### The Solution (that nobody asked for) | ||||||
| [How are you solving it? Keep it fun!] | ||||||
|
|
||||||
| “I’m solving it by building a high-tech, logic-defying dispenser that uses sensors to detect when your mug is upside down—only then will it graciously unleash a refreshing stream of water… straight onto the floor. It’s the perfect mix of engineering skill and complete uselessness.” | ||||||
| ## Technical Details | ||||||
| ### Technologies/Components Used | ||||||
| For Software: | ||||||
| - [Languages used] | ||||||
| - [Frameworks used] | ||||||
| - [Libraries used] | ||||||
| - [Tools used] | ||||||
| - C++ | ||||||
| - AURDINO UNO | ||||||
| - Servo.h – To control a servo motor that opens/closes the water valve. | ||||||
|
|
||||||
| LiquidCrystal.h (optional) – If you want an LCD display to show fun messages. | ||||||
|
|
||||||
| Wire.h – For I²C communication (used if your LCD or sensors require it). | ||||||
|
|
||||||
| Adafruit_Sensor.h – If you’re using certain orientation or tilt sensors. | ||||||
|
|
||||||
| Adafruit_MPU6050.h or MPU6050.h – For detecting if the mug is upside down using a gyroscope/accelerometer sensor. | ||||||
| - Multimeter – For checking voltages and connections. | ||||||
|
|
||||||
| Screwdriver / Wire Cutter / Stripper – For preparing and assembling parts. | ||||||
|
|
||||||
| Soldering Kit – Only if you need permanent connections. | ||||||
|
|
||||||
|
|
||||||
|
|
||||||
| For Hardware: | ||||||
| - [List main components] | ||||||
| - For your **ultrasonic sensor + servo motor** project, here’s a short and catchy tagline: | ||||||
|
|
||||||
| **"Smart Motion, Precise Action."** | ||||||
|
|
||||||
| Or, if you want it to sound more fun and attention-grabbing: | ||||||
|
|
||||||
| **"Detect. Decide. Move."** | ||||||
|
|
||||||
| I can also give you **5 more creative options** tailored to your project if you want it to stand out in a presentation or poster. | ||||||
| Do you want them in a **serious** tone or a **fun** tone? | ||||||
|
|
||||||
| - [List specifications] | ||||||
| - [List tools required] | ||||||
|
|
||||||
|
|
@@ -41,13 +63,68 @@ For Software: | |||||
| [commands] | ||||||
|
|
||||||
| # Run | ||||||
| [commands] | ||||||
| #include <Servo.h> | ||||||
|
|
||||||
| Servo myServo; | ||||||
|
|
||||||
| // Ultrasonic Sensor Pins | ||||||
| const int trigPin = 9; | ||||||
| const int echoPin = 10; | ||||||
|
|
||||||
| // Servo positions | ||||||
| int servoHome = 90; // Center position | ||||||
| int servoRotate = 0; // 90° anticlockwise | ||||||
|
|
||||||
| void setup() { | ||||||
| myServo.attach(3); // Servo signal pin | ||||||
| pinMode(trigPin, OUTPUT); | ||||||
| pinMode(echoPin, INPUT); | ||||||
|
|
||||||
| myServo.write(servoHome); // Start at home position | ||||||
| Serial.begin(9600); | ||||||
| } | ||||||
|
|
||||||
| void loop() { | ||||||
| long duration; | ||||||
| float distance; | ||||||
|
|
||||||
| // Trigger the ultrasonic pulse | ||||||
| digitalWrite(trigPin, LOW); | ||||||
| delayMicroseconds(2); | ||||||
| digitalWrite(trigPin, HIGH); | ||||||
| delayMicroseconds(10); | ||||||
| digitalWrite(trigPin, LOW); | ||||||
|
|
||||||
| // Read echo pulse | ||||||
| duration = pulseIn(echoPin, HIGH); | ||||||
|
|
||||||
| // Convert to centimeters | ||||||
| distance = duration * 0.034 / 2; | ||||||
|
|
||||||
| Serial.print("Distance: "); | ||||||
| Serial.print(distance); | ||||||
| Serial.println(" cm"); | ||||||
|
|
||||||
| if (distance > 0 && distance < 10) { | ||||||
| // Object is closer than 10 cm | ||||||
| myServo.write(servoRotate); | ||||||
| } | ||||||
| else if (distance >= 10) { | ||||||
| // Object is farther than or equal to 10 cm | ||||||
| myServo.write(servoHome); | ||||||
| } | ||||||
|
|
||||||
| delay(100); | ||||||
| } | ||||||
|
Comment on lines
+66
to
+118
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🛠️ Refactor suggestion Fence Arduino code and handle no-echo edge case; fixes MD018 and improves robustness Without code fences, “#include” is parsed as a heading (MD018). Also add a pulseIn timeout and handle the “no echo” case to avoid the servo getting stuck. -#include <Servo.h>
+```cpp
+#include <Servo.h>
Servo myServo;
// Ultrasonic Sensor Pins
const int trigPin = 9;
const int echoPin = 10;
// Servo positions
int servoHome = 90; // Center position
int servoRotate = 0; // 90° anticlockwise
void setup() {
myServo.attach(3); // Servo signal pin
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
myServo.write(servoHome); // Start at home position
Serial.begin(9600);
}
void loop() {
long duration;
float distance;
// Trigger the ultrasonic pulse
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// Read echo pulse
- duration = pulseIn(echoPin, HIGH);
+ duration = pulseIn(echoPin, HIGH, 30000UL); // ~30ms timeout (~5m range)
+ if (duration == 0) {
+ // No echo within timeout; keep servo in safe/home position
+ myServo.write(servoHome);
+ delay(100);
+ return;
+ }
// Convert to centimeters
distance = duration * 0.034 / 2;
Serial.print("Distance: ");
Serial.print(distance);
Serial.println(" cm");
if (distance > 0 && distance < 10) {
// Object is closer than 10 cm
myServo.write(servoRotate);
}
else if (distance >= 10) {
// Object is farther than or equal to 10 cm
myServo.write(servoHome);
}
delay(100);
-}
+}
+```🧰 Tools🪛 markdownlint-cli2 (0.17.2)66-66: No space after hash on atx style heading (MD018, no-missing-space-atx) 🤖 Prompt for AI Agents |
||||||
| This project intentionally defies logic by requiring the least practical condition (an upside-down mug) for operation. While it serves no functional purpose in real-world water dispensing, it successfully demonstrates creativity, sensor integration, and actuator control in a humorous and engaging way. | ||||||
|
|
||||||
|
|
||||||
|
|
||||||
| ### Project Documentation | ||||||
| For Software: | ||||||
|
|
||||||
| # Screenshots (Add at least 3) | ||||||
|  | ||||||
| ![Screenshot1][(Add screenshot 1 here with proper name)](https://drive.google.com/file/d/1CbRRszoM5N_8_yfXOdfnRAZofcMpY7E_/view?usp=drivesdk) | ||||||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Fix malformed image markdown Current syntax mixes two link styles and won’t render. Use standard inline image format. -![Screenshot1][(Add screenshot 1 here with proper name)](https://drive.google.com/file/d/1CbRRszoM5N_8_yfXOdfnRAZofcMpY7E_/view?usp=drivesdk)
+📝 Committable suggestion
Suggested change
🤖 Prompt for AI Agents |
||||||
| *Add caption explaining what this shows* | ||||||
|
|
||||||
|  | ||||||
|
|
@@ -63,7 +140,7 @@ For Software: | |||||
| For Hardware: | ||||||
|
|
||||||
| # Schematic & Circuit | ||||||
|  | ||||||
| (https://drive.google.com/file/d/1EgPqHo0GpD2PC7TC87tnEJEGSm_znDTC/view?usp=drivesdk) | ||||||
| *Add caption explaining connections* | ||||||
|
|
||||||
|  | ||||||
|
|
@@ -81,7 +158,7 @@ For Hardware: | |||||
|
|
||||||
| ### Project Demo | ||||||
| # Video | ||||||
| [Add your demo video link here] | ||||||
| [[Add your demo video link here]](https://drive.google.com/file/d/1d9FXFFxkHVLNAydoRXGU93XNBtn-Fnr8/view?usp=drivesdk) | ||||||
| *Explain what the video demonstrates* | ||||||
|
|
||||||
| # Additional Demos | ||||||
|
|
@@ -97,6 +174,3 @@ Made with ❤️ at TinkerHub Useless Projects | |||||
|
|
||||||
|  | ||||||
|  | ||||||
|
|
||||||
|
|
||||||
|
|
||||||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🛠️ Refactor suggestion
Replace taglines under “Hardware” with actual component list
Taglines don’t belong under a hardware bill-of-materials. Move them to a “Taglines”/“Presentation” section and list the physical components here.
📝 Committable suggestion
🧰 Tools
🪛 markdownlint-cli2 (0.17.2)
48-48: Emphasis used instead of a heading
(MD036, no-emphasis-as-heading)
52-52: Emphasis used instead of a heading
(MD036, no-emphasis-as-heading)
🤖 Prompt for AI Agents