This Report is yet to be approved by a Coordinator.
16 / 9 / 2025
Deekshith A | CSE | Batch 28’
TASK:API
Weather API CLI Tool
1. Introduction
In this task, I created a simple command-line tool in Python to fetch real-time weather information of a given city.
The program uses an external Weather API and displays details like temperature, weather condition, and wind speed.
2. API Used
- I used the WeatherAPI.com service: https://www.weatherapi.com
 
- The API requires a key for authentication.
 
- Data is returned in JSON format, which the program parses to extract useful information.
 
3. Working of the CLI Tool
- The user enters the city name as an argument when running the script.
 
- The tool sends an HTTP request to the WeatherAPI service.
 
- The API responds with the current weather information.
 
- The program prints details like:
- Location and country
 
- Temperature in Celsius
 
- Weather condition (e.g., clear, cloudy)
 
- Wind speed
 
 
4. Example Code Snippet
parser = argparse.ArgumentParser(description="Simple Weather CLI Tool")
parser.add_argument("--city", required=True, help="City name")
args = parser.parse_args()
get_weather(args.city)
This part of the code ensures that the user must provide a city name when running the program.
Python File

Task: Working with Github
In this task, I worked with GitHub workflows and collaboration features.
I successfully completed all the required steps as mentioned in the repository’s README file.
Key Activities Performed
- GitHub Actions
- Learned how automated workflows are triggered and executed.
 
 
- Issues
- Created and managed issues to track tasks and improvements.
 
 
- Branches and Pull Requests (PRs)
- Worked with branches and raised a Pull Request to contribute changes.
 
 
- Review and Merge Process
- Understood how code reviews and merges are carried out, which is central to collaborative development.
 
 
Fork

Pull Request

Task: Get familiar with the command line on ubuntu and do the following subtasks
In this task, I worked with the Ubuntu command line and practiced basic shell commands.
I successfully completed all the subtasks mentioned.
Key Activities Performed
- 
Folder Creation
- Created a folder named 
test using the mkdir command. 
- Used 
cd to navigate into the folder. 
 
- 
File Operations
- Created a blank file without using a text editor by running:
touch file1.txt
 
- Verified its existence using the 
ls command. 
 
- 
Bulk Folder Creation
- Created 2600 folders inside 
test, each with a unique name (e.g., M90, B56) using a loop in the terminal:
touch {A..Z}{1..100}
 
 
- 
File Concatenation
- Created two text files with random content.
 
- Concatenated them and displayed the output using:
cat file1.txt file2.txt
 
 

Task:The Matrix Puzzle — Decode with NumPy & Reveal the Image
In this task, I worked with NumPy and Matplotlib to solve a visual puzzle.
I successfully manipulated the scrambled matrix and revealed the hidden image by using array operations and plotting techniques.
Key Activities Performed
- 
Matrix Loading and Reshaping
- Loaded the scrambled matrix from the provided file.
 
- Used NumPy functions to reshape the array into a square matrix.
 
 
- 
Array Manipulation
- Applied NumPy operations such as 
reshape(), transpose(), and slicing to reorient the data. 
- Corrected the orientation of the matrix by checking the image from different perspectives.
 
 
- 
Visualization with Matplotlib
- Used 
matplotlib.pyplot.imshow() to display the decoded matrix as an image. 
 
- 
Decoding the Hidden Image
- Applied the hints:
- Reshaped into a square.
 
- Adjusted orientation to make the image upright.
 
- Reversed the matrix where necessary to reveal the final image.
 
 
 
Python Script

Task:Portfolio Webpage
In this task, I created a personal portfolio website to showcase my profile, interests, and projects.
The website was built with HTML, CSS, Javascript and made responsive using modern design practices.
It was also pushed to a GitHub repository for version control and deployment.
LINK:Portfolio
Key Activities Performed
- 
Website Structure
- Designed multiple sections including:
- About Me – introduction and background.
 
- Projects – descriptions and links to my work.
 
- Social Media Links – GitHub, LinkedIn, etc.
 
 
 
- 
Responsive Design
- Implemented responsiveness using Tailwind CSS
 
- Ensured the website works on both desktop and mobile devices.
 
 
- 
Styling and UI
- Applied custom CSS to improve readability and visual appeal.
 
- Used consistent fonts, spacing, and color schemes.
 
- Javascript for the background live animation.
 
 
- 
Version Control and Deployment
- Initialized a Git repository for the project.
 
- Pushed the code to GitHub and vercel was used for hosting and collaboration.
 
 




Task:Writing Resource Article using Markdown
In this task, I learned how to write a technical resource article using Markdown.
I chose the topic Social Engineering and prepared an article explaining the concept, common attack methods, real-world examples, and safety tips.
Key Activities Performed
- 
Markdown Writing
- Used Markdown syntax to create headings, lists, and emphasize key terms.
 
- Ensured the article was structured with sections like Introduction, Tricks, Examples, and Safety Tips.
 
 
- 
Technical Content Creation
- Researched the topic of Social Engineering.
 
- Summarized key points in a simple, easy-to-read format.
 
 
- 
Formatting & Publishing
- Verified that the Markdown format displays consistently across devices.
 
- Posted the completed article on the MARVEL website as instructed.
 
 
REPORT
Task:Thinkercad
In this task, I created and simulated circuits using Tinkercad, gaining hands-on experience with basic electronic components and Arduino programming.
I successfully built a simple ultrasonic distance measurement circuit and then extended it to a radar system with a servo motor.
Key Activities Performed
- 
Getting Started with Tinkercad
- Created an account and explored the example circuits provided.
 
- Learned how to place components, connect them with wires, and program the Arduino.
 
 
- 
Ultrasonic Distance Measurement
- Built a circuit using an HC-SR04 ultrasonic sensor.
 
- Programmed the Arduino to calculate the distance of an obstacle using the time taken for sound waves to return.
 
- Displayed the measured distance on the serial monitor.
 
 
- 
Radar System Simulation
- Added a servo motor to rotate the ultrasonic sensor.
 
- Wrote code to move the servo gradually, allowing the sensor to scan across angles.
 
- Used the ultrasonic sensor readings to simulate a radar system that detects obstacles within range.
 
 
Precautions / Safety Measures
- Since this was a virtual simulation in Tinkercad, no physical safety concerns were involved.
 

Task:Speed Control of DC Motor
In this task, I explored different techniques to control the speed of a DC motor using an Arduino UNO and an L298N H-Bridge motor driver.
I first simulated the setup in Tinkercad and then implemented it on actual hardware with a 5V BO motor.
Key Activities Performed
- 
Understanding Motor Control
- Learned the role of the H-Bridge (L298N) in controlling the direction and speed of a DC motor.
 
- Understood how PWM (Pulse Width Modulation) signals from the Arduino can vary the motor’s speed.
 
 
- 
Simulation in Tinkercad
- Built a virtual circuit with Arduino UNO, L298N driver, and a 5V BO motor.
 
- Wrote Arduino code to send PWM signals to the Enable pin of the L298N.
 
- Verified motor speed control by adjusting the duty cycle in simulation.
 
 
- 
Hardware Implementation
- Connected the Arduino UNO with the L298N motor driver and BO motor on breadboard/hardware setup.
 
- Uploaded the same Arduino code to test motor speed control physically.
 
- Recorded videos of the working circuit to demonstrate the results.
 
 

Task:LED Toggle Using ESP32
In this task, I learned the basics of working with the ESP32 microcontroller and created a standalone web server to control an LED connected to its GPIO pins.
I used the Arduino IDE to write and upload the code, after configuring it for ESP32 support.
Key Activities Performed
- 
ESP32 Setup
- Installed the ESP32 board package in the Arduino IDE.
 
- Configured the IDE with the correct board and COM port to enable code uploading.
 
 
- 
Circuit and LED Control
- Connected an LED to one of the ESP32 GPIO pins with a current-limiting resistor.
 
- Wrote code to toggle the LED state (ON/OFF).
 
 
- 
Web Server Implementation
- Created a standalone web server hosted on the ESP32.
 
- Designed a simple webpage with buttons to turn the LED ON and OFF.
 
- Accessed the ESP32 server through the local network using its IP address.
 
 
- 
Testing
- Uploaded the program to the ESP32.
 
- Controlled the LED from a web browser using the ESP32’s hosted page.
 
 
.ino file


Task:Soldering Prerequisites
In this task, I learned about the soldering equipment available in the lab and performed basic soldering under the supervision of a coordinator.
I practiced soldering a simple LED circuit on a perf board using the standard tools.
Key Activities Performed
- 
Familiarization with Equipment
- Learned the use of the soldering iron, solder wire, soldering wick, and flux.
 
- Understood the safety precautions necessary while handling hot soldering tools.
 
 
- 
Basic Soldering Practice
- Used a perf board to build a simple LED circuit.
 
- Applied flux and solder to make clean joints between the LED, resistor, and connecting wires.
 
- Learned how to correct mistakes using the soldering wick.
 
 
- 
Supervised Hands-On Session
- All soldering was performed under the guidance of a coordinator to ensure safety.
 
- Gained confidence in handling soldering equipment properly.
 
 

Task:Active Participation
In this task, I fulfilled the Active Participation requirements by attending a technical event and documenting the certificate of participation.
Event Attended
- Positive Hack Talks @ Bengaluru conducted by Positive Technologies — an in-person meetup focused on offensive and defensive security, bug hunting, and the latest cybersecurity topics.
More details: Positive Hack Talks – Bengaluru 
Key Activities Performed
- Registered for and attended the Positive Hack Talks event in Bengaluru.
 
- Listened to expert talks, participated in discussions and networked with cybersecurity professionals.
 
- Obtained the certificate of participation as proof of my attendance.
 
Learning Outcome
Through this activity, I learned:
- The importance of staying up to date with current trends in cybersecurity.
 
- How attending professional events helps in networking and gaining exposure to advanced topics.
 
- The value of applying what I learn in papers or talks to my technical and academic work.
 


Continued