Skip to main content
Topic: FreeRTOS/port-eric [Was: Web Platform Second Alternate Firmware (frimwareA2)] (Read 5192 times) previous topic - next topic

FreeRTOS/port-eric [Was: Web Platform Second Alternate Firmware (frimwareA2)]

Since I sort of promised I would get my version of the Web Platform firmware that uses FreeRTOS (which was originally created by Matt) posted to SVN by this weekend I made a commit today.

See this thread for background and more information.

The code is available via SVN at the following address.
[s:]http://dangerous-prototypes-open-hardware.googlecode.com/svn/trunk/web-platform/firmwareA2/[/s:]
http://dangerous-prototypes-open-hardware.googlecode.com/svn/trunk/web-platform/FreeRTOS/port-eric/

[s:]I called it "firmwareA2" so that the directory is more easily recognizable for what it contains, firmware for the Web Platform.  The "A2" refers to it now being the second alternative firmware choice for the Web Platform.[/s:]
As directed by Ian, the /trunk/web-platform/firmwareA2 directory has been moved and renamed to the /trunk/web-platform/FreeRTOS/port-eric directory as of r550.

I have set up the directory structure under [s:]/firmwareA2[/s:] /port-eric as specified in the Wiki.  To this end, the /trunk directory will always contain the most recent but potentially unstable version of the code.  The /tags directory will contain directories for released versions; code here should never be changed.  The /branches directory will contain directories for maintenance of that numbered branch.  Bug fixes should be made in /branches/X.X and this code should always be kept stable.

Based on this format, I have committed my code to /trunk and created a /tags/0.0.0 and a /branches/0.0 directory.  Right at this moment (r543) all three of /trunk, /tags/0.0.0, and /branches/0.0 contain the exact same code except for the version string they report.  Project files are in the root folder, all source code is in the /src directory and the output files are in the /bin directory.  The CustomColors.txt file is for use by the MPLAB editor to add user defined color syntax highlighting.  This is under Edit, Properties, Text tab, User Defined Color File.

At this point I would say the code is at a pre-alpha release stage but it does run.  The DHCP client will acquire an IP address and a web server will be started.  The web server will read files from the /www directory on the microSD card.  Currently long file names are not supported so all files must follow the 8.3 naming convention.  Therefore, create an /www/index.htm file for the default page.  (I also added a /www/favicon.ico from the DP site to mine:)  The USB serial port is set for 115200 baud 8,N,1 and will provide status messages.  At this point the console will echo characters you type back to you but that is all it does.

I would not have released it at this point yet except that Ian asked to see how it was progressing.  I doubt a lot of people will be interested in it but it is now available.  I will continue to work in the /trunk directory and I expect things in there to change drastically.  If you want to fix any bugs or would like to make some minor updates please do it it the /branches/0.0 directory and please keep the code stable.  Anyone is more than welcome to follow along and test the code in /trunk.  It is however still growing and evolving at this point and I may move/combine/eliminate any code in there in a seemingly random fashion.

A .hex file is available in the /bin directory that can be programmed in to a v1.0 or v1.1 Web Platform.  At this point there is no bootloader.  The .hex file must be programmed with a PIC programmer.  Since Ian recently stated that all Dangerous Prototypes projects are first and foremost to fill a personal need for him and then as an added bonus to make the work available to the hacker community, I do not feel too bad in saying that this firmwareA2 project is the same for me.  I am glad to give back to the community, am open to suggestions and welcome your feedback but I realize this may only be useful to me.

-Eric

Re: Web Platform Second Alternate Firmware (frimwareA2)

Reply #1
Thanks Eric, I'll give it a spin ASAP.

Quote
I have set up the directory structure under /firmwareA2 as specified in the Wiki.  To this end, the /trunk directory will always contain the most recent but potentially unstable version of the code.  The /tags directory will contain directories for released versions; code here should never be changed.  The /branches directory will contain directories for maintenance of that numbered branch.  Bug fixes should be made in /branches/X.X and this code should always be kept stable.

Or you can do like the rest of us and just stick stuff wherever ;)

I actually think the suggestions refer to the main /trunk /branch /code folder on the top level:
http://code.google.com/p/dangerous-prot ... rowse/#svn

I don't think it has quite the same meaning the way we use it as a multiple-project repository.

My suggestion would be to make a port-eric and port-matt sub folder of /FreeRTOS/, keep whatever your latest work is in your folder. Make a new subfolder if you need a new branch. I'll ask matt in the other thread if I can move his code, so it isn't an unpleasant surprise.

I posted this up to see if we can get some more testers. I also started a wiki page here for links and notes anyone has:
http://dangerousprototypes.com/docs/Fre ... b_platform
Got a question? Please ask in the forum for the fastest answers.

Re: Web Platform Second Alternate Firmware (frimwareA2)

Reply #2
Matt moved his to a sub-folder of freeRTOS, feel free to move your directory there too.
Got a question? Please ask in the forum for the fastest answers.

 

FreeRTOS/port-eric [Was: Web Platform Second Alternate Firmware (frimwareA2)]

Reply #3
[quote author="ian"]
Thanks Eric, I'll give it a spin ASAP.[/quote]

You're welcome.  Please let my know what you think but remember I still have a lot to do.

[quote author="ian"]
My suggestion would be to make a port-eric and port-matt sub folder of /FreeRTOS/[/quote]

As directed, the /trunk/web-platform/firmwareA2 directory has been moved and renamed to the /trunk/web-platform/FreeRTOS/port-eric directory as of r550.

[quote author="ian"]
I actually think the suggestions refer to the main /trunk /branch /code folder on the top level:[/quote]

Ian, you "think"?  I thought those were your directions:)

[quote author="ian"]I don't think it has quite the same meaning the way we use it as a multiple-project repository.[/quote]

I will readily admit I am new to using SVN for anything other than just downloading source code.  However, from what I have read, since everything in an SVN repository is treated as a normal directory or file the trunk, branches, and tags directories have no inherent special properties.  They are an artificail convention that can be used at any level in the repository.  See Version Control with Subversion, Chapter 4. Branching and Merging, section Using Branches and the figure from that section below.  See also Version Control with Subversion, Chapter 4. Branching and Merging, section Common Branching Patterns, subsection Release Branches for a discussion of the branching style the DP Wiki seemed to be advocating.

Version Control with Subversion, Figure 4.2. Starting repository layout


[quote author="ian"]
I posted this up to see if we can get some more testers. I also started a wiki page here for links and notes anyone has:
http://dangerousprototypes.com/docs/Fre ... b_platform[/quote]

I will be away from my development system all week but if I get some time I will try to update this page with some useful information.


-Eric

Re: FreeRTOS/port-eric [Was: Web Platform Second Alternate Firmware (frimwareA2)]

Reply #4
Thanks :)

Quote
Ian, you "think"?  I thought those were your directions:)

Only the first part, someone contributed a organization pattern to follow. I fully intended to follow it, but at the end of the day I'm luck to get all the user contribs tossed into a folder somewhere :) We're not a large, paid team working on a single big project, so just do whatever feels right for you. It's all for fun :)
Got a question? Please ask in the forum for the fastest answers.

Re: FreeRTOS/port-eric [Was: Web Platform Second Alternate Firmware (frimwareA2)]

Reply #5
If it is not fun why bother.  I checkout a copy of your world and got it to compile under mplabx now if I can just get it to talk to my pickit3 I would give it a try.

Ian: is the bp programmer up to doing this chip yet?

Re: FreeRTOS/port-eric [Was: Web Platform Second Alternate Firmware (frimwareA2)]

Reply #6
IT doesn't currently, but since it's a new (low VPP) PIC it should probably be possible with the existing PIC24 algos.
Got a question? Please ask in the forum for the fastest answers.