Newpage
Contents
BeagleBone Flasher
An easy way to flash the BeagleBone! %=ProposalTemplate =
MASTER- http://praveenkumar.co.in/blog/?p=5
Proposal
Porting BeagleBone USB-based bootloader server from C to JavaScript(Node.JS). The objective is to upgrade the BBBlfs project to make an all-in-one BealgeBone flasher, using a variant of http://etcher.io/ The target is to obtain a single solution for flashing all Beagle variants(Black/Blue/Green etc) on all platforms(Windows/Linux/Mac).
About you
About me: Undergraduate engineering student at BITS Pilani, India.
IRC nick: carpediem
Github: https://github.com/adityamanglik
School: Electronics Engineering at Birla Institute of Technology and Sciences, Pilani
Country: India
Primary language : English
Typical work hours : 8AM-5PM US Eastern
Blog: https://embeddedintelligence.wordpress.com/
I want to participate in GSoC under BeagleBoard.org because I am passionate about embedded systems and strongly wish to pursue my career in this domain.
About your project
Project name: Beagle Bone Flasher!
Goal: Booting BeagleBone into USB mass storage class mode should be as easy as
npm install beaglebone-boot;
cd node_modules/beaglebone-boot;
npm start
and connecting the board with the BOOT button pressed via USB.
Hardware Skills: Knowledge of USB and Bootloaders
Software Skills: C, JavaScript (node.js)
Possible Mentors: Jason Kridner
Description
In 10-20 sentences, what are you making, for whom, why and with what technologies (programming languages, etc.)? (We are looking for open source SOFTWARE submissions.)
For: Just about everybody who has wanted to start with/flash/update a BeagleBone Black or a similar board.
What: A convenient way to flash the onboard eMMC with the click of a button, without any uSD.
Why: Because this will greatly simplify the development process.
With: Node.JS, C, Shell Scripting
Timeline
Provide a development timeline with a milestone each of the 11 weeks. (A realistic timeline is critical to our selection process.)
2017-06-06: Milestone #1
2017-06-13: Milestone #2
2017-06-20: Milestone #3
2017-06-27: Milestone #4
2017-07-04: Milestone #5
2017-07-11: Milestone #6
2017-07-18: Milestone #7
2017-07-25: Milestone #8
2017-08-01: Milestone #9
2017-08-08: Milestone #10
2017-08-15: Milestone #11
Experience and approach
In 5-15 sentences, convince us you will be able to successfully complete your project in the timeline you have described. I have good programming experience in C, C++ and Javascript. I have good knowledge about Bootloaders and have previously completed the following milestones:
- Break down BBBlfs
- Make Development plan
Contingency
What will you do if you get stuck on your project and your mentor isn’t around?
There are a lot of platforms available to seek help, namely other mentors and students on Freenode(#beagle and #beagle-gsoc), StackOverflow & previous participants(vvu?). I have tried to iron out all possible setbacks in the timeline so I know where help will be needed and where to get it. If my mentor is not around for those few days, I will simply work on another part of the project or do some tinkering myself to resolve the issue.
Benefit
If successfully completed, what will its impact be on the BeagleBoard.org community? Include quotes from BeagleBoard.org community members who can be found on http://beagleboard.org/discuss and http://bbb.io/gsocchat.
This project will greatly ease the process of flashing the BeagleBone Black, while providing a convenient and beautiful UI for same. Currently, one can flash a BeagleBone Black using the following methods:
- Using a uSD card to load a flasher image
- Flashing from Linux using the BBBlfs
- Playing around with the onboard eMMC in case all else fails!
This project should greatly simplify the task, by allowing the user to simply download a new Node package and flash the BeagleBone with the click of a button. This would also help new users to gently get started with the development process on a Linux based board.
Community Speak
- Numbered list item
Useful resources and references
- http://ahsoftware.de/Beaglebone_Black_Boot_explained.svg
- http://christian.amsuess.com/blog/website/2016-06-28_beaglebone/
- https://embeddedintelligence.wordpress.com/concepts/understanding-bootloaders/
- https://gist.github.com/vsergeev/2391575
- https://github.com/thenewwazoo/BBB-LFS
BBB Cross Compilation Task Pull Request
Suggestions
Is there anything else we should have asked you?
After Selection
Status
This project is currently a proposal.
Student: [1]
Mentors: Jason Kridner
Code: https://github.com/adityamanglik
Wiki: http://elinux.org/BeagleBoard/GSoC/ProposalTemplate
GSoC: GSoC entry