QuickLogic-Corp / qorc-sdk

Open source FreeRTOS SDK for EOS S3 MCU+eFPGA SoC including gateware, software and documentation under QuickLogic Open Reconfigurable Computing (QORC) Initiative
Apache License 2.0
44 stars 27 forks source link

Quick-feather EOS-S3 not entering in "flash mode" #141

Open zeeshandildar-rs opened 2 years ago

zeeshandildar-rs commented 2 years ago

I followed the instructions specified in the documentation regarding running basic examples on Quick logic board and was trying to get the board into flash mode. However, it can not be achieved at my end. When I press the reset button blue led started flashing and as indicated in the documentation if user button is pressed within five seconds, green led should flash while it turns high only once in my case. Kindly mark this issue as a question and help me resolve it.

coolbreeze413 commented 2 years ago

This looks like an issue with the drivers on the system. If you have done installation with cloning qorc-sdk and envsetup.sh as in latest readme, then, it might be that the modem manager is taking over the port.

Can you please try adding the urev rules as mentioned here and see if that solves the problem? https://github.com/QuickLogic-Corp/qorc-sdk/issues/91#issuecomment-782815522

frasheed-dev commented 2 years ago

Hi @zeeshandildar-rs , were you able to solve the problem with the mentioned solution? I am facing the sime problem on two different systems (1. Debian 11 and 2 Windows 10).

@coolbreeze413 , I tried adding it in the rules but still the green LED doesn't flash (only high for 2-3 seconds and then blue LED starts flashing)

pelectron commented 1 year ago

Hello everyone, I have the same problems with the quicklogic eos-s3 thing board from sparkfun (which should be compatible to the feather dev kit) . I've tried to get the board into flash mode. However, the led stays solid green for around 2 seconds when pressing the user button after a reset, then the led starts blinking blue again. I have tried to get it to work on

The windows 10 and wsl2 installations are on the same laptop, the native ubuntu installation is on a different pc, so the root cause shouldn't be my speficic hardware. I have also done multiple reboots of my pc and laptop, so the problem should not lie there either.

If anyone has some pointers on how to solve this, it would be greatly appreciated:)

frasheed-dev commented 1 year ago

If anyone has some pointers on how to solve this, it would be greatly appreciated:)

The built-in/stock boot-loader is somehow borken. The only way I was able to go into flash mode was re-installing the boot-loader as mentioned under 3. I bricked my board, how do recover the bootloader images?.

Good luck!

JDuchniewicz commented 1 year ago

Even though I flashed the bootloader via SWD (the LED behavior is now correct), me and @Willmish tried to flash the Cortex-M4 app that is dispatched with the binaries and failed to do so (the LED turns red after the blue one stops blinking (signalling that the bootloader finished working)). Also flashing using the TinyFPGA programmer does not commence at all even when the LED is blinking green.

If it was just one device that misbehaved I would simply replace it but seeing that two devices have the same exact problem is concerning and signals something wrong with the HW or design?

We also started a megathread on Zephyr's Discord to debug it together. Could you help us with that @frasheed-dev @coolbreeze413?? We need this board to be up and running to be able to make a presentation of porting our project to open hardware for Embedded Open Source Summit 2023 in Prague so your help would be much appreciated

Jakub

JDuchniewicz commented 1 year ago

Ok so far we were able to fix some of the bootloader code, the active_images |= METADATA_M4APP_IS_FLASHED; condition is not triggered (lines 354-370 in bootloader_task.c in qf_bootloader project). Setting it manually loads the m4app successfully. The patch is available here (I will open a PR once I find the root cause).