9 years, 4 months ago.

LocalFileSystem

Hi,

i know there are many many posts on localfilesystem problems and how tos, but i did not find an answer...

system: mbed lpc1768

my problem: i wanted to read a file from the mbed space that shows up when connected via usb (where the .bin goes ant the mbed.htm is).

following code ends in error:

LocalFileSystem local("local");

printf("File Parsing:\r\n");
    FILE *fp2 = fopen( "/local/registers.txt", "r");
    printf("Loading file:\r\n");
    
    if ( fp2 == NULL ) {
        error("Could not open file for read operation.\r\n");
    }

so i tried to start at the beginning and implemented the example from the localfilesystem: localfilesystem example copied to compiler:

#include "mbed.h"
 
LocalFileSystem local("local");               // Create the local filesystem under the name "local"
 
int main() {
    FILE *fp = fopen("/local/out.txt", "w");  // Open "out.txt" on the local file system for writing
    fprintf(fp, "Hello World!");
    fclose(fp);
}

i am connected to the mbed via usb, i see the device and the bin but the out.txt never shows up.

i also tried another example:

LocalFileSystem local("local");

FILE *fp = fopen("/local/test.txt", "w"); 
    fprintf(fp, "Hello file system!\n");
    if ( fp == NULL ) {
        error("Could not open file for write operation.\r\n");
    }
    fclose(fp);

which throwed no error but showed no file. after some restarts and refreshes i saw test.txt and TEST.TXT but neither file was accessibl. windows throwed an access error message. When i deleted it and loaded blinky demo with only led blinking the files always reappeared.

i flashed the newest firmware again to the mbed and now the files are gone but i still cannot read or write to files.

what am i missing?

1 Answer

9 years, 4 months ago.

Hi Jörn,

You are using long file name for reading file. It could be fine if you use "8.3" format file name. The name should be 8 characters or less and suffix should be 3 chars or less
If you try "registrs.txt" instead of "registers.txt", it will be fine ;)

Accepted Answer

hi and thank you for your answer.

i tried the write example again and i figured out that i have to unplug the mbed and have to plug it in again, only then the out.txt shows up.

i changed my read to an 8.3 format and now it seems to work.

thanks for help!

posted by Jörn K. 14 Jan 2015