BeagleBoard/GSoC/2018 Projects

From eLinux.org
< BeagleBoard‎ | GSoC
Revision as of 09:12, 30 May 2018 by Cathywicks (talk | contribs) (Project: Fixing Bugs in BoneScript and Improve BeagleBone UI)
Jump to: navigation, search

Links

Project: Template Project, please copy first and then edit

{{#ev:youtube|fL_XMieanSc||right|Video Title}} “Project Name”. add your project description here.


Project: BeagleBoot

{{#ev:youtube|/rlj-k4zyPN0||right|Intro Video: BeagleBoot - Google Summer of Code 2018 under BeagleBoard.org}} Integrate node-beagle-boot to Etcher and add features like U-boot console on boot up, TCT/IP proxy server, grab latest images from beagleboard.org to BeagleBoot (electron app), developed last year during GSoC.

<iframe width="560" height="315" src="https://www.youtube.com/embed/rlj-k4zyPN0" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>

Project: Fixing Bugs in BoneScript and Improve BeagleBone UI

{{#ev:youtube|ZKOccMBiL5s||right|Video Title}} BoneScript is an existing Node.js library specifically optimized for the Beagle family and featuring familiar Arduino function calls, exported to the browser.The BoneScript library provides several functions for easy interaction with hardware which otherwise would have required the users to manipulate the SysFs files directly(assuming use of no other libraries),which is obviously confusing for a beginner-level user. BoneScript library even though being widely used by BeagleBone users has compatibility issues across boards, some bugs and unfinished features.The primary aim of my project is to solve most of the open issues reported and add some more features which will be of benefit to the users. A secondary objective of my project is to add Improvements to the BeagleBone User Interface to provide a similar interface for PocketBeagle that can also support the BaconBits cape examples, so as to provide PocketBeagle beginners a Graphical User Interface from which they can try out the example codes easily(similar to BBUI). Detailed Proposal at :https://elinux.org/BeagleBoard/GSoC/fix-bugs-bonescript


<iframe width="560" height="315" src="https://www.youtube.com/embed/ZKOccMBiL5s" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>

Project: BeagleLibs

{{#ev:youtube|svTSmAsZD2I||right|BeagleLibs GSoC 2017 Intro Video }} {{#ev:youtube|_8gChrvvHSQ||right|BeagleLibs GSoC 2017 Final Video }} My project is basically two high quality, well-documented libraries for interfacing with BeagleBone hardware in Rust and Go. These libraries will provide interfaces for common usecases like GPIO, ADC reads, PWM, UART, SPI, and I2C (I'm open to more!). The intent of the project is to bridge the gap between the lower level and the higher level languages and make using the BeagleBone accessible to a wider range of users.

People trying to get into hardware projects today are faced with difficult choices, especially when it comes to the platform their project will be based on. The BeagleBone community has made an great strides toward bridging this gap by with the cheap and approachable BeagleBones, but users are still confronted with the choice of fast/difficult to use C, or easy to use/slow JavaScript.

Users seeking to work on the BeagleBone shouldn't have to face this choice; which is where this project comes in. By providing a well-documented set of libraries for the common tasks that every hardware project uses, users will be able to harness the power of performant languages while still having a pleasant development process.


Project: BeagleBoot

{{#ev:youtube|5JYfh2_0x8s||right|GSoC 2017 - BeagleBoot}} Currently, the ways to flash images in BeagleBone hardware are not easy especially for beginners, SD card method takes up much time and manual configuration, BBBlfs flashing tool works but is CLI based, not much reliable and works on limited platforms, TI's Uniflash tool is also old and works only under older versions of Windows and Linux with a lot of manual configuration. The project is to port the BeagleBone bootloader server BBBlfs(currently written in c) to JavaScript(node.js) and make a cross platform GUI (using electron framework) flashing tool utilising the etcher.io project. This will allow us to have single code base for a cross platform tool.

The tool works as:

1. TFTP transfer of SPL binary and u-boot.
2. Utilizing the ums feature of u-boot, booting the BB hardware into USB mass storage mode.
3. Flashing the BB hardware with etcher.io like tool.

This project project will be really helpful for everybody especially newbies, who would have a nice experience with flashing images easily and faster, so that they can focus on the more important stuff be it their robotics project, kernel development or some new PRU hack.

Project: Sonic Anemometer

{{#ev:youtube|uj8lO8G9QYU||right|GSoC 2017 - BeagleBoot}} Write program for PRU present in BeagleBoard and to create a portable device able to measure the wind speed and temperature reliably in outdoor environments.It delivers the result by analyzing the time of flight or phase difference of sound waves between two points, deliver the final results in terms of ambient Temperature,Wind speed and direction.Considering the costs of commercial products available at this time in market, this open source project would provide a very useful and reliable anemometer to help universities and students/hobbyists during their meteorological research by providing them results in real time and format that can be further processed by user using languages like python etc.

Project: BeagleBoard/GSoC/BeagleBone PRU DMA

{{#ev:youtube|H4Bywj-rr74||right|BeagleBone PRU DMA}} Most of existing PRU applications utilize (waste) one PRU core for data transfer. The goal of this project is to enable usage of EDMA controller for copying of data to and from main memory (DDR), which would allow applications to use both cores for computation.