Installing application over TCP
#1
Posted 25 July 2011 - 11:50 AM
Question
Is it possible to install the application over the network connection (instead of the USB)? I see that the .NET Micro Framework Deployment Tool has TCP/IP under the Device dropdown, but my device won't show up.
My real world case... the Netduino Plus would be connected on the other end of the Internet (say... at my bungalow in Tahiti or my ski chalet in Aspen “work with me here!”) And I know this might shock you… but I’ve been writing code for close to forty years and I still don’t write perfect code! I want to be able to upgrade the code remotely. Is it possible?
If my message helped you... how 'bout giving me a
www.MessingWithReality.com
#2
Posted 25 July 2011 - 08:16 PM
#3
Posted 26 July 2011 - 06:07 PM
somebody have more insight on what that would require from an engineering standpoint?
how much are you talking about? is that something that could fit on a BOB that wouldnt break the bank?The TCP/IP bootloader requires too much flash, ...
i see this being a blocker on any commercial application of the netduino.
at least its a pretty big problem on my own project.
how can you deploy hundreds of these in the field if you cant remotely administrate the software?
alternately --> how hard do you think it would be to write a downloadable exe that could reflash the device? (lets not even talk about porting it to linux/MAC..etc)
i suppose some end users would be able to run some software on a USB attached PC much like they might update their router firmware.
#4
Posted 17 August 2011 - 11:28 PM
#5
Posted 18 August 2011 - 01:33 AM
If you load your assembly dynamically using AppDomains, you can save updated DLLs on the MicroSD card remotely--and then reboot the device via code (and reload the assemblies on boot).Hello everyone, we are releasing this week the initial version of a product that will be installed in remote gas stations, with only GPRS connections. And one of the requirements is to send new software version remotely. Our product has a Netduino Plus and a GPRS Shield, is there a chance to download the new software version and update it remotely ?
How big is your code?
Chris
#6
Posted 15 September 2011 - 07:22 AM
Hi Sebastian,
If you load your assembly dynamically using AppDomains, you can save updated DLLs on the MicroSD card remotely--and then reboot the device via code (and reload the assemblies on boot).
How big is your code?
Chris
chris, you are the wind beneath my wings.
let me rephrase/requery your response:
1. my netduino app executes an "ET phone home" and decides an update is in order.
2. it downloads the new DLL and saves it to its SD card writing over the pre-existing dll.
3. then the magic happens... which is basically a routine that uses reflection to mount the new dll off the SD card? or a straight reboot of some code that already looks to load that dll? i dont know.
please expand step 3 for us mere mortals in pseudocode.
help an ignorant plebe and i will upload my sacred clam pizza pie recipe.
along with a promise to upload my own solution to this conundrum should i be man enough to solve it.
or maybe i just show up at the maker faire this weekend in NYC and you fight me in hand to hand combat.
its all up to you. or maybe me. i am not sure.
#7
Posted 15 September 2011 - 09:36 AM
#8
Posted 12 November 2011 - 04:26 PM
Hi Inquisitor,
The TCP/IP bootloader requires too much flash, so we can't fit it on a small board like Netduino Plus.
We don't recommend deploying and debugging code remotely, as it's hard to press the reboot button (which is sometimes necessary). Although I'm sure that several community members would love to visit your chalet in Aspen and would be happy to press the reboot button on demand while there
Chris
I would think the following could work, but unfortunately I do know enough yet about the Netduino to try writing this:
If the bootloader is not needed to be changed often, then perhaps a version of it could be written that goes to a boot directory on the SD card, flashes a new ER_CONFIG and ER_FLASH, if necessary, and then flashes a new copy of the application, if needed, before starting the system running.
Operating system softwre and/or firmware versions could then be downloaded, checked for errors, and then moved to the boot directory, just before a reboot.
#9
Posted 11 May 2012 - 10:34 AM
Hey,
I was looking for the same thing and stumbled upon this thread by Chris:
http://forums.netdui...nd-sample-apps/
This is essentially an app that tries to dynamically load a PE application and execute it.
It works perfectly in 4.1.x but not in 4.2 (http://forums.netdui...der-and-42beta/)
I modified it a bit so that when it boots it has two options, run the core application or if it doesn't exist or cannot load, load a recovery.pe that will connect to a server and download the core.pe again and reboot.
I'll try to make a complete example in the next couple of days and post it.
If you have any luck/questions please post!
Was there any movement on this? 4.2+ support would be wonderful.
#10
Posted 11 May 2012 - 02:25 PM
We're currently trying to get this to work with the Ethernet module and Netduino Go... Sample chips for the Ethernet modules will arrive here Monday (yay!) so we'll be beating down this path again soon.Was there any movement on this? 4.2+ support would be wonderful.
If we can get it up and running there, we may be able to back-port the feature to Netduino Plus. I don't know if there's enough flash/RAM to make that happen...but we can explore
Chris
#11
Posted 14 May 2012 - 07:43 AM
We're currently trying to get this to work with the Ethernet module and Netduino Go... Sample chips for the Ethernet modules will arrive here Monday (yay!) so we'll be beating down this path again soon.
If we can get it up and running there, we may be able to back-port the feature to Netduino Plus. I don't know if there's enough flash/RAM to make that happen...but we can explore
Chris
Yes of course. Would be interesting to be able to "send" updates to a netduino deployed somewhere, though as you mention the flash/RAM is tight. I must get out of the mindset of a Windows C# coder!
Thanks for the update
1 user(s) are reading this topic
0 members, 1 guests, 0 anonymous users