Flashing / Erasing Flash of new or bricked VS1005G board

Discussion about writing software for VS1005 and the VSOS Operating System. Also posts about VS1005-related hardware design and device drivers should be posted here.
User avatar
pasi
VLSI Staff
Posts: 2120
Joined: Thu 2010-07-15 16:04

Re: Flashing a new or bricked VS1005G board

Post by pasi »

Because RDID / REMS can't detect the internal SPI FLASH, it might also be that the protection features are kicking in.

You would need to use "the magic GPIO pin configuration" on power-up/reset to force SPI FLASH erase to unlock the internal SPI FLASH. The combination can be found from the datasheet, but it may be difficult to get to all of the required pins on some boards.
Visit https://www.facebook.com/VLSISolution VLSI Solution on Facebook
jedm@vpitech.com
Senior User
Posts: 50
Joined: Wed 2016-11-02 22:50

Re: Flashing a new or bricked VS1005G board

Post by jedm@vpitech.com »

I think I did it right - connected some 6 pins to IOVDD and turned power on by connecting both USB and FTDI cable. Got the following after setup and clicking Write:
magic.png
magic.png (96.29 KiB) Viewed 11905 times
Would you like this card back to play with? We have two working BOB's and about 10 working boards of our design so I'm not really all that attached to it
User avatar
Panu
VSDSP Expert
Posts: 2829
Joined: Tue 2010-06-22 13:43

Re: Flashing a new or bricked VS1005G board

Post by Panu »

The thing that strikes the eye is that it doesn't identify any flash memory (Macronix etc) that it can access. Does it do that on any of your boards?

Even in "working.png" it doesn't... after you read the buffer, click "Examine". Do you get some real content or only zeroes or 0xffff's?

-Panu
cruedag
User
Posts: 11
Joined: Mon 2017-03-20 13:58

Re: Flashing a new or bricked VS1005G board

Post by cruedag »

Hi, I have a trouble similar to what was described in this thread:

viewtopic.php?f=13&t=1465&hilit=formatting&start=20

We have some breakout boards that have been programmed without any problem, but now are testing our first own pcb and there is a trouble we can't find nor understand.

Our design uses VS1005GF, and we can complete the proccess of transfering the eeprom_i.img VSOS 3.40 kernel with the prommer utility inside VSIDE:

Code: Select all

Starting VS1005g internal SPI Flash prommer v2016-11-03...
WARNING! DBG is high, forced to run at 12.288 MHz!!!
  Default SPI speed 6.1 Mbit/s
  Serial Flash RDID: manufacturer c2 (C2), type 20 (20), density 14 (14)
  Serial Flash REMS: c213 (c213)

Opened map file "eeprom_i.map"
  Programming file "RESCUE_IMG" (0x0006d0 bytes) to addr 0x000000 (0)
    Erasing: .
    Program: .
  Ok
  Programming file "eeprom_i.img" (0x008ba0 bytes) to addr 0x001000 (4096)
    Erasing: .........
    Program: .........
  Ok
ok.
Resetting...
That's fine, then we reset the device plugged to the USB connector and with the GPIO0_0 high to publish the system disk via USB connection, and when we would have to receive a Windows message telling us that the USB device is not formatted (as we had with your breakout boards and as can be seen in your nice youtube tutorial) we always receive the same Windows message: the device is not working and can't be used. So we can't format it. We have tested it with different pcb units, different computers and different versions of Windows from XP to 10.

UART monitoring info of this process looks good to my eyes...

Code: Select all

Hello.
VSOS 3.40 build Aug 01 2017 16:52:06
VLSI Solution Oy 2012-2016 - www.vlsi.fi

Starting the kernel..
Starting Devices...
Internal Flash

Installed system devices:
S: SPI Flash c213.

fopen S:CONFIG.TXT E'Device not open'

0 driver(s) loaded.

VSOS running with 5 tasks:
Task   I/O Stack:0010-020f (512w), free:321
Task   Int Stack:0210-024f ( 64w), free:28
Task   Net Stack:0250-0251 (  2w), free:1
Task    UI Stack:0252-0253 (  2w), free:1
Task DECOD Stack:0254-03cf (380w), free:379

Interrupts:  INT0_DAC:2->37765 INT13_RX:1->32923 INT15_TI1:1->525 INT16_TI2:1->10501

Load S:INIT.AP3...
fopen S:INIT.AP3 E'Device not open'

S:INIT.AP3 not found.
Nothing to do.

USB publishing disk: SPI [attachment=0]screen shot.png[/attachment]Flash c213.
Size 0.9 MB.
SCSI START
BRST
BRST
BRST
BRST
Main difference with working breakout boards is that they say

"Installed system devices:
S: SPI Flash c213, handled by FAT."

What is logical being that internal memory well formatted.

So finally I found this thread and ran the vsprom9test, getting an "I/O error 998" after the app found A vs1005g on the serial port and tryed to upload vsprom9-vs1005g.bin to RAM.
screen shot.png
screen shot.png (21.24 KiB) Viewed 11768 times

Any idea of what is happening? Is there any critical supply line in the vs1005gf for management USB connections? All supply lines in the pcb seem to be right, and the USB connection between micro USB connector to the chip is pretty straightforward.
User avatar
Panu
VSDSP Expert
Posts: 2829
Joined: Tue 2010-06-22 13:43

Re: Flashing a new or bricked VS1005G board

Post by Panu »

Hi!

Hmm, never seen I/O error 998 :shock: but for the USB, I think you might have a connection problem in your pins. First check that DP and DN both have good connection and that the polarity is not reversed.

-Panu
cruedag
User
Posts: 11
Joined: Mon 2017-03-20 13:58

Re: Flashing a new or bricked VS1005G board

Post by cruedag »

Hi Panu, thanks for your prompt reply.

I think we did it right with USB data connection, using your breakout board schematic as a reference:

- VHIGH of vs1005 to pin 1 of the micro USB connector.
- Pin 85 of vs1005 (USBP) to pin 3 of the micro USB connector (micro USB, not mini USB, but I think they have the same pinout).
- Pin 86 of vs1005 (USBN) to pin 2 of the micro USB connector.
- Pin 87 of vs1005 (GND_USB) to common GND and to pin 5 of the micro USB connector.
- Pin 84 of vs1005 (AVDD1, maybe related to USB internal subcircuit?) to common AVDD
- a 100k pull down resistor to pin 4 of the micro USB connector.

- Both USBP and USBN have a 1MOhm pull up resistor to AVDD as seen in your schematic.
- There is also a 1pF capacitor between USBP and USBN, we have tried to remove it to avoid the possibility of a wrong capacitor value.

I have also tried reversing USBP and USBN but with the same result: Windows detecting an external USB disk but not being able to mount it.

After turning vs1005 ON (with a pulse to PWRBTN) we read next voltages:
- VHIGH: 5.08v
- AVDD: 3.89v
- IOVDD: 3.21v (joined with FVDD)
- CVDD: 2.05v
- USBN: 0.06v
- USBP: 3.64v

- GPIO_0: 3.2v (jumper for publishing system disk)
- GPIO_1: 0v
- GPIO_2: 0v
- GPIO_3: 0v

At the same time we see right monitoring info showed previously over UART so it seems that much of the vs1005 is working properly.

Is there any other special line critical to USB publishing that we could check?

Thanks in advance,
Cristóbal
User avatar
Panu
VSDSP Expert
Posts: 2829
Joined: Tue 2010-06-22 13:43

Re: Flashing a new or bricked VS1005G board

Post by Panu »

Hi!

Just noticed this line in your dump:
WARNING! DBG is high, forced to run at 12.288 MHz!!!
If indeed it's the case, then the timing in USB operations is porbably incorrect and that may be the problem. Can you verify?

-Panu
cruedag
User
Posts: 11
Joined: Mon 2017-03-20 13:58

Re: Flashing a new or bricked VS1005G board

Post by cruedag »

Ufff, Panu... thanks a lot! that was the trouble, I left DBG unconnected by mistake so vs1005 had the DEBUG signal active.

But unfortunately, vsprom9test continues giving me "I/O error 998" . Not important now for me, but for your information and please let me kow if you want to make any test on that issue.

Thanks a lot for your great support!
User avatar
Panu
VSDSP Expert
Posts: 2829
Joined: Tue 2010-06-22 13:43

Re: Flashing a new or bricked VS1005G board

Post by Panu »

Hi!

Great that the USB problem is solved and you can move forward! Regarding the Error 998 bug, could you test the software in a couple of different PCs to see if it happens in some and not in others. Can you also try extracting the program into a few different directories on your PC to see if that makes any difference.

-Panu
Fridolin
Senior User
Posts: 20
Joined: Mon 2015-11-30 12:54

Re: Flashing a new or bricked VS1005G board

Post by Fridolin »

Hi,

I have some strange thing too.

We made our one PCB with your VS1005G. Our manufacturer solders your chip with an installed kernel v3.25. And program our own application via USB. This works fine. Device is running correct

Now I tried to update the preinstalled kernel, but I cannot establish any serial connection with vside or vsprom9 to update the kernel.

However, I can see the boot screen on serial port monitoring. And I can communicate with my running application via serial interface (We implemented this interface for remote control).

Do you have any Idea, why it does not recognize the chip for flashing the kernel?

found something at com6.PNG
found something at com6.PNG (19.44 KiB) Viewed 11573 times
could not load prommer.PNG
could not load prommer.PNG (13.53 KiB) Viewed 11573 times
Post Reply