Difference between revisions of "BeagleBoard/GSoC/BARD"

From eLinux.org
Jump to: navigation, search
(Source)
Line 3: Line 3:
 
[[Category: BeagleBoard]]
 
[[Category: BeagleBoard]]
 
[[Category: GSoC]]
 
[[Category: GSoC]]
 +
[[Category: Android]]
 +
[[Category: Remote display]]
  
 
+
<br/>
 
=Introduction=
 
=Introduction=
 
BARD - Beagle Android Remote Display. The goal of this project is to build an "One cable to rule them all" interface between Beagle and Android. Aiming at building a system where all the basic peripherals - keyboard, mouse and display, can be connected to BeagleBone by attaching it with a USB cable to Android phone. This will be implemented as a kernel module running on BeagleBoard and a ready to use out-of-box app for Android which may be downloaded from Playstore.
 
BARD - Beagle Android Remote Display. The goal of this project is to build an "One cable to rule them all" interface between Beagle and Android. Aiming at building a system where all the basic peripherals - keyboard, mouse and display, can be connected to BeagleBone by attaching it with a USB cable to Android phone. This will be implemented as a kernel module running on BeagleBoard and a ready to use out-of-box app for Android which may be downloaded from Playstore.
 
  
 
=Tools=
 
=Tools=
Line 15: Line 16:
 
The communication between Android and Beagle we will be over USB. The protocol will be [[Android Open Accessory (AOA)|Android Open Accessory]] protocol. Beagleboard will be acting as an accessory that talks to Android using AOA.
 
The communication between Android and Beagle we will be over USB. The protocol will be [[Android Open Accessory (AOA)|Android Open Accessory]] protocol. Beagleboard will be acting as an accessory that talks to Android using AOA.
  
 +
==Kernel ADK Host==
 +
ADK - Accessory Development Kit, needed for communication using AOA protocol. Beagle bone will be acting as an ADK host. Most of the existing implementations where Beagle bone acts as an ADK host are at user level. Some of them are: [[Custom firmware from rowboat|https://code.google.com/p/rowboat/wiki/AccessoryDevKit]], [[User level|https://gist.github.com/praveendath92/9641145]]. Since we are aiming at kernel level implementation we will writing our own kernel modules for Beagle bone as an ADK host.
 +
 +
==Display driver==
 +
[[udlfb|http://libdlo.freedesktop.org/wiki/]] is the original, fully functional, kernel framebuffer driver used by DisplayLink - the company that makes USB display modules. Essentially, udlfb has functions to fetch frames from [[framebuffer|https://www.kernel.org/doc/Documentation/fb/framebuffer.txt]]. The current plan is to modify or reuse parts of udlfb to obtain current display frames.
  
 
=Source=
 
=Source=
 
Linux modules: https://github.com/praveendath92/bard-linux <br/>
 
Linux modules: https://github.com/praveendath92/bard-linux <br/>
 
Android app: https://github.com/praveendath92/bard-linux
 
Android app: https://github.com/praveendath92/bard-linux

Revision as of 03:01, 3 May 2014



Introduction

BARD - Beagle Android Remote Display. The goal of this project is to build an "One cable to rule them all" interface between Beagle and Android. Aiming at building a system where all the basic peripherals - keyboard, mouse and display, can be connected to BeagleBone by attaching it with a USB cable to Android phone. This will be implemented as a kernel module running on BeagleBoard and a ready to use out-of-box app for Android which may be downloaded from Playstore.

Tools

This is a tentative list of tools we intend to use for this project.

Communication

The communication between Android and Beagle we will be over USB. The protocol will be Android Open Accessory protocol. Beagleboard will be acting as an accessory that talks to Android using AOA.

Kernel ADK Host

ADK - Accessory Development Kit, needed for communication using AOA protocol. Beagle bone will be acting as an ADK host. Most of the existing implementations where Beagle bone acts as an ADK host are at user level. Some of them are: https://code.google.com/p/rowboat/wiki/AccessoryDevKit, https://gist.github.com/praveendath92/9641145. Since we are aiming at kernel level implementation we will writing our own kernel modules for Beagle bone as an ADK host.

Display driver

http://libdlo.freedesktop.org/wiki/ is the original, fully functional, kernel framebuffer driver used by DisplayLink - the company that makes USB display modules. Essentially, udlfb has functions to fetch frames from https://www.kernel.org/doc/Documentation/fb/framebuffer.txt. The current plan is to modify or reuse parts of udlfb to obtain current display frames.

Source

Linux modules: https://github.com/praveendath92/bard-linux
Android app: https://github.com/praveendath92/bard-linux