HOWTO Build your own Neuros Firmware
Purpose:
The purpose of this draft is to provide an easy way to build a custom firmware for the Neuros Digital Audio Player (Neuros) from Digital innovations (DI).Disclaimer:
Currently, the instructions posted here are given for the GarBageBranch of the firwmare. This branch is considered to be experimental.There are no warranties, neither expressed nor implied. You are on your own.
Background:
On August 24, 2004 Digital Innovations released the source code of the firmware ran by its digital player called Neuros. Here's a message from DI's CEO, Joe Born regarding this issue: --At long last, we have released the source code for the Neuros firmware. It’s largely the product of a devoted group of volunteers who have helped with many aspects of the project. Thanks to all of you that contributed effort, research or just moral support. For those of you new to the Neuros, we feel that the Neuros has a number of important advantages that makes it attractive to the OSS and developer communities generally: A powerful hardware platform including a very capable TI DSP, FM Broadcasting and receiving, both flash and HD configurations (up to 80GB in capacity), a built in mic and line in, and of course, very high quality hw analog/digital converters for great sound. This hardware means that the potential of the device includes a host of possibilities: broadcasting features including wireless data transfer, a variety of new possible playback codecs, as well as all kinds of audio signal manipulation and other "digital audio computer" functionality (just use your imagination). In addition to our already robust recording features, lossless codecs are possible as well. Not to mention that there are already four versions of open source synchronization software available for the PC on a variety of platforms. As a company, we're willing to support the community in a way that not many HW companies are, including releasing documentation and even schematics in addition to source code. In addition, we've previously donated HW to sponsor worthwhile projects which have yielded some of the features and improvements currently on the device. And, as those of you familiar with Neuros already know, we have always fostered an open and uncensored discussion environment. Now it's your turn. We need your help to fully realize the vision of the digital audio computer. Open source software isn't much good without a community of developers. Most immediately, we need the tools to make the source code really useful. We need to get the GCC compiler working, and we need a program loader. Neuros will continue to contribute our enhancements on making the Neuros the most advanced and flexible device out there, and your help can accelerate that effort. Thanks again to all those that contributed and welcome aboard to those of you new to the Neuros. Joe Born President Neuros Audio, LLC-- That brilliant stroke provides new and exciting ways to customize your player.
0.- Requirements
0.1 - Software
A Microsoft Windows operating system is needed.There are reports of building the firmware under Windows 2000 and Windows XP. Nothing is known about earlier versions.
Currently it is not possible to build the firmware under other OSes, as the compiler used is Windows based. But there are reports of success building it under machine emulation layers such as VMWare or bochs.
- There are instructions on how to build with Linux using Wine, as detailed by NeroChiaro . -- ChristopherHarrington - 26 Sep 2005
(http://www.tortoisecvs.org). and ii. A 'make' compatible program. I use CYGWIN's make.
(http://www.cygwin.com)
If you install this for the first time, be sure to set it to use UNIX-style linefeeds (it's an option in the setup). Otherwise, see below for a tweak you have to make to one batch file.
0.2 - Hardware
A computer running any OS of the above. A Neuros, obviously.0.3 - Mood
Building the firmware is not difficult if everything works as expected. If problems arise, contact the development team of the SourceForge neuros-firmware project. Tweaking, enhancing, and/or changing the firmware requires some knowledge of the C language and assembler.1.- Getting the compiler
1.1.- Register with TI Website.
Go to TI Website and apply for an account.1.2.- Download the Evaluation Package
Get C5000 Code Composer Studio Evaluation FET (Free Evaluation Tool) from TI's website: link Direct link The latest version (2.21) weighs in at about 227 Mb.2.- Getting the code
Checkout the module 'neuros-firmware' from the CVS repository of the project on Sourceforge. The CVSROOT is: :pserver:anonymous@cvs.sourceforge.net:/cvsroot/neuros-firmware There are several branches there, the default one is HEAD , the GarBageBranch is garbage (the others that start with garbage but have numbers afterwards are tags for archived versions). Check your cvs program documentation for instructions on how to checkout a specific branch. The instructions given on this document apply only for the latest garbage branch available. If anyone cares to correct this draft pointing out diversions between facing the HEAD branch or the garbage branch, feel free to do so.3.- Setting up the compiler
Decompress the downloaded CCS_EVAL_C5000_2.21.zip file to a folder of your choice and run SETUP.EXE. Install the Package in a folder with no spaces on it, "C:\TI\" is the best choice. Putting it somewhere else is OK, you'll just need to edit some files, see below. Once installed go to Start Menu\Texas Instruments\Code Composer Studio Free Eval Tools 2 ('C5000)\Setup Code Composer Studio And import the profile called "C5416 Device Simulator". Then, Save and Quit.4.- Preparing the code
Go to Start Menu\Texas Instruments\Code Composer Studio Free Eval Tools 2 ('C5000)\Configuration Tool and open the file .\neuros-firmware\ccs_projects\Main_APP\Neuros200\CCS_Auto_Source\Neuros200.cdb Say Yes and Accept all the messages. Save and Exit. This last step is no longer needed on recent garbage versions of CVS code. If you have installed CCS somewhere other than the default location "C:\TI\", you'll have to tweak the bat files located in .\neuros-firmware\ccs_projects\Main_APP\Neuros200\ and replace the default path to the TI tools, to match yours.Make sure you have your make program on your PATH.
Edit the Neuros200.mak file also, and set OBJ_DIR and all paths accordingly. Some people have also found the need to alter build\image.cmd and/or Neuros200.mak and double check the file for correct DOS line endings (CR/LF). This is due to a possible alteration of the file during the CVS checkout if your CVS client was not configured correctly. You can use the
5.- Compiling the firmware
After making sure the paths are correctly set, run .\neuros-firmware\ccs_projects\Main_APP\Neuros200\make-d.bat You can do so by double clicking on it, but i'd recommend opening a command line window just to keep the errors visible, if any. Watch the output carefully, if there are no errors, you'll get a brand new firmware on .\neuros-firmware\source\DEBUGFLASHER\Debug\woid.hexIf your neuros was connected and uf.bat was edited accordingly, you'll also have your firmware automatically loaded on it. Neverthless you'll need to tell your Neuros to do the upgrade. Should any errors occur, watch the output, check your edited files and also make sure you pulled a stable version from CVS. (The building process for the HEAD branch differs, make sure you checked out the garbage branch.)
6.- Getting the firmware on your Neuros
You can directly transfer it to your device by editing .\neuros-firmware\ccs_projects\Main_APP\Neuros200\uf.bat and setting the correct drive letter. Then, run it. If not, rename it from the current location and transfer manually as usual. That is, if your Neuros is drive letter N: , install the firmware as N:\firmware\woid.hex7.- Installing the new firmware.
For Neuros USB 1.1 backpacks:
- Shut down Neuros properly by holding PLAY button.
- Unplug the Neuros power cord.
- Press PLAY and DOWN simultaneously to start the Neuros and bring up the message "Release Keys".
- Follow the screen to connect USB cable.
- Go to your PC and bring up Windows Explorer.
- Find the Neuros removable disk and copy the "firmware" folder onto the Neuros drive, indicating to overwrite any files if they are already there.
- Wait until the message "USB IDLE" appears on the Neuros screen.
- Unmount your neuros.
- Unplug the Neuros from the USB cable and follow the screen instructions to update firmware.
For Neuros USB 2.0 backpacks:
- Power up player normally, and connect the 2.0 USB cable.
- Find the Neuros on your PC, listed as removable or local disk. Copy "Firmware" folder to the Neuros drive.
- Wain for the transfer to finish and unmount your Neuros.
- Disconnect 2.0 USB cable.
- Hold DOWN and PLAY button simultaneously to shutdown player. (Do not release DOWN button until player display shuts off.)
- Press PLAY and DOWN simultaneously to start up player, this should bring up a window saying "New firmware detected, ready to install?", click YES and follow the screen instructions to update firmware.
Additional notes:
- There's a lot of discussion going on in the #neuros channel on FreeNode IRC Network, and (mostly) friendly people (often) available to help you.
- ALWAYS do a NAND FORMAT (Boot with 1+5+PLAY to start Diagnostics and follow the menus) when upgrading your firmware before reporting any bug/error.
- ALWAYS check any bug/error with an official firmware before reporting them to us. Also, make sure you check out Bugzilla and make sure your bug/error is not covered there already. If the bug/error applies ONLY to the GarBageBranch DO NOT file a report on Bugzilla, and use the GarBageDiscussion topic on this wiki.
-- GarBage - 16 Oct 2004
-- Additional hints: NeroChiaro - 09 Nov 2004


