Main Page: Difference between revisions

From Sharpfin
Jump to navigation Jump to search
 
(111 intermediate revisions by 2 users not shown)
Line 1: Line 1:
= Reciva project =
= Sharpfin 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.
The goal of this project is to gather information about the Reciva 'Barracuda' radio module, in order to understand enough of the hardware to be able to provide alternative [[GPL]] 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!
The Sharpfin Project <i>needs the support</i> of keen and enthusiatic hobbyist/engineers - it is a mammoth task in understanding the internal workings of the radio - we have some partial schematics and are begining to analyse the [[GPL]] code, but there is lots to do, so


[mailto:reciva@zevv.nl reciva@zevv.nl]
If you would like to participate, or if you have any information to share on this wiki just [{{fullurl:Special:UserLogin|type=signup}} register] or [[Special:UserLogin|login]] and start editing.


== Alternative firmware wishlist ==
Technical / development discussions can be found on the [http://groups.google.com/group/sharpfin Sharpfin Google Groups Pages]. Suggestions for new mailing system are welcome


* No dependency on Reciva's database and servers
<table width=100%>
<tr>
  <td colspan=2 bgcolor=#ffffff style='border: solid 1px #888' valign=top>
== News ==
* 2017-03-11: A server upgrade was performed and HTTPS support was added. We recommend these URLS: https://www.sharpfin.org or https://www.sharpf.in
* 2012-11-30: Since a few days ago you can reach the wiki also via http://www.sharpfin.org, http://www.sharpf.in
* 2012-10-22: New howto page: [[OpenOCD|Barracuda module debug over JTAG using OpenOCD]]; thx to Dhires
* 2012-10-10: News for [[Unbricking]]/[http://www.sharpfin.org/sharpfin/images/a/a4/Sharpflash_v0.4.zip Sharpflash v 0.4]
* 2012-10-03: [[Releases#Patchserver|Patchserver 0.7rc3]] [http://www.sharpfin.org/sharpfin/images/2/25/Patchserver_0.7rc3.zip Win] (no changes for Linux version)
* 2012-10-01: [[Releases#Patchserver|Patchserver 0.7rc2]] (<strike>Win</strike>/[http://www.sharpfin.org/sharpfin/images/8/85/Patchserver_0.7rc2.tar.bz2 Linux])
* 2012-01-14: [[Releases#Patchserver|Patchserver]] ([http://www.sharpfin.org/sharpfin/images/1/1e/Patchserver_0.7rc1.zip Win]/[http://www.sharpfin.org/sharpfin/images/6/60/Patchserver_0.7rc1.tar.bz2 Linux]), [[Releases#Webserver|Webserver]], [[Releases#Libreciva|Libreciva]] updated &amp; [[Releases#Nanddump|Nanddump]] and [[Releases#Lircd|Lircd]] added
* 2012-01-09: Windows [[Releases#Development Tools|Cygwin Cross-Compiler]] v 0.2 released
* 2012-01-02: Sharpfin [[Releases#Webserver|Webserver]] v0.8 released (remote control integration, etc.)
* 2011-12-31: Sharpfin [[Releases#Webserver|Webserver]] updated (links, nanddump, etc.)
* 2011-12-05: New Sharpfin Wiki
* 2011-11-30: [https://github.com/philsmd/sharpfin Github repo] created
* 2010-11-06: [[Installing an Infrared Remote Control on the IR100]] updated
* 2010-05-14: [[Modifying the Hardware]] section added.
* 2010-03-12: [[Sharpfin Enhance Pack]] 2 - SHARPFINreloaded is out!
* [[Old News]]


* Support for additional codecs (ogg, flac, etc) and protocols
  </td>
</tr>
<tr>
  <td bgcolor=#ffffff style='border: solid 1px #888' valign=top>


* The Barracuda provides an USB 1.1 Host interface. Implement playing from USB storage device ?
=== Project documentation ===


* Accessibility features, eg talking menus for the blind
* [[Introduction]]: What's all this
* [[Quickstart]]: For the impatient
* [[Legal]]: Legal stuff
* [[Wishlist]]: What do we want...
* [[Roadmap]]: ...and how do we get there
* [[Libreciva]]: Our libreciva reference manual
* [[Repository]]: The Sharpfin Git Repository
* [[Talk:Main_Page|Discussion]]: A place for talk and chat 
* [[Logos]]: Icons, Avatars and Logos
  </td>
  <td bgcolor=#ffffff style='border: solid 1px #888' valign=top>


* ... More here ...
=== Technical documentation ===


== Roadmap ==
* [[Radios]]: Reciva Radios and features.  Also firmware info.
* [[Hardware]]: What's in the box
* [[Software]]: And what is it running
* [[Changing Your Radio]]: Change configuration and firmware
* [[Modifying the Hardware]]: Hardware modifications for your radio
* [[Unbricking]]: How to recover when things go wrong
* [[Links]] to other sites with info
* [[Questions]]: Things that are unclear and need to be figured out
* [[Sample Project]]: Your home-made Internet Radio Exploration Lab


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.
  </td>
 
</tr>
* Creating an inventory of the components on the Barracuda board and their functions, and gathering technical information about these componentes where available.
</table>
 
<div class="footer_image">[[File:Sharpfin_transparent.png]]</div>
* 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.
 
* Get all the hardware components working: [[GPIO]], [[LCD display]], [[LEDs]], [[buttons]], [[usb]], [[network]], [[audio]]
 
== 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 :
 
* [http://corporate.reciva.com/download_files/Baracuda_130206.pdf PDF from reciva describing basic functionality]
* [http://corporate.reciva.com/products_and_technology/internet_radio_modules.asp More info on Reciva site]
 
Other attempts to understanding the Barracuda
 
* [http://www.trumpton.org.uk/ir100/internal.htm IR100 internal]
 
GPL software components
 
* [http://corporate.reciva.com/gpl/ archives] with GPL software used by Reciva.
 
Other boards using the same processor
 
* [http://www.embedinfo.com/english/Product/sbc2410.asp Samsung Single Board Computer]
* [http://www.embedinfo.com/english/Product/mini2410.asp Mini PCI Processor Card]
* [http://www.simtec.co.uk/products/EB2410ITX/faq.html Evaluation board FAQ]

Latest revision as of 09:28, 13 March 2017

Sharpfin project

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

The Sharpfin Project needs the support of keen and enthusiatic hobbyist/engineers - it is a mammoth task in understanding the internal workings of the radio - we have some partial schematics and are begining to analyse the GPL code, but there is lots to do, so

If you would like to participate, or if you have any information to share on this wiki just register or login and start editing.

Technical / development discussions can be found on the Sharpfin Google Groups Pages. Suggestions for new mailing system are welcome

News

Project documentation

Technical documentation