Main Page: Difference between revisions

From Sharpfin
Jump to navigation Jump to search
No edit summary
 
(105 intermediate revisions by 2 users not shown)
Line 1: Line 1:
= Sharpfin project =
= Sharpfin project =


The goal of this project 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.


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
<table width=100%>
<tr>
  <td colspan=2 bgcolor=#ffffff style='border: solid 1px #888' valign=top>
== News ==
== 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]]


* 2006-10-22: Wiki setup
  </td>
* 2006-10-23: Compiled the [[linux]] kernel provided by Reciva
</tr>
* 2006-01-25: Datasheest and jtag tools are available for the samsung processor
<tr>
 
  <td bgcolor=#ffffff style='border: solid 1px #888' valign=top>
== Alternative firmware wishlist ==
 
The following list shows some features which would be possible to implement with the new firmware. This list is not complete, neither definitive, feel free to add your own ideas.
 
* 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.
 
* 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 ?
 
== 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]
 
Component Information
 
* [http://www.samsung.com/products/semiconductor/MobileSoC/ApplicationProcessor/ARM9Series/S3C2410/S3C2410.htm S3C2410AL ARM Processor, including BSDL files, and firmware update over USB]
* [http://www.samsung.com/products/semiconductor/NANDFlash/SLC_SmallBlock/128Mbit/K9F2808U0C/K9F2808U0C.htm K9F2808UOC 16Mb*8 Flash Memory]
* K4S561631E RAM Device
 
Other attempts to understanding the Barracuda


* [http://www.trumpton.org.uk/ir100/internal.htm IR100 internal]
=== Project documentation ===


GPL software components
* [[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>


* [http://corporate.reciva.com/gpl/ archives] with GPL software used by Reciva.
=== Technical documentation ===


Other boards using the same processor
* [[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


* [http://www.embedinfo.com/english/Product/sbc2410.asp Samsung Single Board Computer]
  </td>
* [http://www.embedinfo.com/english/Product/mini2410.asp Mini PCI Processor Card]
</tr>
* [http://www.simtec.co.uk/products/EB2410ITX/faq.html Evaluation board FAQ]
</table>
<div class="footer_image">[[File:Sharpfin_transparent.png]]</div>

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