COURSE
3 Levels · 6 Months
Introduction to IOT
Understand the working of a 3D printer, check out the online resources. Understand what's an STL file, and then learn to slice it (using ultimaker or creality slicer).Go through the SOP'S regarding the 3d printer. Learn about bed temperature, infill density and other printer settings. Finally get an STL file from the internet, and slice it and put it for print.
Resources:
(Note this task is to be done under coordinator supervision.)
What is an API? Learn the working of an API and its applications. Using any api of your choice, build an user interface(web app, mobile app, etc), where you can make calls and then display the necessary information. An example weather app is given below, using the open weather api.
● Example
Familiarize yourself with GitHub integrated workflows (GitHub actions), Issues, and pull requests with this task. Given below is a git repository, go check it out and then perform the necessary tasks stated in the readme file.
Check this link for more info: https://github.com/UVCE-Marvel/git-task
● Create a folder named test.
● cd into that folder.
● Create a blank file without using any text editor.
● list the files in that folder
● create 2600 folders in this folder where each folder is named like . For example, M90 or B56.
● concatenate two text files containing any random text and display them on the terminal.
https://ubuntu.com/tutorials/command-line-for-beginners#1-overview
Dive into the core of machine learning by implementing Linear Regression from scratch using , and compare its performance with the scikit-learn implementation. Use the California Housing dataset to evaluate your model on real-world data.
sklearn.linear_model.LinearRegression
.Understanding :
Coding the linear regression algorithm from scratch:
Get hands-on with NumPy and Matplotlib by solving a visual puzzle. You’ll be given a scrambled matrix, and your mission is to decode it into a hidden image using NumPy operations and visualization techniques.
matplotlib.pyplot.imshow()
.Decode the Matrix using these clues and Visualize it :
"Try reshaping the encoded array into a square—how many elements are there?"
"The structure may be upright, but the data might be sideways. Look at its orientation."
"Sometimes the end is actually the beginning."
imshow()
- wrong dimensions will throw errors.Create a website to showcase your portfolio - about yourself, interests, projects, social media profiles and more. It has to be responsive and also pushed to the git repository. CSS can be of your choice and any framework can be used.
Markdown is an easy-to-use markup language that is used with plain text to add formatting elements (headings, bulleted lists, URLs) to plain text without the use of a formal text editor or the use of HTML tags. Markdown is device agnostic and displays the writing format consistently across device type. Write a technical resource article on a topic of your choice and post it on the MARVEL website. Refer to the linked article for further details
Create a tinkercad account, get familiar with the application, understand the example circuits given and simulate a simple circuit using an ultrasonic sensor to estimate the distance between an obstacle and the sensor. Display the results on the serial monitor.
Create a radar system utilising an ultrasonic sensor and servo motor to detect objects within a certain range. The ultrasonic sensor emits sound waves and measures the time taken for them to bounce back, while the servo motor rotates the sensor to cover a wider area, providing a simple yet effective detection mechanism. RESOURCE: https://youtu.be/NwmcNCvUcDc?si=x2LAYMFiqs1SzLfI TASK OUTCOME: introduction to- · TINKERCAD · Working of ultrasonic sensor and servo motor · Radar technology PRECAUTIONS/SAFETY MEASURES- NOT ANY
Explore basic techniques for controlling DC motors, understand the control DC motors using the L298N motor driver and the Arduino board. Using an UNO and H-Bridge L298N motor driver, control the speed of a 5V BO motor, try simulating this on tinkercad and then perform it on the hardware, Record videos of you doing the same.
Learn the working of an ESP32 and create a standalone web server with an ESP32 that controls the LED connected with ESP32 GPIOs. Use the arduino IDE to code and upload the program to the ESP32. Learn to configure the IDE to upload code to an ESP32.
(Soldering is to be done in presence of a coordinator)
Learn about the soldering equipment present in our lab, the solder, the soldering iron, soldering wick, flux, etc. Learn to use them and perform basic soldering on a perf board, for example a LED circuit in the presence of a coordinator and document the same.
Design a 555 astable multivibrator with duty cycle 60%, rig up the circuit on a breadboard and by using the probes observe the output of your circuit on the DSO. Resources:
● Circuit
Description: For 4 cases, based on door lock/open and key pressed/not pressed. Determine the karnaugh map and make a burglar alarm using simple logic circuits. The buzzer or led blinks when certain conditions are met, you can use push buttons for the door and key.
(Tip: use logic gates, use k-maps to figure out the working conditions.)
Take part in any technical event, inter or intra college and submit the issued certificate of participation.
Enroll for a MOOC and complete the course.
Topics: 1)MQ135 Gas sensor 2)L293D motor driver Task Description: Study the datasheet of any one of the above and write a report on it. Specify about the ICs used in L293D, PWM, H-bridge etc. In case of MQ 135, specify the calibrations for different gases and the Freundlich Absorption Theorem Graph.
Familiarise yourself with what Virtual Reality is. Make a detailed study about what's the difference between VR and AR. Mention about the trends in the space and technology stack being developed. Make about Indian companies in this space. Make the report with detail. Using generative AI to generate this study can lead to disqualification.
Sadservers is an excellent ground to test your Linux troubleshooting skills. Here is a troubleshooting scenario: Command Line Murders. Troubleshoot and Make Sad Servers Happy!
Command line murder
Linux commands
Linux commands
Using express create a resource library website where you can browse the resource articles, books etc which are available and also manage your account
Reference
Objective: Study GPIO configuration and interrupts for efficient input handling.
Description: Study and comprehend the hardware and software principles behind GPIO pin configuration, including input, output, pull-up/down resistors, and interrupt-driven event handling on the ESP32. Students will explore how interrupts optimize system responsiveness for button presses without constant polling.
Resource: Pinout of ESP32
Objective: Familiarize with the ESP32 microcontroller by creating an engaging game.
Description: Create a fun and interactive Simon Says game using an ESP32, pushbuttons, and LEDs. The game should blink the LEDs in a random sequence, and the user needs to press the corresponding buttons in the correct order. If the user fails, provide a clear indication (e.g., all LEDs flashing) and restart the game.
Resource: Modify the existing Wokwi Simulation for ESP32 compatibility.
Objective: Automate fan (DC motor) control using a temperature sensor and relay.
Description: Create an automated temperature regulation system where a DHT11 sensor continuously monitors ambient temperature, displaying readings via the serial monitor. When temperature crosses a pre-set threshold, the motor driver will signal the DC motor to turn on at the appropriate speed. This task integrates sensor data acquisition with actuator control to demonstrate real-world environmental automation concepts.
Resource: Temperature Controlled Fan
Objective: Understand IoT and Serial protocols: MQTT, HTTP, I2C, SPI.
Description: Gain theoretical knowledge of common IoT communication protocols (MQTT, CoAP, HTTP, etc.), understanding their characteristics, trade-offs, and suitable use cases.
Resources:
Objective: Utilize any MQTT platform to establish publishing and subscribing functionalities.
Description: Explore the basics of the MQTT protocol and its working. Learn about different communication and network protocols. Upon publishing a message to control LEDs, the subscribers should receive the message and activate the corresponding LED accordingly.
Example:
LED 1 ON → Turns on the first LED
LED 1 OFF → Turns off the first LED
Similarly, control LED 2 and LED 3.
Resources:
Takeaway: Understand MQTT communication and apply it to control hardware remotely.
Objective:
Description: Send data between two ESP32 boards using the I2C protocol. Display a message on an LCD screen by typing the message using a webserver hosted on the ESP32.
Takeaway: Learn wired communication between two microcontrollers using the I2C protocol.
Resource: ESP32 I2C Master and Slave
Objective:
Description: Using an ESP32, post temperature data from a sensor and soil moisture data to the ThingSpeak website using its API and display graphs:
Retrieve the data back from ThingSpeak and create a regression model.
Plot the Regression Graph:
Resources:
Takeaway: Learn to publish and retrieve data from a web server, analyze data, and apply machine learning for prediction.
Objective: Create a website that converts typed input (normal words) to Morse code. The LED should blink according to the Morse code generated.
Description: Set up an ESP32 to flash Morse code using an LED. The message is sent through a webserver hosted on the ESP32.
Resource: Morse Code with Arduino
Takeaway: Understand the application of webservers in communication.
Objective: Plot graphs of the vitals on a webserver for real-time monitoring.
Description: Measure heart rate and blood oxygen levels using the pulse sensor and display the results graphically on a webserver.
Resources:
Takeaway: Learn to monitor health vitals and display data graphically on a webserver.
Objective: Create a surveillance bot capable of capturing live video feed and remotely controlling its movements.
Description: Build a surveillance robot using an ESP32-CAM and L298N motor driver. Implement live video streaming and enable remote control functionality over Wi-Fi.
Specific Requirements:
Resource: ESP32-CAM Surveillance Robot
Takeaway: Learn video streaming, remote control, and motor driver interfacing with ESP32.
Objective: Learn about fire detection and integrating SMS alert systems using APIs.
Description: Develop a fire alarm system using the ESP32 microcontroller with fire sensors. On detecting heat, the ESP32 triggers an SMS alert using the Twilio API or any other platform.
⚠️ Important: This task must be tested under supervision due to safety precautions.
Resources:
Takeaway: Learn about fire detection and integrating SMS alert systems using APIs.
Objective: Automate plant watering based on soil moisture levels.
Description: Design a smart irrigation system using an ESP32 and a solenoid valve that waters the plant when the soil moisture content goes below a certain threshold. The system should use a relay to control the valve.
Requirements:
Resource: How to Control Solenoid Valve Using Arduino
Takeaway: Learn automated irrigation using relays and solenoid valves with ESP32.
Objective: Monitor parking space availability using ultrasonic sensors.
Description: Develop a smart parking system using an ESP32 and an ultrasonic sensor, integrating it with any IoT platform (e.g., Blynk, Rainmaker) to detect whether a car is parked in a spot.
Requirements:
Resource: Smart Parking System with Ultrasonic Sensor and Blynk
Takeaway: Learn real-time monitoring and IoT integration using the Blynk platform.
Objective: Create a Smart Street Lighting System and get real-time operational data using a Node-RED dashboard.
Description: Develop an automated street lighting system that uses:
Requirements:
Resources: Interfacing with LDR and ESP32 Interfacing Node-Red with ESP32
Takeaway: Learn how to integrate sensor fusion (LDR + PIR), automate actuation (Relay), and visualize smart infrastructure status using a live Node-RED dashboard. This task enhances understanding of real-time control systems and IoT-based urban infrastructure.
Objective: Understand RFID technology and learn to log data on cloud platforms.
Resource: ESP32 with RFID Access Control
Resource: Attendance Logger with RFID and Google Sheets
Takeaway: Understand RFID technology and learn to log data on cloud platforms.
Objective: Create a security system to detect motion, capture intruder images, and trigger an alert.
Description: Develop a house security system using:
Requirements:
Resource: ESP32-CAM Security System
Takeaway: Learn home security automation with image capturing and IoT alert systems.
Objective: Build a motion detection game using image processing and sound effects.
Description: Create a “Red Light Green Light” game inspired by Squid Game using ESP32-CAM, an image recognition model (e.g., OpenCV), and a buzzer.
Requirements:
Resources: Motion Detection with ESP32-CAM Squid Game Red Light Green Light
Takeaway: Learn computer vision, image recognition, and sound integration with ESP32.
Objective: Implement voice-controlled home automation.
Description: Build a smart home system using an ESP32 and a microphone sensor, integrated with ChatGPT or any AI model to control devices using voice commands.
Requirements:
Resources: ESP32 Voice Recognition Integrating AI with Home Automation
Takeaway: Learn voice recognition, IoT automation, and AI integration.