Netduino home hardware projects downloads community

Jump to content


The Netduino forums have been replaced by new forums at community.wildernesslabs.co. This site has been preserved for archival purposes only and the ability to make new accounts or posts has been turned off.
Photo

Netduino Firmware v4.1.0 (update 6) BETA 1


  • Please log in to reply
14 replies to this topic

#1 Chris Walker

Chris Walker

    Secret Labs Staff

  • Moderators
  • 7767 posts
  • LocationNew York, NY

Posted 09 November 2010 - 07:13 AM

Version: 4.1.0 Update 6 BETA 1 (version 4.1.0.6 b1) WARNING: This firmware is pre-release firmware. It may temporarily cause your Netduino to cease functioning properly. If this firmware does not work for you, you will likely need to erase your Netduino completely and re-flash the production v4.1.0.5 bootloader using Atmel SAM-BA tools (on a 32-bit Windows installation) and the production v4.1.0.5 firmware using MFDeploy. With this firmware, you will have the following resources available for your code: 128KB Flash 62KB+ RAM This firmware includes the following updates: 1. Enhanced support for VMWare Fusion and Oracle VirtualBox 2. Enhanced deployment reliability (software reset enhancements) To find the current version of your Netduino firmware: 1. Go to the Start Menu > Programs > Microsoft .NET Micro Framework 4.1 > Tools 2. Run MFDeploy.exe. Be careful to run MFDeploy.exe and not MFDeploy.exe.config (as file extensions are hidden by default) 3. Plug your Netduino into your PC using a Micro USB cable. 4. In the Device section at top, select USB instead of Serial. Your Netduino should appear in the drop-down; if not, select it. 5. Select the Target menu, Device Capabilities option. 6. In the output box, find the "SolutionReleaseInfo.solutionVersion" value. This is your firmware version. Users of firmware version 4.1.0.5 or earlier may update to this new firmware using the MFDeploy tool: 1. Download and unzip the attached file to a directory on your computer. 2. Go to the Start Menu > Programs > Microsoft .NET Micro Framework 4.1 > Tools 3. Run MFDeploy.exe. Be careful to run MFDeploy.exe and not MFDeploy.exe.config (as file extensions are hidden by default) 4. Plug your Netduino into your PC using a Micro USB cable. If your Netduino does not connect successfully, try plugging the USB cable into your Netduino first...and then your PC. 5. In the Device section at top, select USB instead of Serial. Your Netduino should appear in the drop-down; if not, select it. 6. Click "Browse..." and select the unzipped files from step #1 (ER_CONFIG and ER_FLASH). 7. Press "Deploy". It will take a few minutes to update your Netduino.

#2 Chris Walker

Chris Walker

    Secret Labs Staff

  • Moderators
  • 7767 posts
  • LocationNew York, NY

Posted 09 November 2010 - 07:14 AM

Some users may erase their Netduinos completely to use them as low-cost ARM development boards or to otherwise tinker. In this case, it will necessary to redeploy the TinyBooter bootloader before redeploying the Netduino firmware. To use the new "USB and serial - deployment selection" feature, you'll need to erase your Netduino and reflash the v4.1.0.5 or later bootloader as well. The TinyBooter booloader (v4.1.0.6 b1) is attached to this post for your convenience.

#3 neonsonicboy

neonsonicboy

    Member

  • Members
  • PipPip
  • 10 posts
  • LocationStaffs, UK

Posted 10 November 2010 - 04:45 PM

Hi again, So I updated- the process is smoother, quicker and works a whole load better. Thanks! However, when the application I've written has been uploaded, it disconnects itself from the VM. Nothing major, I just reconnect the USB device and it carries on. Anyway, thanks for the update! neonsonicboy
neonsonicboy - betaarchive.co.uk VIP member - Netduino owner ;)
Posted Image
Follow me on Twitter! | Find me in irc.aurora-irc.eu #aniboshi [often but not always] | Also known as ntkrpamp on IRC channels | I don't post here much but I visit often.

#4 João Mello

João Mello

    Advanced Member

  • Members
  • PipPipPip
  • 30 posts

Posted 09 December 2010 - 04:47 PM

I did a big mistake!
I did a code with UsbPort.Stop(); and this stoped my usb at the start of my application ;/
Now I cant write anyomore?

#5 Chris Walker

Chris Walker

    Secret Labs Staff

  • Moderators
  • 7767 posts
  • LocationNew York, NY

Posted 09 December 2010 - 06:01 PM

I did a big mistake!
I did a code with UsbPort.Stop(); and this stoped my usb at the start of my application ;/
Now I cant write anyomore?


Hold down the pushbutton on your Netduino when you plug it into your PC. This will put your Netduino into bootloader mode for about 5 seconds. Then, press the ERASE button in MFDeploy.exe--and it will erase your app.

If that doesn't work, the backup plan is to erase and reflash your Netduino. But you should be able to just erase your app...and all will be well.

Chris

#6 João Mello

João Mello

    Advanced Member

  • Members
  • PipPipPip
  • 30 posts

Posted 09 December 2010 - 07:10 PM

Hold down the pushbutton on your Netduino when you plug it into your PC. This will put your Netduino into bootloader mode for about 5 seconds. Then, press the ERASE button in MFDeploy.exe--and it will erase your app.

If that doesn't work, the backup plan is to erase and reflash your Netduino. But you should be able to just erase your app...and all will be well.

Chris


Thanks a lot!

At this firmware... has support for usb?
And would like to congratulations all for lab tools ! Its a very good work, and making this open source. I'm coursing university computer engineer, as soon as possible I would like to help netduino!

Mello

#7 Corey Kosak

Corey Kosak

    Advanced Member

  • Members
  • PipPipPip
  • 276 posts
  • LocationHoboken, NJ

Posted 24 December 2010 - 03:43 PM

Is the source code to this firmware available somewhere? (What I'm trying to do: I've been able to successfully compile my own firmware (using the source from the Netduino downloads page), but the memory available to my code is a lot smaller. I don't necessarily need the code changes in this firmware but I would love having the 62KB+ RAM) Sorry if this is a stupid question.

#8 Corey Kosak

Corey Kosak

    Advanced Member

  • Members
  • PipPipPip
  • 276 posts
  • LocationHoboken, NJ

Posted 24 December 2010 - 05:16 PM

Ah, I seem to be able to do it by editing the tinyclr\scatter file. Not sure how much of the RAM I'm entitled to suck up, but I did this for myself and nothing caught on fire:

    <!-- 16KB Stack and 80KB Heap -->
    <Set Name="Heap_Begin"      Value="0x00008000"/>
    <Set Name="Heap_End"        Value="0x0001BFF8"/>
    <Set Name="Stack_Bottom"    Value="0x0001C000"/>
    <Set Name="Stack_Top"       Value="0x0001FFF8"/>


#9 Chris Walker

Chris Walker

    Secret Labs Staff

  • Moderators
  • 7767 posts
  • LocationNew York, NY

Posted 24 December 2010 - 06:35 PM

Is the source code to this firmware available somewhere?

(What I'm trying to do: I've been able to successfully compile my own firmware (using the source from the Netduino downloads page), but the memory available to my code is a lot smaller. I don't necessarily need the code changes in this firmware but I would love having the 62KB+ RAM)

Sorry if this is a stupid question.


Hi Corey,

Which memory is smaller? Flash or RAM?

BTW, v4.1.0.6 beta 2 will be posted next week.

Chris

#10 Corey Kosak

Corey Kosak

    Advanced Member

  • Members
  • PipPipPip
  • 276 posts
  • LocationHoboken, NJ

Posted 24 December 2010 - 06:39 PM

Which memory is smaller? Flash or RAM?


I meant the RAM (heap) available to my running C# program.

BTW, v4.1.0.6 beta 2 will be posted next week.


Great! It will help (me, anyway) if you also post the source.

#11 Chris Walker

Chris Walker

    Secret Labs Staff

  • Moderators
  • 7767 posts
  • LocationNew York, NY

Posted 24 December 2010 - 06:43 PM

I meant the RAM (heap) available to my running C# program.


I see now. Interesting. Have you worked with scatterfiles before?

Great! It will help (me, anyway) if you also post the source.


We'll try to post the beta code in a branch over on CodePlex. Unless we move to GitHub. Unfortunately every time we upload any major changeset to CodePlex we get "bad gateway" and/or other errors from TortoiseHg. We've spent a solid day and a half of engineering trying to get it to work, so it may be time to move onto another repository option...

Chris

#12 Corey Kosak

Corey Kosak

    Advanced Member

  • Members
  • PipPipPip
  • 276 posts
  • LocationHoboken, NJ

Posted 24 December 2010 - 06:52 PM

I see now. Interesting. Have you worked with scatterfiles before?


Nope. Because I'm a monkey, I just changed that one file I mentioned hoping that it would work (and it seemed to). I'd like to read more about it but the docs I found were kind of unsatisfying. In any case (because it seemed to work) it was no longer on my critical path for the moment. (By the way, my "critical path" is to try to release v1.0 of my Fluent Interop stuff by the end of this weekend. It is coming along quite nicely IMO :wub: )

Unless we move to GitHub.


In case you want my vote, I don't know anything about Hg but I use git on a daily basis at work and at home, and I love it.

#13 bill.french

bill.french

    Advanced Member

  • Members
  • PipPipPip
  • 260 posts
  • LocationPrinceton, NJ

Posted 24 December 2010 - 07:12 PM

to release v1.0 of my Fluent Interop stuff by the end of this weekend.


I was wondering what you've been up to!

#14 Corey Kosak

Corey Kosak

    Advanced Member

  • Members
  • PipPipPip
  • 276 posts
  • LocationHoboken, NJ

Posted 24 December 2010 - 07:25 PM

I was wondering what you've been up to!


I can't tell you how excited I am. Code is executing on the native side, and my interop is working. The main thing left to do is to clean up / put some more work into my C# generator for the funky little metalanguage.

But code like the below is working right now.

using Kosak.SimpleInterop;
using Microsoft.SPOT;

namespace TestSimpleInterop {
  public class Program {
    public static void Main() {
      //MUL R0,R1
      //BX LR
      Test(new short[] {0x4348, 0x4770}, 9, 3); //prints 27

      //ADD R0,R0,R1
      //BX LR
      Test(new short[] {0x1840, 0x4770}, -5, -8); //prints -13
    }

    private static void Test(short[] code, int arg0, int arg1) {
      var ba=new byte[0];
      var sa=new short[0];
      var ia=new int[0];
      var result=NativeInterface.Execute(code, arg0, arg1, 0, 0, ba, ba, ba, ba, sa, sa, sa, sa, ia, ia, ia, ia);
      Debug.Print("result="+result);
    }
  }
}

Which prints:
result=27
result=-13

The cool thing is once you know the opcodes, you don't need my whole huge framework. It is very lightweight if you don't want to use the funky metalanguage.

#15 bill.french

bill.french

    Advanced Member

  • Members
  • PipPipPip
  • 260 posts
  • LocationPrinceton, NJ

Posted 24 December 2010 - 08:28 PM

I can't tell you how excited I am.


For the love of God, man, don't reply to me! Get back to work!




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

home    hardware    projects    downloads    community    where to buy    contact Copyright © 2016 Wilderness Labs Inc.  |  Legal   |   CC BY-SA
This webpage is licensed under a Creative Commons Attribution-ShareAlike License.