# External QSPI flash drive not mounting

**URL:** <https://forums.openmv.io/t/external-qspi-flash-drive-not-mounting/8814>\
**Category:** Arduino Boards\
**Created:** [October 11, 2023, 5:01am UTC](https://forums.openmv.io/t/external-qspi-flash-drive-not-mounting/8814 "2023-10-11T05:01:46Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![yokonav](https://avatars.discourse-cdn.com/v4/letter/y/87869e/32.png) [@yokonav](https://forums.openmv.io/u/yokonav)\
**Post date:** [October 11, 2023, 5:01am UTC](https://forums.openmv.io/t/external-qspi-flash-drive-not-mounting/8814/1 "2023-10-11T05:01:46Z")

</div>

I have installed OpenMV IDE: 4.0.12 on a macOS Ventura (13.2) and flashed the Arduino Giga R1 with OpenMV firmware v4.5.0. I am able to run example scripts from the IDE. However, I do not see any flash drive mounted. When I plug in the Giga R1 USB cable I see the message:  
“The disk you attached was not readable by this computer”.

To test, I tried the Micropython firmware provided by Arduino and flashed it using the command: dfu-util -w -a 0 -d 2341:0366 -D GIGAR1\_MP\_FW.dfu

I can see a mounted mass storage drive “GIGA”. So I guess it has some issue with the OpenMV firmware.

---

<div class="post-metadata">

**Author:** ![kwagyeman](https://yyz1.discourse-cdn.com/flex029/user_avatar/forums.openmv.io/kwagyeman/32/4_2.png) [@kwagyeman](https://forums.openmv.io/u/kwagyeman)\
**Post date:** [October 11, 2023, 6:27am UTC](https://forums.openmv.io/t/external-qspi-flash-drive-not-mounting/8814/2 "2023-10-11T06:27:50Z")

</div>

@iabdalkader - Seems like a bug.

---

<div class="post-metadata">

**Author:** ![iabdalkader](https://yyz1.discourse-cdn.com/flex029/user_avatar/forums.openmv.io/iabdalkader/32/1169_2.png) [@iabdalkader](https://forums.openmv.io/u/iabdalkader)\
**Post date:** [October 11, 2023, 7:25am UTC](https://forums.openmv.io/t/external-qspi-flash-drive-not-mounting/8814/3 "2023-10-11T07:25:38Z")

</div>

Hi, please install the firmware again and check the Erase internal file system checkbox:

 ![image](https://canada1.discourse-cdn.com/flex029/uploads/openmv1/original/2X/7/7c8febea8807135bdb8ae2fefaf646381d415804.png)

---

<div class="post-metadata">

**Author:** ![yokonav](https://avatars.discourse-cdn.com/v4/letter/y/87869e/32.png) [@yokonav](https://forums.openmv.io/u/yokonav)\
**Post date:** [October 11, 2023, 7:53am UTC](https://forums.openmv.io/t/external-qspi-flash-drive-not-mounting/8814/4 "2023-10-11T07:53:12Z")

</div>

I have flashed the firmware again with the Erase internal file system checkbox enabled but it did not solve the issue.

---

<div class="post-metadata">

**Author:** ![iabdalkader](https://yyz1.discourse-cdn.com/flex029/user_avatar/forums.openmv.io/iabdalkader/32/1169_2.png) [@iabdalkader](https://forums.openmv.io/u/iabdalkader)\
**Post date:** [October 11, 2023, 8:43am UTC](https://forums.openmv.io/t/external-qspi-flash-drive-not-mounting/8814/5 "2023-10-11T08:43:15Z")

</div>

> [@yokonav](#):
>
> To test, I tried the Micropython firmware provided by Arduino

How big is the drive that you see with the MicroPython firmware ? The older releases used the internal flash, not the QSPI one. Can you try the latest stable build 1.21.0 from here ?

> **[MicroPython - Python for microcontrollers](https://micropython.org/download/ARDUINO_GIGA/)**
>
> MicroPython is a lean and efficient
> implementation of the Python 3 programming language
> that includes a small subset of the Python standard library and is
> optimised to run on microcontrollers and in constrained environments.

---

<div class="post-metadata">

**Author:** ![yokonav](https://avatars.discourse-cdn.com/v4/letter/y/87869e/32.png) [@yokonav](https://forums.openmv.io/u/yokonav)\
**Post date:** [October 11, 2023, 9:05am UTC](https://forums.openmv.io/t/external-qspi-flash-drive-not-mounting/8814/6 "2023-10-11T09:05:04Z")

</div>

The size is very small. 🙄

 ![Screenshot 2023-10-11 at 18.02.52](https://canada1.discourse-cdn.com/flex029/uploads/openmv1/original/2X/f/fabd6550dbd9c042143e94bec60f238f9914f6ba.png)

I flashed with the latest firmware ARDUINO\_GIGA-20231005-v1.21.0.dfu but it is also not mounting the drive.

---

<div class="post-metadata">

**Author:** ![iabdalkader](https://yyz1.discourse-cdn.com/flex029/user_avatar/forums.openmv.io/iabdalkader/32/1169_2.png) [@iabdalkader](https://forums.openmv.io/u/iabdalkader)\
**Post date:** [October 11, 2023, 9:13am UTC](https://forums.openmv.io/t/external-qspi-flash-drive-not-mounting/8814/7 "2023-10-11T09:13:39Z")

</div>

> [@yokonav](#):
>
> The size is very small. 🙄

Yes this confirms it, for some reason only the internal flash storage works on your board/OS not the QSPI, both MicroPython 1.21.0 and our firmware use the QSPI storage. I have a Giga H7 with me and it mounts the QSPI storage just fine, so it’s either your board or the OS that’s the issue, I don’t have a Mac to test with but I will ask someone to test it and get back to you.

---

<div class="post-metadata">

**Author:** ![yokonav](https://avatars.discourse-cdn.com/v4/letter/y/87869e/32.png) [@yokonav](https://forums.openmv.io/u/yokonav)\
**Post date:** [October 11, 2023, 9:36am UTC](https://forums.openmv.io/t/external-qspi-flash-drive-not-mounting/8814/9 "2023-10-11T09:36:44Z")

</div>

I have flashed it with the latest OpenMV firmware again and connected it to the Raspberry Pi 4.

dmesg output:

```auto

[148.325483] usb 1-1.1: new full-speed USB device number 3 using xhci_hcd
[148.719726] usb 1-1.1: New USB device found, idVendor=2341, idProduct=0466, bcdDevice= 2.00
[148.719760] usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[148.719776] usb 1-1.1: Product: Giga Virtual Comm Port in FS Mode
[148.719791] usb 1-1.1: Manufacturer: Arduino
[148.719804] usb 1-1.1: SerialNumber: 3956374F3132
[148.789831] cdc_acm 1-1.1:1.0: ttyACM0: USB ACM device
[148.789923] usbcore: registered new interface driver cdc_acm
[148.789929] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
[148.796495] usb-storage 1-1.1:1.2: USB Mass Storage device detected
[148.797358] scsi host0: usb-storage 1-1.1:1.2
[148.797765] usbcore: registered new interface driver usb-storage
[148.803667] usbcore: registered new interface driver uas
[149.833545] scsi 0:0:0:0: Direct-Access MicroPy pyboard Flash 1.00 PQ: 0 ANSI: 2
[149.835606] sd 0:0:0:0: Attached scsi generic sg0 type 0
[149.836358] sd 0:0:0:0: [sda] 30976 512-byte logical blocks: (15.9 MB/15.1 MiB)
[149.836731] sd 0:0:0:0: [sda] Write Protect is off
[149.836751] sd 0:0:0:0: [sda] Mode Sense: 03 00 00 00
[149.837132] sd 0:0:0:0: [sda] No Caching mode page found
[149.842967] sd 0:0:0:0: [sda] Assuming drive cache: write through
[149.859063] sda: sda1
[149.863908] sd 0:0:0:0: [sda] Attached SCSI removable disk

```

fdisk -l output:

```auto
Disk /dev/sda: 15.13 MiB, 15859712 bytes, 30976 sectors
Disk model: pyboard Flash   
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00000000

Device Boot Start End Sectors Size Id Type
/dev/sda1 256 30975 30720 15M 1 FAT12

```

I am accessing the RPI4 headless over ssh so can’t see if it is auto mounted. How do you check or mount it using command line? I tried` mount -t vfat /dev/sda1 /mnt` but not working.

---

<div class="post-metadata">

**Author:** ![iabdalkader](https://yyz1.discourse-cdn.com/flex029/user_avatar/forums.openmv.io/iabdalkader/32/1169_2.png) [@iabdalkader](https://forums.openmv.io/u/iabdalkader)\
**Post date:** [October 11, 2023, 9:40am UTC](https://forums.openmv.io/t/external-qspi-flash-drive-not-mounting/8814/10 "2023-10-11T09:40:30Z")

</div>

> [@yokonav](#):
>
> How do you mount it using command line? I tried` mount -t vfat /dev/sda1 /mnt` but not working.

Yes `sudo mount -t vfat /dev/sda1 /path/to/mnt_point/` should work.

BTW it seems to be mounting fine on Ventura, so I guess we can rule out an OS issue. Do you have an early prototype/sample or something ?

 ![image](https://canada1.discourse-cdn.com/flex029/uploads/openmv1/original/2X/d/d38dd8bb9f59e347ce0dede1593d4a31bfa290f9.jpeg)

---

<div class="post-metadata">

**Author:** ![yokonav](https://avatars.discourse-cdn.com/v4/letter/y/87869e/32.png) [@yokonav](https://forums.openmv.io/u/yokonav)\
**Post date:** [October 11, 2023, 9:48am UTC](https://forums.openmv.io/t/external-qspi-flash-drive-not-mounting/8814/11 "2023-10-11T09:48:14Z")

</div>

I received it directly from Arduino in March. How can I check whether the QSPI flash is faulty or not?

---

<div class="post-metadata">

**Author:** ![iabdalkader](https://yyz1.discourse-cdn.com/flex029/user_avatar/forums.openmv.io/iabdalkader/32/1169_2.png) [@iabdalkader](https://forums.openmv.io/u/iabdalkader)\
**Post date:** [October 11, 2023, 9:51am UTC](https://forums.openmv.io/t/external-qspi-flash-drive-not-mounting/8814/12 "2023-10-11T09:51:47Z")

</div>

I think March would make it an early dev sample, not sure, about the QSPI, it might not be faulty, although everything points to an issue with it, here’s mine do you have a different one maybe ?

 ![image](https://canada1.discourse-cdn.com/flex029/uploads/openmv1/original/2X/9/97993e5705e0f1baa49e26fa7b10499d10b6ade9.jpeg)

---

<div class="post-metadata">

**Author:** ![yokonav](https://avatars.discourse-cdn.com/v4/letter/y/87869e/32.png) [@yokonav](https://forums.openmv.io/u/yokonav)\
**Post date:** [October 11, 2023, 9:58am UTC](https://forums.openmv.io/t/external-qspi-flash-drive-not-mounting/8814/13 "2023-10-11T09:58:35Z")

</div>

It’s the same. Maybe I need to check the QSPI flash using the Arduino IDE.

---

<div class="post-metadata">

**Author:** ![yokonav](https://avatars.discourse-cdn.com/v4/letter/y/87869e/32.png) [@yokonav](https://forums.openmv.io/u/yokonav)\
**Post date:** [October 11, 2023, 10:12am UTC](https://forums.openmv.io/t/external-qspi-flash-drive-not-mounting/8814/14 "2023-10-11T10:12:09Z")

</div>

Arduino sketch can read the QSPI flash so I think it is not faulty.

```auto

19:07:49.183 -> Looking for Partitions on the Flash Memory... MBR Found
19:07:49.183 -> Boot Signature: 0x55AA
19:07:49.183 -> 
19:07:49.183 -> Printing Partitions Table and Info...
19:07:49.183 -> ================================
19:07:49.183 -> Partition: 1
19:07:49.183 -> Bootable: No
19:07:49.183 -> Type: 0x00
19:07:49.183 -> ================================
19:07:49.183 -> Partition: 2
19:07:49.183 -> Bootable: No
19:07:49.183 -> Type: 0x00
19:07:49.183 -> ================================
19:07:49.183 -> Partition: 3
19:07:49.183 -> Bootable: No
19:07:49.183 -> Type: 0x00
19:07:49.183 -> ================================
19:07:49.183 -> Partition: 4
19:07:49.183 -> Bootable: No
19:07:49.183 -> Type: 0x00
19:07:49.183 -> 
19:07:49.183 -> No more partitions are present.
19:07:49.183 -> 
19:07:49.183 -> Total Space [KBytes]: 16384
19:07:49.183 -> Allocated Space [KBytes]: 0
19:07:49.183 -> Unallocated Space [KBytes]: 16384

```

---

<div class="post-metadata">

**Author:** ![iabdalkader](https://yyz1.discourse-cdn.com/flex029/user_avatar/forums.openmv.io/iabdalkader/32/1169_2.png) [@iabdalkader](https://forums.openmv.io/u/iabdalkader)\
**Post date:** [October 11, 2023, 10:24am UTC](https://forums.openmv.io/t/external-qspi-flash-drive-not-mounting/8814/15 "2023-10-11T10:24:09Z")

</div>

Can you try QSPIFormat sketch ?

```auto
12:22:42.783 -> Available partition schemes:
12:22:42.783 -> 
12:22:42.783 -> Partition scheme 1
12:22:42.783 -> Partition 1: WiFi firmware and certificates 1MB
12:22:42.783 -> Partition 2: OTA and user data 13MB
12:22:42.783 -> 
12:22:42.783 -> Partition scheme 2
12:22:42.783 -> Partition 1: WiFi firmware and certificates 1MB
12:22:42.783 -> Partition 2: OTA 5MB
12:22:42.783 -> Partition 3: User data 8MB
12:22:42.783 -> 
12:22:42.783 -> Do you want to use partition scheme 1? Y/[n]
12:22:42.783 -> If No, partition scheme 2 will be used.
12:22:50.793 -> 
12:22:50.793 -> WARNING! Running the sketch all the content of the QSPI flash will be erased.
12:22:50.793 -> Do you want to proceed? Y/[n]
12:22:55.721 -> 
12:22:55.721 -> QSPI Flash formatted!
12:22:55.721 -> It's now safe to reboot or disconnect your board

```

Here I answered Yes and Yes.

Then try the USB Storage example → AccessFlashAsUSBDisk, you should see 2 volumes mounted.

---

<div class="post-metadata">

**Author:** ![yokonav](https://avatars.discourse-cdn.com/v4/letter/y/87869e/32.png) [@yokonav](https://forums.openmv.io/u/yokonav)\
**Post date:** [October 11, 2023, 10:35am UTC](https://forums.openmv.io/t/external-qspi-flash-drive-not-mounting/8814/16 "2023-10-11T10:35:21Z")

</div>

After running the two sketches as you suggested, there are two mounted volumes named “NO NAME”.

 ![Screenshot 2023-10-11 at 19.34.18](https://canada1.discourse-cdn.com/flex029/uploads/openmv1/original/2X/c/c96435d5073b82277ff2083a1395ee328e8966e1.png)

---

<div class="post-metadata">

**Author:** ![iabdalkader](https://yyz1.discourse-cdn.com/flex029/user_avatar/forums.openmv.io/iabdalkader/32/1169_2.png) [@iabdalkader](https://forums.openmv.io/u/iabdalkader)\
**Post date:** [October 11, 2023, 10:47am UTC](https://forums.openmv.io/t/external-qspi-flash-drive-not-mounting/8814/17 "2023-10-11T10:47:57Z")

</div>

Yes one of them should be 1MBs the other ~15MBs, so it seems your QSPI is fine, I’m not sure why it’s not working with MicroPython then. Can you please send a picture of the board ?

Also, can you try the attached MicroPython firmware see if it works.  
[firmware.dfu](https://forums.openmv.io/uploads/short-url/r4oNeSrI0BC9BIWshMs9hTo5W5o.dfu) (1.0 MB)

---

<div class="post-metadata">

**Author:** ![yokonav](https://avatars.discourse-cdn.com/v4/letter/y/87869e/32.png) [@yokonav](https://forums.openmv.io/u/yokonav)\
**Post date:** [October 11, 2023, 10:56am UTC](https://forums.openmv.io/t/external-qspi-flash-drive-not-mounting/8814/18 "2023-10-11T10:56:21Z")

</div>

The attached firmware did not work.

Here is the board picture:

 ![giga_r1](https://canada1.discourse-cdn.com/flex029/uploads/openmv1/original/2X/e/e2c55d1a718e470dd3916d91562907902db47568.jpeg)

---

<div class="post-metadata">

**Author:** ![iabdalkader](https://yyz1.discourse-cdn.com/flex029/user_avatar/forums.openmv.io/iabdalkader/32/1169_2.png) [@iabdalkader](https://forums.openmv.io/u/iabdalkader)\
**Post date:** [October 11, 2023, 11:02am UTC](https://forums.openmv.io/t/external-qspi-flash-drive-not-mounting/8814/19 "2023-10-11T11:02:48Z")

</div>

Can you please zoom in on the flash part ?

Also I’m attaching another firmware that uses a slower clock for the QSPI (40MHz) it might not be the issue but worth a shot.  
[firmware.dfu](https://forums.openmv.io/uploads/short-url/dqyRkApkhecnYXs1klGvMLyP5IR.dfu) (1.0 MB)

Note you should upload OpenMV firmware first and erase the flash, this will ensure the partitions are gone and the QSPI is formatted correctly.

---

<div class="post-metadata">

**Author:** ![yokonav](https://avatars.discourse-cdn.com/v4/letter/y/87869e/32.png) [@yokonav](https://forums.openmv.io/u/yokonav)\
**Post date:** [October 11, 2023, 11:16am UTC](https://forums.openmv.io/t/external-qspi-flash-drive-not-mounting/8814/20 "2023-10-11T11:16:41Z")

</div>

This firmware also did not work.

 ![giga_r1_qspi_flash](https://canada1.discourse-cdn.com/flex029/uploads/openmv1/original/2X/3/3173eed5004dd1bb2711ea1e5c7c8935dce24c67.jpeg)

---

<div class="post-metadata">

**Author:** ![yokonav](https://avatars.discourse-cdn.com/v4/letter/y/87869e/32.png) [@yokonav](https://forums.openmv.io/u/yokonav)\
**Post date:** [October 11, 2023, 11:26am UTC](https://forums.openmv.io/t/external-qspi-flash-drive-not-mounting/8814/21 "2023-10-11T11:26:11Z")

</div>

Also, I wanted to confirm one thing. Is the OpenMV’s bootloader different than the default Arduino’s one?

I remember, I soft-bricked the board 2 days ago and re-flashed the bootloader with dfu-util as suggested in this URL.

> **[Burn the bootloader on GIGA R1 WiFi](https://support.arduino.cc/hc/en-us/articles/7991505977116-Burn-the-bootloader-on-GIGA-R1-WiFi)**
>
> Learn how to burn (flash) the bootloader on GIGA R1 WiFi.
> In this article:
> 
> Prepare your GIGA R1 WiFi for bootloader flashing
> Flash the bootloader with dfu-util (recommended)
> Flash the bootloader w...

[Next page](https://forums.openmv.io/t/external-qspi-flash-drive-not-mounting/8814.md?page=2)
