Comments (5)
There is a "side effect" when you use m_Logger.Write (..., LogPanic, ...). Because this is a system panic message the message will be displayed in red and the system will halt there. So with the code in your attached screen the system will never come to the file system mount even if the partition was found. You should use LogDebug or LogNotice instead of LogPanic for success messages.
Please try sample/07-storage which displays the partition table of the attached USB drive. The first line after the header should be the FAT32 partition ("Type" probably 0B or 0C) and the "1stSector" and "Sectors" values should be valid. Can you check this?
from circle.
Thanks for the quick reply! I changed the LogPanic to LogNotice and it is successfully mounting the drive. Now it is hanging in the section where the code is supposed to "show the contents of root directory".
I tried sample/07-storage and am receiving the following from the partition table dump:
00:00:02:40 kernel: # Status Type 1stSector Sectors
00:00:02:40 kernel: 1 00 0B 2 1953790
00:00:02:40 kernel: 2 00 00 0 0
00:00:02:40 kernel: 3 00 00 0 0
00:00:02:40 kernel: 4 00 00 0 0
What's the best way to verify that this information is correct and it read the right USB flash drive?
EDIT: I was able to dump the partition table on my main computer and it did match, so the USB is being identified and mounted correctly. It is still hanging in the area where it should show the contents of the root directory.
from circle.
Thanks for the reply! So it looks like the physical access to the USB drive works OK and the partition table is also all right. Unfortunately it's difficult to solve why it hangs in the directory listing. You could only insert debug messages at several places to find the exact place where it hangs. That's difficult from here. It may be a bug or the FAT32 partition may be corrupted. You could try to run something like CHKDSK (or fsck.vfat on Linux) on it. Not sure if it helps. Currently I have no other idea. :-(
from circle.
Thanks for all of your help. I didn't find the cause of the hang, but I'm assuming it's my drive is having issues. I don't necessarily need to print the contents of the root directory for this project I am working on, so I removed that section and everything else worked flawlessly. Thanks for everything!
from circle.
I think I have found the bug. The evaluation of the HIDDEN directory attribute (called FS_ATTRIB_SYSTEM in Circle) in sample/15-files/kernel.cpp was wrong. If there was a file with this attribute in the root directory it did hang. I have pushed a fix to GitHub. Thanks for support!
from circle.
Related Issues (20)
- USB CDC/ACM gadget HOT 19
- GetClockTicks without wrap HOT 3
- GPU support on Raspi 4 HOT 4
- Circle linker failure with softfp HOT 2
- Make USB gadget vendor and device strings configurable HOT 2
- Support for touchscreens with additional reports in HID descriptor HOT 7
- Question about log when testing with Qemu HOT 2
- Help with setting PREFIX HOT 4
- Question: Waveshare 5'' DSI display support? HOT 2
- Waveshare 15.6inch Capacitive Touch Screen HOT 2
- Can I run OpenCV? HOT 2
- Sample "07-usbstorage" fails with Pi5 HOT 8
- Unsuportted USB touch screen driver - Big Tree Tech HDMI7 HOT 10
- How to do GPIOPin button Interrupt correctly HOT 23
- FIQ support on RPI Zero 2 HOT 3
- How to remove all text not from own CSerialDevice HOT 11
- Ability to set HDMI output refresh rate HOT 3
- About memory management on CM4 HOT 2
- Building circle-stdlib w/Circle: This header is not available in freestanding mode. HOT 6
- I2S simultaneous input+output HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from circle.