{"id":20218578,"url":"https://github.com/mrcheateugene/ecfs","last_synced_at":"2026-06-08T15:33:01.879Z","repository":{"id":48159679,"uuid":"516630346","full_name":"MrCheatEugene/ECFS","owner":"MrCheatEugene","description":"EEPROM Compatible File System is a really simple file system, made specifically to use with Arduino's EEPROM.","archived":false,"fork":false,"pushed_at":"2022-07-22T06:28:46.000Z","size":11,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-03T11:43:23.579Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"unlicense","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MrCheatEugene.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-07-22T06:04:25.000Z","updated_at":"2022-10-07T21:02:04.000Z","dependencies_parsed_at":"2022-09-01T00:11:13.365Z","dependency_job_id":null,"html_url":"https://github.com/MrCheatEugene/ECFS","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/MrCheatEugene/ECFS","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MrCheatEugene%2FECFS","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MrCheatEugene%2FECFS/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MrCheatEugene%2FECFS/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MrCheatEugene%2FECFS/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MrCheatEugene","download_url":"https://codeload.github.com/MrCheatEugene/ECFS/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MrCheatEugene%2FECFS/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34069491,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-08T02:00:07.615Z","response_time":111,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-14T06:39:05.746Z","updated_at":"2026-06-08T15:33:01.862Z","avatar_url":"https://github.com/MrCheatEugene.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ECFS\nEEPROM Compatible File System is a really simple file system, made specifically to use with Arduino's EEPROM.\n# Tools\nTo work with ECFS tools, you need to have Python 3.9 minimum. I think it will work with 3.7, but I can't guarantee.\n## ecfs-add \nADD File to ECFS file\nUsage: ./ecfs-add.py [file to add] [ECFS filesystem file] (directory)\n\n## ecfs-mkfs\nMAKE ECFS filesystem file\n\nUsage: ./ecfs-mkfs.py FileSystemOutFileName FSPartitionName\nFileSystemOutFileName is the output file.\n\n## ecfs-export\nEXPORT files from ECFS\n\nUsage: ecfs-export.py [filesystem file] (action on duplicate file = copy(export with another name)|die(stop exporting and close programm)|overwrite(overwrite old file with new)) (folder)\n\n## ecfs-util\nUTILITY to WORK with EEPROM via serial port\u003cbr/\u003e\nUsage: ./ecfs-util.py [serial port] [filename] [action] (directory)\u003cbr/\u003e\nActions:\u003cbr/\u003ewrite - Flash to EEPROM\u003cbr/\u003eclean - Clean EEPROM(set all blocks to 0)\u003cbr/\u003efactory - Factory reset(set all blocks to 255)\u003cbr/\u003e\nExamples:\u003cbr/\u003e\nWrite ./folder/fsFile to COM3: ./ecfs-util.py COM3 fsFile write ./folder\u003cbr/\u003e\nWrite ./fsFile to COM3:  ./ecfs-util.py COM3 fsFile write\u003cbr/\u003e\nFactory reset: ./ecfs-util.py COM3 anythingCanBeWrittenHere factory\u003cbr/\u003e\nClean EEPROM: ./ecfs-util.py COM3 anythingCanBeWrittenHere clean\u003cbr/\u003e\nRead EEPROM from COM3 and save to ./outputFSFIle: ./ecfs-util.py COM3 outputFSFIle readall\u003cbr/\u003e\n\n## ecfs-edit\nUTILITY to read, edit, and write ECFS to EEPROM\u003cbr/\u003e\nREQUIRES ECFS-MKFS,ECFS-EXPORT, ECFS-ADD AND ECFS-UTIL (as ecfs-mkfs.py,ecfs-export.py, ecfs-add.py,ecfs-util.py) BE IN THE SAME DIRECTORY WITH ECFS-EDIT!\nUsage: ./ecfs-edit.py [comPort]\u003cbr/\u003e\n\n1. Run ./ecfs-edit.py [comPort]\n2. If ECFS is valid, files will be exported and output directory path will be written like this:\n```\nCurrent directory: C:\\ecfs\\temp-35876\nAre done with editing files?\n```\n3. Open directory [current directory] and make changes to files, if you want.  Final size of directory must be less, than eeprom size. \n4. Go to terminal again, and press \"y\" and then \"enter\".\n5. Wait for FS to build and flash to EEPROM. Direcrory [current directory] will be removed. If the FS file size will be more than EEPROM size, eeprom-edit will crash.\n6. If flashing was successful, you will get exit code 0 and an \"Done flashing.\" message.\n\n# Arduino sketch\n\nTo start working with ECFS, you need to upload specific sketch to Arduino. It is called ecfs-api.ino and is available in Main branch of this repo.\n\u003cbr/\u003eIt uses AlexGyver's MSTRING library, you can download it [here](https://github.com/GyverLibs/mString)\n\n# Support me\nIf you want to support me, you can donate me here: https://donationalerts.com/r/mrcheatt\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrcheateugene%2Fecfs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmrcheateugene%2Fecfs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrcheateugene%2Fecfs/lists"}