cover photo

COURSEWORK

Neelesh's AI-ML-001 course work. Lv 1

Neelesh Gowda.H.M.AUTHORACTIVE
work cover photo
This Report is yet to be approved by a Coordinator.

16 / 3 / 2026


Task 1: 3D Printing

Objective

The objective of this task was to understand the working principles of a 3D printer and gain basic knowledge about the 3D printing process.

What I Did

I studied the basic working of a 3D printer through the provided resources and online materials. I learned that 3D printing is an additive manufacturing process where objects are created layer by layer using thermoplastic materials such as PLA.

Conclusion

Through this task, I gained an understanding of the complete 3D printing workflow, including model preparation, slicing, and printer configuration. This activity helped me learn the importance of proper settings and file formats in successfully printing a 3D object.


Task 2: Working with APIs

Objective

The objective of this task was to understand what an API (Application Programming Interface) is and how it allows different software systems to communicate with each other.

What I Did

I built a website which gives some basic information of the country which had been given by user as input using API keys Country details

API

Outcome

Through this task, I learned how APIs enable communication between applications and how to fetch and display external data within a user interface.


Task 3: Working with Github

Objective

The objective of this task was to understand the basic workflow of GitHub, including repositories, issues, pull requests, and GitHub Actions.

What I Did

I visited the provided GitHub repository and carefully followed the instructions mentioned in the README file. I explored the repository structure and understood how pull requests are used to propose changes. I also observed how GitHub Actions can automate workflows within a repository.

Updated main

Corrected code

What I Learnt / Outcome

Through this task, I learnt how GitHub supports collaborative development using version control. I gained an understanding of issues for tracking tasks, pull requests for proposing changes, and GitHub Actions for workflow automation.


Task 4: Command Line Basics in Ubuntu

Objective

The objective of this task was to become familiar with the Ubuntu command line interface and understand basic terminal commands used for file and directory management.

What I Did

I opened the Ubuntu terminal and created a folder named test using the mkdir command. Then I navigated into the folder using the cd command. Inside the folder, I created a blank file without using a text editor and listed the contents using the ls command.I then created two text files with random content and concatenated them using the cat command to display the combined output on the terminal.Finally I generated 2600 folders with different names.

making directory


Creating files


Creating files

What I Learnt / Conclusion

Through this task, I learned how to perform basic file and directory operations using the Ubuntu command line. I understood commands such as mkdir, cd, touch, ls, and cat, which are essential for working efficiently in a Linux environment.


Task 5: Linear Regression from Scratch

Objective

The objective of this task was to understand the fundamental concepts of linear regression by implementing the algorithm from scratch using Python.

What I Did

I downloaded the California Housing dataset and preprocessed it by normalizing the features. I then implemented linear regression from scratch using Python and applied gradient descent to update the weights and bias to minimize the error.

Linear regression graph

Code

What I Learnt / Outcome

Through this task, I learned how linear regression works internally and how gradient descent helps optimize model parameters. I also understood the importance of feature scaling and learning rate selection. Comparing the custom implementation with the scikit-learn model helped me appreciate the efficiency and convenience of machine learning libraries.


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

Objective

The objective of this task was to gain practical experience with NumPy and Matplotlib by decoding a scrambled matrix and revealing a hidden image.

What I Did

I downloaded the scrambled matrix and loaded it into a Python environment using NumPy. Using NumPy operations such as transpose, flip, and slicing, I manipulated the matrix to correct its orientation. After decoding the matrix structure, I used matplotlib.pyplot.imshow() to visualize the matrix and reveal the hidden image.

NUMPY

What I Learnt / Outcome

Through this task, I learned how to effectively use NumPy operations like reshaping, transposing, and flipping arrays. I also gained experience in visualizing 2D data using Matplotlib and understood how debugging and logical reasoning can help solve data manipulation problems.


Task 7: Portfolio Webpage

Objective

The objective of this task was to design and develop a personal portfolio website that showcases information about myself, including projects, and social media profiles.

What I Did

I created a portfolio website using HTML, CSS, and a responsive design approach. The webpage included sections such as About Me, Projects, and Contact Links. I styled the webpage using CSS to make it visually appealing and ensured that it was responsive so that it works well on both desktop and mobile devices.

My Portfolio

What I Learnt / Outcome

Through this task, I learned how to structure and design a responsive webpage using HTML and CSS. I also understood the importance of organizing content effectively in a portfolio website.


Task 8: Writing a Resource Article using Markdown

Objective

The objective of this task was to learn how to use Markdown for writing technical content in a simple and structured format. The task aimed to understand how Markdown can be used to format text using headings, lists, links, and other elements while maintaining readability across different platforms and devices.

What I Did

I selected a technical topic i.e on AI and wrote a resource article using Markdown syntax. After completing the article, I reviewed it for clarity and proper formatting.

Research Article


What I Learnt

Through this task, I learned how Markdown simplifies the process of writing formatted technical documents. I also understood how to organize technical information clearly using Markdown syntax. Additionally, I gained experience in preparing content suitable for publishing on a web platform.


Task 9: Tinkercad – Ultrasonic Sensor and Radar System

Objective

The task aimed to understand the working of an ultrasonic sensor and a servo motor by creating a simple distance measurement circuit and a basic radar system simulation.

What I Did

I designed a radar system using an ultrasonic sensor and a servo motor where the servo rotates the sensor to scan a wider area and detect objects within a certain range.

Tinkercad Simulation

Outcome

Through this task, I learned how to use Tinkercad for circuit design and simulation. I also understood the working principles of ultrasonic sensors and servo motors, and how they can be combined to create a simple radar detection system.


Task 10: Speed Control of DC Motor

Objective

The objective of this task was to understand the basic techniques used for controlling the speed of a DC motor using an Arduino Uno and an L298N motor driver module.

What I Did

I studied the working of the L298N motor driver and its interface with the Arduino Uno. First, I simulated the circuit on Tinkercad by connecting the Arduino, L298N driver, and a 5V BO motor. I then wrote and uploaded the Arduino code to control the motor speed using PWM signals.I implemented the circuit on hardware and tested the speed control of the motor. I also recorded videos demonstrating the working setup.

Working DC

Code

Outcome

Through this task, I understood how DC motor speed can be controlled using PWM signals from the Arduino. I also learned how to interface the L298N motor driver with the Arduino and successfully control the motor both in simulation and on actual hardware.


Task 11: LED Toggle Using ESP32

Objective

The objective of this task was to understand the working of the ESP32 microcontroller and learn how to create a simple standalone web server using it. The task also aimed to control an LED connected to the ESP32 GPIO pins through a web interface using code written and uploaded via the Arduino IDE.

What I Did

I first studied the basic features of the ESP32 and configured the Arduino IDE to support ESP32 boards. Then I connected an LED to one of the ESP32 GPIO pins and wrote a program that creates a simple web server when the ESP32 connects to a Wi-Fi network. Through the web page hosted by the ESP32, I was able to toggle the LED ON and OFF using buttons. The code was uploaded using the Arduino IDE and the output was monitored through the serial monitor.

LED Toggle

Code

Outcome

Through this task, I learned how to configure the Arduino IDE for ESP32 development and create a basic web server. I also understood how GPIO pins can be controlled through a web interface to toggle an LED remotely.


Task 12: Soldering Prerequisites

Objective

The objective of this task was to learn the basics of soldering and become familiar with the soldering equipment available in the lab. The task aimed to understand how components are permanently connected on a circuit board using tools such as a soldering iron, solder wire, flux, and soldering wick.

What I Did

I first learned about the different soldering tools present in the lab, including the soldering iron, solder wire, flux, and soldering wick. Under the supervision of a coordinator, I practiced basic soldering techniques on a perf board.

Soldering

Outcome

Through this task, I learned how to safely use soldering equipment and perform basic soldering.


Domain Specific Tasks


Task 21: Watch & Reflect - Intro to Machine Learning

Objective

To know about what is Machine Learning

Article and Continued report

UVCE,
K. R Circle,
Bengaluru 01