Main Page

From Sharpfin
Jump to navigation Jump to search

Reciva project

The goal of this wiki is to gather information about the Reciva 'Barracuda' Reciva radio module, in order to understand enough of the hardware to be able to provide alternative firmware.

I'm an embedded firmware engineer, and I'm planning to spend some time on this project to see how hard it would be to get my own software up and running on the Barracuda hardware. If you think you can add anything to this project, feel free to use this wiki to share your information: add and edit!

reciva@zevv.nl

Alternative firmware wishlist

  • No dependency on Reciva's database and servers
  • Support for additional codecs (ogg, flac, etc) and protocols
  • The Barracuda provides an USB 1.1 Host interface. Implement playing from USB storage device ?
  • Accessibility features, eg talking menus for the blind
  • ... More here ...

Roadmap

This list describes the things that would be needed to create a platform on which an alternative firmware implementation could be provided, roughly in the right order.

  • Creating an inventory of the components on the Barracuda board and their functions, and gathering technical information about these componentes where available.
  • Find out what the testpads on the Barracuda PCB do - Identifying JTAG and UART would be really helpful here.
  • Get a linux (console) shell to work on the current firmware to be able to get info about how the official software connects to the hardware. Memory maps, device drivers, stracing Reciva's applications ?
  • Figure out which pieces are missing to drive the hardware - Does Reciva provide drivers to all hardware ? Is a bootloader provided ?
  • Try to put as much pieces of the provided GPL code together to get a basic OS up and running. Find out how much Reciva added or modified of the original software packages.

Questions

Some questions that come to mind when gathering the info

  • There seems to be LIRC support in the kernel, reciva also provides lirc sources. How hard would it be to add a remote to existing radios ?
  • What is the purpose of the libgpg-error package Recive provides ? Is this just used as a generic error reporting framework ?
  • Does the Barracude use special co-processors or dedicated hardware for audio codecs ?

Progress

  • 2006-10-23 Compiled the linux kernel provided by Reciva

References to more information

Pieces of info about the barracude module :

Other attempts to understanding the Barracuda

GPL software components

  • archives with GPL software used by Reciva.