Skip to main content
  • Products
  • Evaluate our Software
  • Downloads
  • Free Utilities
  • Purchase
  • Silicon Vendors
  • Support
  • About Us
  • Blog
  • Forum
  • Search
  • Jobs
  • Newsletter
  • Blog
  • Contact
  • Shop
  • emFile

    emFile

    A fail-safe file system for embedded systems. Optimized for minimal memory consumption in RAM and ROM. Fast and versatile.

    Contact us
    Downloads
    Documentation
    SEGGER emFile
    1. 1.Overview
    2. 2.Key features
      1. 2.1.Fail-safe protection
      2. 2.2.Data security
      3. 2.3.Storage flexibility
    3. 3.Use cases
    4. 4.A fail-safe file system
      1. 4.1.Journaling
      2. 4.2.RAID 1
      3. 4.3.RAID 5
    5. 5.Flash-memory drivers
      1. 5.1.NOR flash drivers
      2. 5.2.NAND flash drivers
    6. 6.Flash-media drivers
      1. 6.1.SD, SDHC, and MMC device drivers
    7. 7.Additional features
      1. 7.1.exFAT®
      2. 7.2.BigFAT
    8. 8.Image creator for production
    9. 9.Performance and memory footprint
      1. 9.1.Test results and performance
      2. 9.2.Resource usage
    10. 10.Licensing
    11. 11.FAQ

    Overview

    A digital flowchart symbol with interconnected nodes is overlaid on a background of binary code and circuit patterns. The image represents concepts of data organization, processing, and digital technology.

    emFile is a file-system library that enables embedded applications and systems to store data securely and reliably on all types of storage devices. Hardware agnostic, it can run on any 16-, 32-, or 64-bit target for which a compiler is available. Furthermore, most 8-bit targets are supported. 

    Ready-to-run device drivers are available for NAND and NOR flash; SD, SDHC, SDXC, and MMC cards; e.MMC storage devices; and USB flash drives. emFile includes support for exFAT; FAT12, 16, and 32 file systems, as well as BigFat; and SEGGER's proprietary Embedded File System (EFS), which is specifically designed to meet the requirements of state-of-the-art embedded applications.


    Key features

    The emFile file-system library is the result of nearly three decades of continuous and ongoing development. It has been deployed across several hundred million devices worldwide, and it has proven itself in the field by delivering a range of powerful features that developers can rely on. Features include:

    A teal circular icon features a white shield in the center, which contains two gears, one larger and one smaller. The symbol represents security and mechanisms, often associated with protection and operational efficiency.

    Fail-safe protection

    emFile is a robust, fail-safe file system for embedded devices, meaning file-system corruption is nearly impossible, and data has maximum protection in the event of unexpected power loss or device corruption.

    A circular icon featuring a stylized shield with a document and lines representing text inside it, symbolizing protection and security of information or documents. The color scheme is predominantly teal.

    Data security

    emFile supports encryption for embedded file systems. Encryption is essential for securing data for individual files or even an entire storage device. It can be used with both EFS and FAT file systems as well as with supported storage devices, such as NAND, NOR, and SD/MMC cards.

    A white microSD card icon is centered within a teal circular background. The icon represents a storage device used for data storage in various electronic devices.

    Storage flexibility

    emFile's storage layer is a competent abstraction layer of physical memory structures. Complex operations are turned into reliable, simple memory-access operations. Supported memory structures include NAND and NOR flash, and CompactFlash, SD, SDHC, SDXC, and MMC cards. The storage layer can access these structures as RAID 1 and RAID 5.


    Use cases

    emFile is suitable for a wide range of use cases in a variety of embedded systems, applications, and devices. 

    A blue and gray in-circuit programmer labeled "Flasher" is displayed. It features a logo for SEGGER and indicators for "Ready," "Not ready," and "Fail" status. The device is used for programming electronic circuits. The background has a digital design.

    SEGGER Flasher programmers

    emFile's file-system library enables an embedded application or system to store data securely and reliably on any kind of storage device, such as a SEGGER Flasher.

    More information
    A digital color measurement device is shown, featuring a touchscreen display with icons for various functions. The device is primarily blue and gray, set against a colorful splash backdrop. The BYK logo is prominently displayed below the device.

    Spectrophotometer

    Since 2012, BYK-Gardener has used emFile for the embedded-MultiMediaCard memory in its spectro2guide color spectrophotometer. Here, emFile enables organization of configuration, system, and measurement files, and it works together with as suite of other products in the SEGGER ecosystem to provide a first-class user experience. 

    More information

    A fail-safe file system

    A flowchart illustrating the layers of a file system architecture. It includes the emFile API layer at the top, connecting to file system and storage layer APIs. The structure leads down to the hardware layer, highlighting components like device drivers and different storage types.

    emFile is organized in 5 layers (API, file-system, storage, device, and hardware layers) and is designed with security in mind. Therefore, all access operations are atomic, which helps ensure data consistency. 

    Even in the event of an interrupt due to failure, no storage or data will be left in an undefined state. Furthermore, RAID modes 1 and 5 can be supported to increase security at the storage layer, as well as journaling at the file-system layer.

    More about software structure 

    Journaling

    emFile's journaling is an additional component that sits above the file system and ensures that the file-system layer is fail-safe. Journaling means that a file system logs all changes to a journal before they are committed to the main file system, which ensures consistency in data recently written to file system. 

    More about journaling 

    RAID 1

    emFile offers maximum data integrity and reliability with RAID 1. It provides protection from storage device defects and failures, and it works on the storage layer with FAT and EFS file systems.

    More about RAID 1 

    The diagram illustrates the structure of RAID 5 with three partitions. Each partition contains sectors labeled 0, 1, 2, and corresponding data distributions, showcasing the organization of data across multiple drives for redundancy and performance.
    Diagram illustrating RAID 1 configuration with two devices: a Master Device on the left and a Mirror Device on the right. Each device contains identical sectors (0 to n) to ensure data redundancy and protection. The connection is labeled "RAID 1" to indicate the mirroring process.

    RAID 5

    With RAID 5, emFile offers maximum data integrity and reliability with increased usable capacity. RAID 5 requires at least three storage partitions to distribute data over several partitions. Additionally, it uses less data storage to achieve the same data security as RAID 1.

    More about RAID 5 


    Flash-memory drivers

    A dark background filled with cascading vertical lines of binary code (0s and 1s) creates a digital, futuristic atmosphere. The pattern gives a sense of depth, resembling a virtual tunnel or data stream, enhancing themes of technology and information.

    NOR flash drivers

    The NOR driver allows the file-system layer to efficiently write and read blocks of data (logical sectors) to and from a NOR flash device. 

    emFile comes with two different NOR drivers:

    • A block-map NOR driver
    • A sector-map NOR driver
    More information
    A dark background filled with cascading vertical lines of binary code (0s and 1s) creates a digital, futuristic atmosphere. The pattern gives a sense of depth, resembling a virtual tunnel or data stream, enhancing themes of technology and information.

    NAND flash drivers

    The emFile NAND drivers allow the file-system layer to efficiently write and read blocks of data (logical sectors) to and from a NAND flash device. 

    emFile comes with two different NAND drivers:

    • An SLC driver
    • A universal driver
    More information

    Flash-media drivers

    SD, SDHC, and MMC device drivers

    emFile offers SD, SDHC, and MMC flash-media drivers. SD and MMC drivers provide access to compatible storage devices (such as SD, SDHC, SDXC, MMC, and MMC Plus cards, and e.MMC devices), which means applications benefit from high storage capacities at a low cost. 

    More information 

    The image displays six SD cards labeled "SD CARD" and "SD CARD Ultra," each showcasing a capacity of 512 GB. The background consists of binary code, emphasizing a digital theme. There are variations in color, with some cards featuring red and others in blue.

    Additional features

    A dark background filled with cascading vertical lines of binary code (0s and 1s) creates a digital, futuristic atmosphere. The pattern gives a sense of depth, resembling a virtual tunnel or data stream, enhancing themes of technology and information.

    exFAT®

    SEGGER’s exFAT® implementation is a specialized version of Microsoft's exFAT® file system that is designed for embedded systems. 

     

    More information
    A dark background filled with cascading vertical lines of binary code (0s and 1s) creates a digital, futuristic atmosphere. The pattern gives a sense of depth, resembling a virtual tunnel or data stream, enhancing themes of technology and information.

    BigFAT

    BigFAT allows storage of files sized 4GB or more on FAT-formatted drives with full FAT compatibility. 

    More information

    Image creator for production

    When a device is ready to ship, data and firmware is added the final product. With today's user interfaces and other data-intensive requirements, storage mediums often use a file system to better manage different types of data. A common standard is the FAT file system. 

    To create a structure, memory devices are formatted, and data is added to file systems in the form of files. This may involve several time-consuming, repetitive steps that increase the likelihood of errors in production. To reduce production steps to a single write operation, a file system is created on a developer's system and converted to a binary that can be used with production programmers, such as SEGGER's Flasher series.

    An electronic device labeled "Flasher" is shown, designed for programming various memory types, including NAND, NOR, and eMMC. Arrows indicate data transfer between the Flasher and a schematic representation of a memory module. The device has indicators for status readiness.

      Storage Image Creator FAT 

      NAND ImageCreator 

      NOR Image Creator 


    Performance and memory footprint

    A dark background filled with cascading vertical lines of binary code (0s and 1s) creates a digital, futuristic atmosphere. The pattern gives a sense of depth, resembling a virtual tunnel or data stream, enhancing themes of technology and information.

    Test results and performance

    emFile includes benchmark code with which users can measure performance on certain targets. The benchmark is a good approximation of the length of time required for common file-system operations.

    See test results
    A dark background filled with cascading vertical lines of binary code (0s and 1s) creates a digital, futuristic atmosphere. The pattern gives a sense of depth, resembling a virtual tunnel or data stream, enhancing themes of technology and information.

    Resource usage

    emFile has been specifically designed for resource-constrained devices, and features can be retained or excluded from a build to tailor a system around design requirements and efficiency. 

    See memory info


    Licensing

    A digital graphic promoting a sale with a bold "25% off 2nd seat*" message at the top, and a prominent "FREE Professional Tools" note at the bottom, indicating availability for non-commercial use. The background features a pattern of binary code.

    emFile is available under various embedded-software license models and delivered in object and source-code packages. With a wide range of licensing options, emFile can fulfill both commercial and technical requirements.

    All licenses are obtained through one-time payments. emFile is royalty free and is not subscription based, meaning that software is a part of equipment expenses, keeping costs static. emFile licenses include six months of updates and support from SEGGER's Embedded Experts.

    * Applies only to a second license and any additional license(s) purchased for the same product under the Single Product License and Single Developer License.

    Friendly License

    The object-code packages are available under SEGGER's Friendly License (SFL). This means that the use of embOS for evaluation and non-commercial purposes is unrestricted.

    These packages are easily downloadable for each embOS port at https://www.segger.com/downloads/embos/.

     


    FAQ

    What is the maximum storage capacity of a NOR flash device supported by NOR drivers?

    The maximum capacity of a NOR flash device supported by NOR drivers depends on the number of physical sectors (also known as erase blocks) that are present on the storage device. The NOR drivers are designed to handle a maximum of 65535 physical sectors. The typical size of a physical block is 64 KB. This results in a maximum storage capacity of about 4 GB.

    What is the maximum supported storage capacity of a NAND flash device supported by NAND drivers?

    The maximum capacity of a NAND flash device supported by NAND drivers depends on the number of physical blocks that are present on the storage device. NAND drivers are designed to handle a maximum of 65535 physical blocks. The typical size of a physical block is 128 KB. This results in a maximum storage capacity of about 8 GB.

    What is the maximum supported storage capacity for SD cards and eMMC devices with eMMC/SD drivers?

    The MMC/SD drivers are designed to support SD cards and eMMC devices with a maximum capacity of about 2 TB.


    Latest news

    2025
    Apr.16
    emFile
    PR graphic showing the emFile icon and the text "large database support"

    SEGGER’s emFile now supports large databases in embedded systems

    SEGGER announces emFile support for large databases with the integration of SQLite for use with SEGGER’s BigFAT and Microsoft's exFAT®.

    [Read more...]
    2024
    Oct.09
    emFile
    PR graphic including black exFAT icon and title exFAT with emFile

    SEGGER to offer Microsoft exFAT with emFile

    SEGGER announces support for Microsoft exFAT with emFile, SEGGER’s fail-safe file system for embedded systems. emFile is optimized for minimum memory consumption in RAM and ROM, for high speed, and for versatility.

    [Read more...]

    All news

    Get in touch with us

    Have questions or need assistance? Our Embedded Experts are here to help!

    Reach out to us for:

    • Licensing quotes
    • Technical inquiries
    • Project support

     

    Contact us

    • User manual
    • Online documentation
    • List of downloads
    • Download for evaluation
    • Release notes
    • Update notification
    • Pricing
    • Support
    • Silicon vendor resources

    Headquarters

    SEGGER Microcontroller GmbH

    Ecolab-Allee 5
    40789 Monheim am Rhein, Germany
    info@segger.com
    Tel.: +49-2173-99312-0
    Fax: +49-2173-99312-28

    Locations

    USA: SEGGER Microcontroller Systems LLC

    Boston area
    101 Suffolk Lane
    Gardner, MA 01440, USA
    us-east@segger.com
    Tel.: +1-978-874-0299
    Fax: +1-978-874-0599

    Silicon Valley
    Milpitas, CA 95035, USA
    us-west@segger.com
    Tel.: +1-408-767-4068

    China: SEGGER Microcontroller China Co., Ltd.

    Room 218, Block A, Dahongqiaoguoji
    No. 133 Xiulian Road
    Minhang District, Shanghai 201199, China
    china@segger.com
    Tel.: +86-133-619-907-60

    ISO 9001 certified

    ISO 9001

    30+ years of experience

    First-class embedded software tools since 1992
    • Imprint
    • Disclaimer
    • Code of Conduct
    • Privacy Policy
    © 2025 SEGGER - All rights reserved.