Sponsored By
Efika 5200B Project
Highly flexible/ultra low cost framebuffer for the EFIKA and FPGA technologies support.

in category Hardware
proposed by stellae on 18th November 2006 (accepted on 26th November 2006)
Project Summary
This is a new project proposal for trying to join the power developers program since my last one could involve confidential information related to automobiles that I clearly can't disclose (perhaps concerning some CAN network infos.). I do apologize for the inconvenient.

I plan to interface an inexpensive and very flexible framebuffer with the EFIKA board (a kind of lightweight graphic card). PCI/AGP boards are not really suited for low-power & compact embedded systems (eg: portable devices, in-car entertainment/instrumentation...).

Direct access trough PSCs is planned but if spares IOs are lacking, the interface will use the PCI bus.

Targeted OS is linux for the moment with direct kernel "fb" support. Associated libraries could be added (ports of some standard ones). A basic optimized 2D vectorial drawing lib. will be available for making demos applications.

FPGA technology will be used in this system and a complete support of it will be provided for linux (in-system (re)programming). Small 7/8" TFT screens will be natively supported (DVI and VGA support can be added).

Concerning the PCI interface prototype, it will be made of the following eval. board : Altera\'s PCI MAXII-DEVKIT-1270. (Linux support of this PCI board will be added since it doesn't exist for the moment.) A complete design will be done if all tests are passed successfully.

First step in the developement : basic double buffering technic and 2D acceleration will be added (scrolling, tiles management...).

An USB version is also available for little screen size.

Work is in progress on this system and the interface will be soon used on an AXIS ETRAX(lx) based system.

Pictures of some parts prototypes :

Early pictures of USB driven screens (FPGA side, WVGA screen RGB18 800*480)

Close up on the FPGA interface

Preliminary schematics, softwares & VHDL are already available.

Few word about me... (and the reason why I have reoriented this proposal) ;-)

I\'m currently working as hardware engineer for a quite important automobile parts manufacturer and I\'m specialized in the design of graphics dedicated SOC (System On Chip). Since a proposal directly linked to the "automotive world" can conflict with some confidentiality agreements I have to respect, I've decided to make a new proposal for a purely personal project. I will enjoy provided some help and collaborate to the PPC/EFIKA success.

I currently run linux with some custom device drivers/apps on the Coldfire (µClinux ), a SPARC ultra5, an ETRAX/CRIS embedded device (work in progress...) and even on my Playstation 2 (MIPS core) ;-), PPC should be my next target.

Project Blog Entries

  Video conferencing - connection established
posted by stellae on 15th January 2008


Together with Johan (project 338) we successfully established a video conference between France and Finland. Time to try new things on the EFIKA, webcams, VIC, Ekiga...

First step I've successfully compiled the spca5xx driver needed for a Labtec Webcam Pro device. The latest version works right out the box, you just need your kernel sources/headers (tested with a 2.6.19 version). To get the right colors simply load the driver with "force_rgb=1".

This will allow you to get a cristal clear picture of the Père-Noël with spcaview :-)



The serious things begin now. The Debian's Ekiga package works well. So it's now time to link two machines on the home LAN. The EFIKA called my Mac (running xmeeting) and the result was really great. Just have a look below.



The final goal was reached when Johan's get Ekiga working on his side. And the Père-Noël (in France) was finally able to call Johan's DVI adapter in Finland...



These applications and demos run perfectly on the portable prototype.

With a reasonable CPU load (less than 40%) when you display both local & remote videos, this application shows once again the great potential of the EFIKA platform.


PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2891 stellae 15 0 81080 31m 21m R 37.9 25.8 41:43.94 ekiga


Last point, you can also turn the EFIKA into a video control server for home automation, lab experiments monitoring or even factory monitoring.

The EFIKA is able to encode on the fly video coming from a webcam (QVGA resolution) in MP4 and stream it over a network (TS encapsulation). Using MS Windows Media Player as a client (wmv & mms) is also possible. You will find the 2 appropriate VLC command lines (MP4 & WMV streaming) as reference in the v4l_vlc_stream file. Now just tweak them to fit your own needs.

I connected various machines running different OS to the EFIKA and the video link was working like a charm.

Stellae
  Portable EFIKA
posted by stellae on 30th July 2007


Summer has come for some of us and it's time for holidays but you don't want to leave your beloved EFIKA. ;-)

Here is the solution, a portable EFIKA. I finally put a 7 inches WVGA (800*480) display on an OpenClient (thanks again Genesi) and get the first "almost" portable EFIKA prototype.

It uses a Radeon 9250 (the XGI gfx could be supported in a near future) and the DVI-D signal is sent to the panel through the I/F I've previously designed. This is now a really nice piece of hardware which runs the latest 2.6.22-rc6 linux kernel (patched for the EFIKA).

Better than many words, a small video: eclipsis_00.mp4.

This video shows successively the boot process, a curses game example, a DirectFB demo and finally X11 with OpenGL support.

Just below: selected pictures of the system.



Complete system.



Behind the scene.



X11 + openGL.

On the technical side, a preliminary version of the DVI I/F schematics is now available.

The I2C DDC memory (EDID) can now be programmed under linux with the eeprog utility through the DVI connector.

As usual, you can find all the details on my website.

Last point, I started a small "subproject" which aims to design an external power management module for the EFIKA. This module will also include sensors (temperature, humidity...) for home automation applications.
Based on a FPGA containing a 32bits NIOSII softcore, this small system will act as an intelligent supervisor for the EFIKA. The code will be based on the U-Boot loader (init + exceptions handling).

The cross-compilation toolchain (binutils, gcc & newlib) runs on the EFIKA (30 hours of compilation from source to set it up).

Nevertheless this is a "backgrounding task" for me, so do not expect major progress before a while. The priority remains the portable EFIKA.

Picture of the module (FPGA system & a DS1305 RTC).



Progress of the day, the lowest level functions of u-boot are now running ;-)



Nice, but many things remain to do...

Stellae
  Custom small size TFT panel with DVI
posted by stellae on 29th March 2007


I've already announced it on the forum but I put it also on the project blog to keep a record. With only few components, I've plugged a WVGA (800*480) screen on the EFIKA (through a Radeon 9250).

You can look at the forum thread or directly on my website for details.

Making a "clean" version of this interface is now a priority. I hope it will be helpful for the "EFIKA laptop" concept.

Noël (Stellae)
  FPGA board design files available
posted by stellae on 21st January 2007


I've opened a dedicated page for this project on my web site (always under heavy development ;-)).

A first working version of the hardware is almost ready (VHDL is under validation).

A "quick and dirty" program which export Bitmap picture for the I/F is available on this page.

Since I use a custom FPGA board for this design, schematics, pinout, BOM... are available on a dedicated page.
  EFIKA : first boot
posted by stellae on 8th January 2007


I've successfully booted the EFIKA and started the debian installer using my ibook G4 as terminal.

An USB to serial adapter including a FT232R chip from FTDI has been used and Zterm as terminal emulator.

A screenshot is available.

Schematics & layout of the FPGA board will be soon available (time to make the web page).

On the software side work is in progress in order to get a direct access (not Virtual Com Port) to FTDI USB device. Their D2XX device driver is not open source and only exists as precompiled module for X86: shame on them.
  Welcome and technical clarifications
posted by stellae on 6th December 2006


The EFIKA has not reached France for the moment ;-), but work is in progress on the project.

I try here to develop a "lite" display interface for the EFIKA dedicated to all people who don't need an expensive & powerful GPU + screen solution. This interface is well suited for basic monitoring (static graphics) & I'm thinking about making an USB powered "fluent" console mode.

PCI is an option today since using this interface involve heavy HW & SW work (why not creating a sort of "synergy/alliance" with similar projects ?). I'm looking at alternative solutions using "more standard" ways to drive small size TFT panels with the EFIKA.

Nevertheless, the primary objective is the USB version for the moment.

You'll find a very nice description of the current development platform on B&R's blog. Thank you for this entry ;-).

Technical clarifications

Last week I discussed by e-mail with Matt and B&R from Genesi to obtain more information on the EFIKA system.

I thought using the "LocalPlus Bus (External Bus Interface)" as a direct interface to the PPC internal bus by disabling the PCI I/F (Normal Mode). But this is clearly impossible since it implies to heavy modification and signals integrity will be badly affected. I also suppose that heavy software modification have to be considered.
Conclusion: this interface is definitively not an option.

Perahps I can find some useful High Speed I/F (PSC) but USB & PCI are the prefered ways for the moment.

Noël
Genesi Network: Genesi - Main Site Power2People PowerDeveloper