NNDK 2.6.7 beta release is now out and available for download on the NetBurner tools download page. Please report any issues in this thread or directly to support by submitting a new ticket at http://support.netburner.com.
NNDK 2.6.6 beta has been recalled due to a major TCP bug. If you are using 2.6.6, you should switch to 2.6.7 or 2.6.5
RELEASE 2.6.7 ( June 2014 )
This release is a minor update to the previous release. 2.6.6 introduced a major bug causing TCP to failure on multiple platforms. This release address’ that.
New in this version
Examples
Added 1-Wire example for MOD5441X platforms
Added Wifi examples
System
Added PIT class API for OS semaphore and flag usage
Corrections in this version
All Platforms
2.6.6 introduced a major TCP bug causing some platforms to fail. Fixed this.
NBEclipse
NBEclipse will no longer wait forever on boot if a restrictive firewall is set up
Better way of opening apps from NBEclipse gets around UAC restrictions in windows
RELEASE 2.6.6 ( May 2014 )
New in this version
Cloud
Added Xively Development kit and examples
Examples
Added task profiler example ( /examples/StandardStack/Profiler )
Added example demonstrating how to lock an application to a specific board ( /examples/StandardStack/BoardLock )
Library
Added webclient library and examples beta
Added JSON library and examples beta
SB700EX
Added pins I/O through serial port pins
System
Modified User Params to take advantage of large flash sector sizes on some platforms ( MOD5441X - 128K)
Added GetValidConfig() which always returns a valid config record or NULL, most applicable to WiFi and 2nd Ethernet interfaces.
Added DHCP server beta
Tools
Autoupdate “find” now supports multiple network interfaces on the PC
Wifi
Released nbwifi driver for new Wifi hardware ( eg NBWIFIIN-SOM–100IR )
Includes Access Point mode
Corrections in this version
HiResTimer
Bug Fix: If readTime was called as a rollover occurred it would be off by a full count.
Bug Fix: delay_uSec() did not properly set the delay.
NANO54415 Using EFFS Standard File System
Does not affect FAT File System Modified Nano STD filesystem to support larger filesystems up to 7MB (previously only up to 512kB). Added the ability to have descriptor blocks larger than a physical sector size. There can be at most 2 descriptor blocks under this scheme.
SBL2e
Factory application changed declaration of some const variables yielding >1K additional RAM ( Applications derived from the Factory Application should examine these changes for additional RAM space )
Serial
Fixed serialComplete() function
System
Fixed TCP connectvia()
Fixed issue with OS_MBOX operation when posting NULL objects or 0
This announcement seems dated, since 2.7 beta release is available, and my issue is with that release.
Did a rebuild all system files for the NANO54415, and got a slew of errors trying to compile Ethernet.cpp. Many of them were for variables not declared in the file's scope.
In multiple Ethernet-related system files (etherprint.cpp, ethernet.cpp, etc.) allowed me to rebuild the system libraries. I shouldn't have needed to do that, but I don't have the time to figure out why I needed to.
Now, unfortunately my app no longer builds. The EnablePHY and DisablePHY routines that used to be in Ethernet.cpp have been removed for some reason. Not cool. Also, I am now getting an undefined reference to sim_rgpio in a number of my source files. Did something get moved to a different file?
I really dread NNDK updates, because I have done many, and they never go smoothly.
OK, I had to search my old threads on the forum to find the answer to sim_rgpio issue. The sys.ld file for the NANO should have the following entry in it.
After successfully rebuilding libraries and my app (commenting out the EnablePHY and DisablePHY function calls) with version 2.7 Beta, I've tried exercising my app in the same fashion as I did with version 2.6.
My observations:
My FTP transfers are much slower.
My FTP sessions are no longer reliable - scheduled automatic file transfers are now failing at random.
I've seen my FTP session halt when closing out the browser showing my web site.
I was hoping to be able to operate in passive FTP mode after this update, but now I can't even run reliably in active mode, which I could do with my previous NNDK version. Looks like I'm headed back to v2.6.
SaveUserParameters() appears to be broken. I have a project that works fine when compiled in 2.6.7. Load it up in 2.7.0, rebuild all system files, clean the project, build it and send to a netburner. From what I can tell, everything else works except that I cannot save my settings with the version built in 2.7.0. I can take the project back to 2.6.7 and it will then save settings again. The snippit of code I'm using is:
if (SaveUserParameters(&mds, sizeof(mds)) != 0) {
//Saved to flash
} else {
iprintf("Failed to write settings to flash.\r\n");
}
Near the end of /system/tcp.cpp is a new function called TcpGetTxBufferAvailSpace(). I was looking for something like this to detect when I had a half-disconnected socket and the TX buffer gets full. However, the corresponding line doesn't exist in tcp.h to make it accessible from my project. I saw a couple other useful functions there that should also be in the include. Add these lines into /include/tcp.h in the next release:
SaveUserParameters() appears to be broken. I have a project that works fine when compiled in 2.6.7. Load it up in 2.7.0, rebuild all system files, clean the project, build it and send to a netburner. From what I can tell, everything else works except that I cannot save my settings with the version built in 2.7.0. I can take the project back to 2.6.7 and it will then save settings again. The snippit of code I'm using is:
if (SaveUserParameters(&mds, sizeof(mds)) != 0) {
//Saved to flash
} else {
iprintf("Failed to write settings to flash.\r\n");
}
what mod are you using ?
I haven't seen any problem with MOD5441X .
The SaveUserParameters source code, now calculates the maximum allowed length to save as (FlashAppBase - UserParamBase) instead of using a constant 8192 as before.
FlashAppBase and UserParamBase are defined in the relevant sys.ld file