Difference between revisions of "BeagleBoard/GSoC/2022 Proposal/Building Bela Images"
Krvprashanth (talk | contribs) m (→About your project) |
Krvprashanth (talk | contribs) |
||
Line 40: | Line 40: | ||
===Description=== | ===Description=== | ||
− | + | ====Project Abstract==== | |
+ | Bela is an open hardware and software platform for ultra-low latency audio and sensor processing. The main goal of this project is to Improve the maintainability of the Bela Image development by adding the functionalities of the Bela Image builder repo to the BeagleBoard Image builder repo. | ||
+ | ====Overview of Bela Platform==== | ||
+ | ====Basic Overview of Building Embedded Linux Distributions==== | ||
+ | |||
+ | ====Why Building Bela Image again?==== | ||
+ | ====Tech Stack==== | ||
===Proposed method of Implementation=== | ===Proposed method of Implementation=== | ||
+ | |||
===Timeline=== | ===Timeline=== | ||
I plan to complete all the tasks before the GSoC 2022 coding period ends. Apart from this, I’ll write blogs weekly, reporting my progress and also the experiences I had while contributing this project. | I plan to complete all the tasks before the GSoC 2022 coding period ends. Apart from this, I’ll write blogs weekly, reporting my progress and also the experiences I had while contributing this project. |
Revision as of 01:43, 9 April 2022
Contents
Proposal-Building Bela Images
[Youtube Video]
About
Student: Kurva Prashanth
Mentors: Giulio Moro
Code: https://github.com/BelaPlatform/bela-image-builder https://github.com/beagleboard/image-builder
Wiki: https://elinux.org/BeagleBoard/GSoC/2022_Proposal/Building_Bela_Images
GSoC: [GSoC entry]
Status
This project is currently just a proposal.
Proposal
Completed all the requirements listed on the ideas page.
The code for the cross-compilation task can be found here submitted through pull request #161.
About you
IRC Nick: krvprashanth
Matrix: @krvprashanth:matrix.org
Github: https://github.com/krvprashanth
Gitlab: https://code.swecha.org/krvprashanth
School: Vidya Jyothi Institute of Technology
Country: India
Primary language: English, Telugu
Typical work hours: 6AM-11AM, 4PM-10PM (UTC +5:30)
Previous GSoC participation: First time applying for GSOC.
About your project
Project name: Building Bela Images
Project Outcomes:
- Semantic rebase of the functionalities of the Bela-Image-builder repo to the Image-builder one.
- Add features of the Bela-Image-builder repo to Image-builder repo.
- Improve the maintainability of the Bela Image Development and minimise future development effort.
Description
Project Abstract
Bela is an open hardware and software platform for ultra-low latency audio and sensor processing. The main goal of this project is to Improve the maintainability of the Bela Image development by adding the functionalities of the Bela Image builder repo to the BeagleBoard Image builder repo.
Overview of Bela Platform
Basic Overview of Building Embedded Linux Distributions
Why Building Bela Image again?
Tech Stack
Proposed method of Implementation
Timeline
I plan to complete all the tasks before the GSoC 2022 coding period ends. Apart from this, I’ll write blogs weekly, reporting my progress and also the experiences I had while contributing this project.
During the GSoC 2022 coding period, I’ll do the following things:
- Discuss ideas with the mentors, take feedback and work on
- On an average i will be able to dedicate 30 to 35 hours per week
- I'm ready to adapt whatever my mentor suggests me and i'll try my best to complete proposed work
- Find other features to be added to the Bela Image
The GSoC official coding period begins on June 13, 2022, and ends on November 21, 2022.
NOTE : I plan to do most of the work in the second half of the coding period due to my semester exams in June for a maximum period of two weeks. I can’t work during the exam period. I’ll make sure to compensate for this by putting extra hours in the remaining period.
April 4 - 18:00 UTC | Applications open, Students register with GSoC, work on proposal with mentors | |
April 19 - 18:00 UTC | Proposal complete, Submitted to https://summerofcode.withgoogle.com | |
May 20 | Proposal accepted or rejected | |
Jun 13 | Pre-work complete, Coding officially begins! | |
Jun 20 | Milestone #1 | |
June 27 | Final Exam | No Code |
July 4 | Final Exam | No Code |
July 11 | Milestone #2 | |
July 25 | Milestone #3 | |
July 29 - 18:00 UTC | Phase 1 Evaluation deadline | |
Aug 01 | Milestone #4 | |
Aug 08 | Milestone #5 | |
Aug 15 | Milestone #6 | |
Aug 22 | Milestone #7 | |
Aug 29 | Milestone #8 | |
September 5 - 12, 18:00 UTC | Final week: GSoC contributors submit their final work product and their final mentor evaluation | |
September 12 - 19, 18:00 UTC | Mentors submit final GSoC contributor evaluations | |
Nov 21 - 18:00 UTC | Final date for all GSoC contributors to submit their final work product |
Experience and approach
To work on this project, it requires experience with bash scripting, build systems and linux management. I have an experience with Debian live build system and customized my low end machine with robotics and networking packages in which it has 2GB RAM and 30GB hard disk installed Debian 11 "Bullseye" with XFCE Desktop environment on it and I'm just curious to work on low end hardware, optimise software to make run very well on resource constrained devices.
I’m mostly into Systems Programming, Embedded Linux, and Robotics. I use programming languages such as Assembly (x86, RISC-V), C, C++, Python and shell scripting for Installing different packages and applications which I use. I prefer to work in a terminal over GUI and also mostly I use robotics, networking, embedded linux development tools like cross-compiler toolchains, emulators, Assemblers, Debugger, mininet, ns3, ROS, OpenCV, Wireshark, etc.
I also write good reports and blogs, I’ve previously written some blogs about free software and open hardware and experiences I had. Check here
- Contributions
Here are technical and non-technical ways where I contributed.
- Hacktivist: Actively contributing to free software projects, gave talks on Free Software & Open Hardware, Git, Mobile & Desktop Freedom, Dark Patterns
- Speaker, International Debian Conference 2021
- Designed, optimized, and sliced 3D models and maintained production line of 3D printed projects and open hardware prototyping equipment.
- In Mobile Autonomous Cart project using ROS + Docker, development tools to advance robotic software design and deployment by utilizing advances in Linux containers.
- Organised Debian Bullseye Release Party
- Course Manager and Teaching Assistant for Liberating Devices course ( Mobile & Desktop Freedom )
- Utilized Android Tools ( adb, fastboot ), Bash scripts and command-line tools to remove proprietary malware from mobiles/watches and desktops.
- Porting and Enabling the Government School Computer labs in our locality to specific use of free softwares and Installing BalaSwecha OS( A GNU/Linux distribution based on Debian ).
Contingency
If I get stuck on my project and my mentor isn’t around, I will use the following resources:
- Ask on the Bela and BeagleBoard forum
- BelaPlatform Repositories:
- Documentation and Repositories on Building Images:
- Beagleboard: BeagleBoneBlack Rebuilding Software Image
- https://rcn-ee.com/
- https://github.com/RobertCNelson/omap-image-builder
- http://www.denx.de/wiki/U-Boot
- http://www.angstrom-distribution.org/building-angstrom
- Mailing lists:
Benefit
Upon successful completion of this project the Bela Image will follow more closely with BeagleBoard Images. I mean after Bela specific changes made conditional to the Image-builder repository. The Bela Image development will be updated more often, more easily in parallel with BeagleBoard Images.