How to use Arduino to build a NAS (Wi-Fi storage)

I have been doing a project aimed to make a something similar to a NAS (Wi-Fi wireless storage device) for my family.

The material used might include:
-ESP8266/ESP32
-SD Card Module
-SanDisk 16 GB SD card
-Arduino UNO R3/Mega 2560 R3
-Other common accessories, e.g., wires & power source

Detailed project description:
-able to store files* from personal computer to SD card via Wi-Fi.
-able to download files* stored on SD card via Wi-Fi
-able to delete files* on the SD card using a personal computer via W-Fi
-additional (optional) feature: able to function as a router on its own, so it does not rely
on a external Wi-Fi router, thus enabling me to use it regardless of where I am.

I am not very familiar with the field of Arduino wireless communications, so I need some help in developing this project. If you have any suggestions and solutions to my project, please them post in this topic, I am certain that they will all be very helpful.

Thank you so very much for your valuable help, advice and support.

*The files might include images, text documents, videos and other commonly used file types.

Neither the Uno or the Mega can do what you want (they are too slow and have far too little memory), but the ESP32 WiFi modules could, and most of those functions are already programmed for it.

16 Gb won't store many pictures or videos.

Thanks. I will add ESP32 to my list.
Also, I am curious if Arduino Due would serve my purpose.

The Due has considerably less memory than, for example the ESP32-CAM (which also has built in WiFi).

You will be struggling, no matter what you choose from these sorts of boards, so this is a great learning project!

Is ESP32 independent from Arduino boards? i.e., it can be directly programmed to achieve my goals.

Start here: ESP32-CAM Video Streaming and Face Recognition with Arduino IDE | Random Nerd Tutorials

Are you sure you require router functionality and not just Access Point functionality? If you want to connect your ESP8266/ESP32 to ethernet as well as Wifi that is generally just Access Point functionality (and there are examples already) but to implement full router functionality is much more involved and may require more powerful hardware.

The project is more inline with using a RPi (Raspberry Pi) instead of a ESP32.

You'll find many previous projects of the RPi being used a NAS on the Raspberry Pi Forums - Index page forum.

1 Like

What I mean is that even when this device is not connected to Wi-Fi, i.e., outdoors, I can still have access to the files stored on it via a wireless connection.

Sorry but I am a little confused by your last post, as Wifi is wireless. Do you mean Wired rather than WiFI or do you mean wired rather then wireless, or do you mean something else?

What I want to achieve is to use it wirelessly (Wi-Fi) anywhere, i.e., I can use my PC to transfer files to and fro the device while having it in my bag (without the need to take it out and connect with wires).

You should be able to setup the ESP32 as both an WiFi Access Point and as a Wifi Client.

When setup as an AP your client machines should be able to connect to it directly and transfer files to/from it (with appropriate server software).
When setup as a Wifi Client connected to your home network other machines on your home network should be able to transfer files to/from it (with appropriate server software).

It is likely you would need the AP setup with a different SSID & password to the home network, so your client machines might have to change the AP they are accessing if the home network is not available.

Is this what youa re trying to achieve?

It sounds like OP is trying to DIY Google Drive.

Which is a terrible idea.

STATUS UPDATE: I MADE IT!!! :slight_smile: YAY
GitHub: GitHub - Zhu-jiatong/ESP_NAS_ESP8266

Advice is welcomed :slight_smile:

p.s. I used a NodeMCU 1.0 instead of Arduino Mega.

1 Like

Finished project showcase:

I made a seperate topic for sharing updates on this project. Please feel free to check it out!

There is now an update to the project, please find it here.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.