2015 NETMF and Gadgeteer R1 Pre-Release

I had to install the vs 2013 extensions manually by clicking on the .vsix file.

Cheers, that worked.

:slight_smile:

So, who is looking for bugs? :think:

Some of my findings/suggestions:

  1. In general, could you provide more informative exceptions, especially where we have no access to your source codes? For example, this exception brings no information about what went wrong:

[quote]#### Exception System.Exception - 0xffffffff (1) ####

Message:

GHI.IO.Storage.SDCard::NativeConstructor [IP: 0000]

GHI.IO.Storage.SDCard::.ctor [IP: 0029]

GHI.IO.Storage.SDCard::.ctor [IP: 0005] ####[/quote]

To contrast, this one speaks for itself:

Also, it would be helpful having a list that summarizes which of your internal calls could raise exceptions. We could then add try…catch statements where necessary.
2. What is the purpose of [em]Id[/em] property within GHI.IO.Storage class? During class initialization it is set to zero and that is about it. Maybe it could be safely removed?
3. [em]Controller.MassStorageConnected[/em] event does not fire for me when I plug USB flash drive. I have used an example code from here - https://www.ghielectronics.com/docs/51/accessing-folders-and-files#480 - but I could not get it working.
4. [em]Format(String, UInt32, String, Boolean)[/em] method within VolumeInfo class is not working correctly in a way that it does not set volume label. Maybe it could be easily fixed just as it was the case with [em]VolumeLabel[/em]?
5. For the sake of consistency, could you uniform analog precision constants within GHI.Pins assembly? For G120 you use [em]SupportedAnalogInputPrecision[/em] and [em]SupportedAnalogOutputPrecision[/em], while for other devices you use [em]SupportedAnalogPrecision[/em]. Even if resolution is the same for both analog inputs and outputs, I would like to see both [em]SupportedAnalogInputPrecision[/em] and [em]SupportedAnalogOutputPrecision[/em] constants provided.

I’m seeing a couple of oddballs with the Raptor & SD Cards which I’m going to have a better look at tonight. I’ve been getting some ‘Invalid Filesystem’ errors.

@ iamin -

  1. Better exceptions from the native side is something we want to do, but it’s a bigger task so no promises on it. Same with documenting what can throw what.

  2. Id is used for USB host mass storage.

  3. Looks like it was missing a call to Controller.Start();

  4. I don’t follow exactly. Did you mean to say VolumeID as one of them instead of VolumeLabel?

  5. That’s reasonable. It’ll be in the next release.

@ John -
3. Yes, adding it solved the issue.
4. One year ago I have reported that [em]VolumeLabel[/em] field within [em]VolumeInfo[/em] class was not working and you have fixed it ( https://www.ghielectronics.com/community/forum/topic?id=15101 ). You have explained back then that you can also fix [em]VolumeId[/em], but you prefer to leave it for MS to fix. As we see, MS is not addressing any bugs listed on codeplex and there is no evidence that this is going to change any time soon. So, based on that I was hopping you could fix my reported [em]Format[/em] issue if it is not very complicated.

@ iamin - Since the NETMF team moved on to Github for their work, it may be best to move any issues over there if they are still applicable. Not sure what their policy is on it. We have seen them fixing bugs in their public commits, so perhaps this is a feature they will consider again. We are not likely to fix bugs in NETMF for ourselves that should be fixed in the core.

I understand the reasoning behind that, but what if MS decides not to address reported bugs at all? ???

They have said: “All feedback and bugs/issues on codeplex will be reviewed and when activated will be added to the work items in GitHub by the development team. Bugs filed in GitHub will be validated against v4.4 (or later depending on when the bug is filed)”. They have not moved any bugs from codeplex to github and you must validate a bug againtst v4.4 to fill it on github … fail :wall:

@ Reinhard Ostermeier - All of the boards had various changes in TinyBooter. The release notes don’t point out which thing specifically was fixed in TinyBooter. For the G120, it was mostly G120E support.

@ iamin - Well if they decide not to address one of the bugs we have found, we could always fix it and do a pull request if it’s important enough to us.

1 Like

Given you will not (have to) modify TinyBooter, will the version number stay the same for G400 (4.3.7.4)?

@ Simon from Vilnius - G400 TinyBooter version is 4.3.7.7 in this release. Unless we find a bug in it, that will be the version number in the final release too.

Are there any incompatibilities to expect, If I don’t update TinyBooter to 4.3.7, but FW is updated?
In my case the update to FW 4.3.7 might come over IFU or may be FEZConfig. Depends on the actual situation, and the fact that I haven’t tested my IFU with FW update for a while :whistle:

@ Reinhard Ostermeier - For the G120 specifically, I believe there was also a fix regarding startup logo that affects all boards with displays. If that and G120E are not a concern, you should be okay using the old TinyBooter. That isn’t a guarantee though and if you see strange behavior, we recommend updating.

1 Like

I am having an issue with the beta and need to update the boot loader on a FEZ-Raptor as the device no longer can be found by FEZ Config or otherwise programmed. I have followed the instructions at https://www.ghielectronics.com/downloads/man/G400_User_Manual.pdf but the script throws an error. I have selected the correct comport, but I am rusty in understanding scripts, so I need some help. I have collected the various windows showing paths, and the error so perhaps someone will see what I have overlooked. Note, the manual suggests that he batch file is “update.bat” while the file I find is “update214.bat”, so this may suggest the error.
Thanks in advance!
Note - the preview does not show the image so…maybe this is a website issue??

Have you closed FEZ Config?

1 Like

@ Simon from Vilnius - thanks, I had not closed Fez Config! After closing it did not throw an error, but did not complete successfully.
The DOS windows reports: "The system cannot find the path specified"
I have done this several times in the past with prior versions of the firmware, and have not experienced this.
Perhaps you could look at the File Explorer windows and the error as shown in the previous message as I cannot find a file called “main.tcl” on my PC.
Rocky

@ rockybooth - Your folder structure looks very strange. Maybe uninstalling everything and reinstalling again?

@ Simon from Vilnius - I uninstalled and reinstalled. This did not work.
I notice the message: The “G400/FEZ Hydra Loader Updater” must be installed for this script to function.
I cannot find any file starting with “G400/” on my PC, so it appears that the setup has not worked.
Any ideas what to try next?