GSoC/GCI Archive
Google Summer of Code 2013

BeagleBoard.org

Web Page: http://elinux.org/BeagleBoard/GSoC/Ideas

Mailing List: http://groups.google.com/forum/?fromgroups#!forum/beagleboard-gsoc

BeagleBoard.org is a volunteer organization that seeks to advance the state of open-source software on open-source hardware platforms capable of running high-level languages and operating systems (primarily Linux) in embedded environments. Born from taking mobile phone processors and putting them on low-cost boards to build affordable desktop computers, BeagleBoard.org has evolved to focus on the needs of the "maker" community with greater focus on the I/O needed for controlling motors and reading sensors to build things like robots, 3d printers, flying drones, in-car computer systems and much more. Past BeagleBoard.org GSoC projects included an RPC framework for heterogeneous processor communicationa transparent USB packet sniffer,ARM optimizations for XBMCARM optimizations for FFTsmake-shift pulse-width-modulation and RPC optimizations for OpenCV. BeagleBoard.org has benefited from sponsorship from Texas Instruments, CircuitCo, Digi-Key and others, but avoids any dependence on that sponsorship for sustaining the effort. The project has evolved over the past few years with over 100,000 boards in circulation with developers worldwide and strong roots in the Linaro, Yocto Project, Angstrom Distribution and Linux communities---and support for running most major Linux distributions including Ubuntu, Android, Fedora, Debian, ArchLinux, Gentoo, Buildroot and many more.

BeagleBoard was inspiration for Raspberry Pi[1] and will be more affordable at the time GSoC launches[2], but is more than a throw-away computer. It is true open hardware, exposing users to the broader world of electronics, demystifying computers and fostering an environment of clones that have changed the industry.

Projects

  • Android based boot system The goal of this project is to ROM boot an BBB/BBW from an Android device.
  • Arduino Libraries for the Beaglebone (in Userspace) Almost everyone in the embedded community is familiar with the Arduino development environment. Creating the Arduino libraries for userspace could offer significant reduction in the development time of projects on the Beaglebone involving interfacing with external peripherals, with the added advantage of running other userspace applications side-by-side.
  • Beagle-ROS Integration of the Robot Operative System (ROS) and the BeagleBone.
  • Create Linux userspace libraries for use with Wiring/Processing environment using the Arduino IDE The project proposes to build a set of Arduino-like libraries for development on the BeagleBone Black. The libraries will be available inside of the familiar Arduino IDE(along with multiple communication interfaces) or could also be installed as native libraries on the board. The underlying aim of the project is to make development on embedded Linux platforms easier and familiar to the Arduino environment.
  • IIO, ADC, PMIC, LCD debug/patchwork The IIO ADC driver for the Beaglebone does not add /sysfs entries and the /dev/iio:deviceX entries are slightly broken. This project will involve patchwork for the ADC drivers. After that, an hwmon driver will be developed for power measurement using the 7th ADC channel connected to the shunt register. Community members report touch screen drivers clashing with the free ADC channels. This will be investigated and fixed. These drivers,fixes and associated test applications will greatly help new comers and userspace application programmers to easily access the ADC on the beaglebone. PWM driver has a hack for adding sysfs entries. Clean sysfs support for the PWM driver api will be written
  • Minix I2C drivers for the BeagleBone Black The project is to develop a generic I2C driver subsystem for Minix, and then use it to write drivers for I2C devices on the new BeagleBone Black.