NAFSinit_volume_cb fails when running sample project


I have installed a fresh copy of NET OS 7.4 (with Digi ESP) on my computer. All the packages have been updated to today current version. And I am using a CC9P 9215

However, the package FileSystem_Update_742 version 1.22 is giving me problems.
Firstly, I did resolve a compiling problem by setting BSP_YAFFS_DRIVER_ENABLE to TRUE (thanks to dakotas_dad for his help).

I can now compile fine, but when running the application in debug, the function ‘NAFSinit_volume_cb’ returns -1. And I reach the function ‘netosFatalError’ having for desciption paramater ‘Unable to initialise file system’.

Does anyone knows how to resolve this issue on a sample project?

Thanks in advance.


From what I can see from the API reference guide and from .h file netos\h\fs.h, when NAFSinit_volume_cb returns a -1 that means that the volume name you are supplying is invalid. Volume name is the second parameter to the API. Further my first guess would be that your volume name contains one of the following characters that would deem it invalid:

*, |, ’ ’ (blank space), " (a double quote), ?, \ (two back slashes), <, >, :

If any of the characters displayed above is contained in your volume name, the call will return -1.

Problem resolved.
Uninstall FileSystem_Update_742 and reinstall it did resolve the problem.
Even the BSP_YAFFS_DRIVER_ENABLE, there is no need to set it to TRUE anymore.


About this problem being resolved by uninstalling and install back the FileSystem_Update_742 and Flash_Update_742
I have done a compare between the packages installed previously and the current packages.

Despite they have the same version, there are some changes in the file ‘.
etos74\src\bsp\fsintf\fwdl.c’. And these changes are regarding BSP_YAFFS_DRIVER_ENABLE.

Can the packages have their files different without updating the version?

In attached file are the ‘fwdl.c’ file before the uninstall and after the new install.


In the original release of NET+OS V7.4.2 the YAFFS file system was always enabled. This was a memory issue for some customers that were (1) short on memory and (2) did not want or need YAFFS. Thus in the update version you must explicitly enable YAFFS to get it, thus saving memory if you do not want or need it.

Also yes since this was a patch it was done without updating the version.