cover photo

COURSEWORK

Suraj's CL-CY-001 course work. Lv 1

Suraj HulagurAUTHORACTIVE
work cover photo
This Report is yet to be approved by a Coordinator.

LEVEL O REPORT

10 / 9 / 2025


TASK 2: API


What is an API?

An API (Application Programming Interface) allows two applications to talk to each other.
It works by sending a request to a server and getting a response back in JSON format.


Crypto Tracker

I built a simple Crypto Tracker Web App using the CoinGecko API.
The user can search for a cryptocurrency and get details like:

  • Price in INR
  • 24h Change (green or red)
  • Market Cap

My GitHub Repo


Screenshots

Crypto Tracker 1
Crypto Tracker 2
Crypto Tracker 3


Conclusion

This project shows how APIs bring live data into apps.
Crypto Tracker fetches and displays real-time crypto prices in INR.

TASK 3: Working with GitHub


Introduction

In this task, I learned to use GitHub workflows, including issues, pull requests, and GitHub Actions.


Repository Used

I worked on my forked repository here:
My GitHub Repo


Things done and learnt

  • Explored the given repository and followed the instructions in the README.
  • Opened a pull request after making changes.
  • Understood how GitHub Actions automate workflows.

Screenshots

GitHub Screenshot 1
GitHub Screenshot 2


Conclusion

This task helped me get hands-on experience with GitHub features like pull requests, issues, and workflows.
It gave me practical knowledge of how teams collaborate on projects using GitHub.

TASK 4: Command Line on Ubuntu


Introduction

In this task, I practiced basic command line operations on Ubuntu got familiar with navigation, file handling, and folder creation using terminal commands.


What I Did

  • Created a folder named test and navigated into it using cd and made a blank file without using vim editor.
  • Listed the files inside the folder using ls and created 2600 subfolders
  • Concatenated two text files and displayed the combined content in the terminal.

Photos

Ubuntu Terminal 1
Ubuntu Terminal 2

TASK 5: Build Your Own Brain – Linear Regression from Scratch


Introduction

In this task, I implemented Linear Regression from scratch and compared it with the scikit-learn implementation using the California Housing dataset.
The main focus was on understanding gradient descent, error minimization, and evaluating models with standard metrics.


What I Did

  • Built a custom linear regression model using gradient descent and compared it with sklearn.linear_model.LinearRegression.
  • Used performance metrics like MSE, MAE, and R² to evaluate both models and also visualized results with a line of best fit graph and datapoints.

Repository Used

My GitHub Repo


Screenshots

Linear Regression 1
Linear Regression 2
Linear Regression 3


Conclusion

This task helped me understand how gradient descent optimizes weights in linear regression.
I also learned the importance of feature scaling and saw the advantages of using built-in ML libraries for efficiency.

TASK 6: The Matrix Puzzle — Decode with NumPy & Reveal the Image


Introduction

In this task, I worked with NumPy and Matplotlib to solve a visual puzzle. The challenge was to decode a scrambled matrix and reveal the hidden image.


What I Did

  • Downloaded and explored the scrambled matrix data.
  • Used NumPy operations like reshaping, slicing, flipping, and transposing and visualized the decoded image with matplotlib.pyplot.imshow().

Repository Used

My GitHub Repo


Screenshot

Matrix Puzzle


Conclusion

This task gave me hands-on practice with NumPy array manipulation and Matplotlib visualization.

TASK 7: Create a Portfolio Webpage


Introduction

For this task, I created a portfolio website to showcase about myself, my interests, projects, and social media profiles.


Repository Link

My Portfolio GitHub Repo


Screenshots

Portfolio Screenshot 1
Portfolio Screenshot 2


Conclusion

This task helped me understand how to design and deploy a simple personal portfolio webpage using HTML, CSS, and responsiveness concepts.

TASK 8: Writing Resource Article using Markdown


Introduction

In this task, I learned how to write and format content using Markdown.Markdown makes writing easy because it uses plain text with simple symbols to add formatting like headings, lists, and links. It ensures consistent formatting across platforms.


My GitHub Repo


TASK 9: Tinkercad


Introduction

In this task, I created a Tinkercad account and got familiar with its interface. I explored example circuits and simulated a simple radar system using an ultrasonic sensor and a servo motor.


What I Did

  • Built a circuit where the ultrasonic sensor measures distance to obstacles using tinkercad and displayed results on the serial monitor.
  • Added a servo motor to rotate the sensor, creating a simple radar system.

Screenshots

Tinkercad 1
Tinkercad 2


Conclusion

This task introduced me to Tinkercad, the working of ultrasonic sensors and servo motors.

TASK 10: Speed Control of DC Motor


Introduction

This task focused on controlling the speed of a DC motor using an L298N motor driver and Arduino UNO.


What I Did

  • Connected a 5V BO motor with the L298N H-Bridge motor driver. **

Screenshots

DC Motor Control


TASK 11: LED Toggle Using ESP32


Introduction

In this task, I worked with an ESP32 to create a standalone web server that controls an LED connected to its GPIO pins.
I also learned how to configure the Arduino IDE to upload code to the ESP32.


What I Did

  • Successfully toggled the LED through a web interface.

Screenshots

ESP32 LED Toggle


Conclusion

This task gave me hands-on experience with the ESP32 board, web server setup, and controlling hardware through a browser interface.

TASK 12: Soldering Prerequisites


Introduction

In this task, I learned about the soldering equipment present in the lab such as the soldering iron, solder, wick, and flux.
I practiced how to handle them safely and performed basic soldering.


What I Did

  • Understood the use of solder and practiced soldering in the presence of a coordinator.
  • Did soldering on a BO motor and not perf board while working on Task 10 since the wires were not fixing properly.

Screenshot

Soldering


Conclusion

This task gave me hands-on exposure to soldering and helped me understand the basics of circuit assembly.

TASK 13: 555 Astable Multivibrator


Introduction

In this task, I designed a 555 astable multivibrator with a 60% duty cycle, rigged the circuit on a breadboard, and observed its output on the DSO.


What I Did

  • Built the circuit using a 555 timer IC.
  • Verified the output waveform with probes on the DSO.
  • Understood how the duty cycle and frequency can be controlled by resistors and capacitors.

Screenshots

555 Multivibrator 1
555 Multivibrator 2


Conclusion

This task helped me understand the working of the 555 timer in astable mode and its applications in waveform generation.

TASK 14: Karnaugh Maps and Deriving the Logic Circuit


Introduction

In this task, I designed a burglar alarm circuit using Karnaugh maps and logic gates theoretically and the alarm triggers based on door open/closed and key pressed/not pressed conditions.


What I Did

  • Derived the simplified logic using K-maps and built the circuit theoretically using logic gates.

Screenshot

K-map Logic Circuit


Conclusion

This task gave me practical experience in using K-maps to simplify logic and implement circuits with real components.

TASK 15: Active Participation


What I Did

  • Participated in the CTARA Hackathon and secured Runner-Up.
  • Attended the Byte and Bolt Workshop.
  • Completed the Ideation Stage in Cisco ThingQbator Cohort 8 and got selected for the Prototype stage.

Screenshots

Participation 1
Participation 2
Participation 3


TASK 16: Datasheet Report Writing – MQ135 Gas Sensor


Introduction

In this task, I studied the MQ135 gas sensor datasheet and documented its working principle, calibration, and behavior.


Click for report


Conclusion

This task improved my understanding of how to analyze sensor datasheets and interpret calibration graphs for practical applications.

TASK 17: Introduction to Virtual Reality


Introduction

In this task, I learnt what Virtual Reality (VR) is and how it is different from Augmented Reality (AR).
I got the chance to experience VR using the headset available in MARVEL and understood the concepts better through explanations given by the MARVEL coordinators.


VR vs AR

  • Virtual Reality (VR): Creates a completely digital environment that replaces the real world. A headset is used to enter this immersive space.
  • Augmented Reality (AR): Adds digital elements on top of the real world. For example, AR can show digital objects through a phone camera while still seeing the surroundings.

Current Trends

  • VR is being used in gaming, education, healthcare, and simulations.
  • AR is popular in retail, navigation, and training applications.
  • Technology stacks are evolving with lighter headsets, better graphics, and 5G-enabled experiences.

Conclusion

This task helped me understand how VR and AR differ, where they are being used, and how Indian companies are contributing to this field.
By actually using a VR headset at MARVEL, I could connect theory with real experience.

TASK 18: Sad Servers – Troubleshooting on Linux


Introduction

This task was about using Sad Servers, which is like LeetCode but for Linux troubleshooting.
The aim was to solve a scenario called Command Line Murders and fix the issues to make the server “happy”.


What I Did

  • Explored the given Linux server environment.
  • Used command line tools to find and fix the problems.
  • Followed the process step by step to complete the troubleshooting task.

Screenshots

Sad Servers 1
Sad Servers 2


Conclusion

This task improved my Linux troubleshooting skills and taught me how to carefully analyze errors in a server environment.
It was a fun and challenging way to practice problem solving on Linux.

TASK 19: Make a Web App


Introduction

For this task, I built a Resource Library Web App using Express.
The app allows users to add and browse resources such as articles and books.
It is simple, minimal, and built to demonstrate how Express can be used for building web applications.


Repository Link

Resource Library GitHub Repo


Screenshot

Resource App Screenshot


UVCE,
K. R Circle,
Bengaluru 01