GSoC:2015 Requesting Guidelines

Hello Everyone,

I am an Undergraduate in Integrated Computer Engineering. I love hardware level programming and willing to propose a project for GSoC 2015. Many project ideas on BeagleBoard GSoC page are interesting. But I narrowed down them to three. Here are them according to my preference.

  1. BeagleRT: Real-Time Linux with the BeagleBone Black

  2. MMC and DMA Linux performance

  3. Common bootloader for different all the BeagleBone/BeagleBoards

The reason to choose those three is because I get the thrill of working hardware level and the experience of working in Linux. I want to choose a one from those projects and I really need to get accepted because this is a real opportunity to get my hands on BeagleBoard for free(Otherwise it is not affordable). Here is a small description about myself.

What I’ve got

I have theoretical knowledge in software process, design patterns, circuit theory, digital electronics and other Engineering concepts. Previously I have worked with micro controllers (mostly microchip and Atmel AVR series) and with few development boards including Arduino, RaspbeyyPi and Basic. I’ve been using ‘java’, ‘C++’ for high-level programming and ‘C’ and a little bit of assembly for low-level programming. PHP and JavaScript are my favourites for web development. Also I tried Linux shell programming a long ago. I’ve been using Intellij, CodeBlox, MpLab IDE, AtmelStudio as IDE s, Dia for documentation, Git for version controlling, Junit4 for TDD and JTag for Hardware Level debugging.

First of all I need to find answers for following questions to choose a project.

What I need to Know

  • I need to get an idea about the project scope before I propose. I must say that I’m not a mastermind but a hard worker.I can spend 3 to 4 hours per day for the project in week days and up to 15 hours in weekends and holydays. Will that be sufficient to complete the project successfully?(Specially Real-Time Linux project)

  • What are the special hardware tools that I should find to if my project proposal got accepted?

  • Is there any special documentation tool or an IDE that I should use?

  • Should I use a special software process?

  • Should I use Linux environment for development or can I use Windows and the cross compile?

  • Should I break down the project and mention milestones and deliverables in my project proposal? If yes how can I get help?

  • Any other special skill that I should gain before starting the project?

I have neither used a BeagleBoard before nor an expert in Linux. But I am sure that I can learn them quickly. But I need the support of the community a lot. Hope you will help me to find the answers to above questions and guide me through the project

Thank You.

Buddhika Jayawardhana,

UnderGraduate | Integrated Computer Engineering,

University of Moratuwa,

Sri Lanka.

Hello Everyone,

I am an Undergraduate in Integrated Computer Engineering. I love hardware level programming and willing to propose a project for GSoC 2015. Many project ideas on BeagleBoard GSoC page are interesting. But I narrowed down them to three. Here are them according to my preference.

  1. BeagleRT: Real-Time Linux with the BeagleBone Black

  2. MMC and DMA Linux performance

  3. Common bootloader for different all the BeagleBone/BeagleBoards

The reason to choose those three is because I get the thrill of working hardware level and the experience of working in Linux. I want to choose a one from those projects and I really need to get accepted because this is a real opportunity to get my hands on BeagleBoard for free(Otherwise it is not affordable). Here is a small description about myself.

What I’ve got

I have theoretical knowledge in software process, design patterns, circuit theory, digital electronics and other Engineering concepts. Previously I have worked with micro controllers (mostly microchip and Atmel AVR series) and with few development boards including Arduino, RaspbeyyPi and Basic. I’ve been using ‘java’, ‘C++’ for high-level programming and ‘C’ and a little bit of assembly for low-level programming. PHP and JavaScript are my favourites for web development. Also I tried Linux shell programming a long ago. I’ve been using Intellij, CodeBlox, MpLab IDE, AtmelStudio as IDE s, Dia for documentation, Git for version controlling, Junit4 for TDD and JTag for Hardware Level debugging.

First of all I need to find answers for following questions to choose a project.

What I need to Know

  • I need to get an idea about the project scope before I propose. I must say that I’m not a mastermind but a hard worker.I can spend 3 to 4 hours per day for the project in week days and up to 15 hours in weekends and holydays. Will that be sufficient to complete the project successfully?(Specially Real-Time Linux project)

About 35-40 hours a week is what is expected. If you do 20 hours a week and 15 hours on the weekend, you are getting there. If that is because you have a conflicting job, then I’d suggest not applying for GSoC.

  • What are the special hardware tools that I should find to if my project proposal got accepted?

We will provide any required hardware.

  • Is there any special documentation tool or an IDE that I should use?

That’s up to the individual project. In general, no particular IDE is required.

  • Should I use a special software process?

You must maintain your source code using ‘git’ and you must update documentation on the http://elinux.org wiki. You must use IRC to collaborate with the team in real-time and use mailing lists for collaborating on larger tasks.

  • Should I use Linux environment for development or can I use Windows and the cross compile?

It depends on the project, but knowledge and usage of Linux is generally extremely beneficial and sometimes required for BeagleBoard.org projects.

  • Should I break down the project and mention milestones and deliverables in my project proposal? If yes how can I get help?

Absolutely. Take a stab at it on the mailing list. Show up on the IRC chat (http://bit.ly/bbgsocchat) for some help.

  • Any other special skill that I should gain before starting the project?

Depends on the project, but my #1 recommendation for students getting into GSoC with BeagleBoard.org is to learn ‘git’!

I have neither used a BeagleBoard before nor an expert in Linux. But I am sure that I can learn them quickly. But I need the support of the community a lot. Hope you will help me to find the answers to above questions and guide me through the project

If you can break down and execute software tasks reasonably, you should be OK and learn a lot about BeagleBoard and Linux. We can’t teach you to program—we expect you to already know how to do that. We can’t teach you how to work well with people, but we can help smooth out some of the rough spots. If you are really willing to work in a very open way, you can learn most of the rest pretty quickly.