VS1005G breakout board problems

Installing and using VSIDE tools for VLSI Solution's devices that contain a VSDSP signal processor.
Post Reply
nventalab
Senior User
Posts: 21
Joined: Mon 2015-02-23 11:53

VS1005G breakout board problems

Post by nventalab » Tue 2015-05-19 12:48

Dear VLSI staff,

we are trying to prototype our vs1005G based product using the breakout boards v 1.1

We just connected the serial port pins and used the board in terminal or software upgload mode moving a jumper wire from pin 9 (GPIO0-0) to pin 7 or to ground, following the user instructions.

Trying to update the kernel to version 3.22 with selected "VS1005G External SPI Flash Prommer" we got the following message:
Starting VS1005g external SPI Flash prommer v2014-01-14...
Serial Flash RDID: manufacturer 0, type 0, density 0
Warning: Can't find RDID
Serial Flash REMS: 0
Warning: Can't find REMS

Opened map file "eeprom_e.map"
Programming file "eeprom.img" to address 0x000000 (0)
Erase 4 KiB sector 0 ( 0 - 4 KiB), ok. Writing data
VERIFY ERROR block 0 (addr 0 - 255)!
ABORTING!
FATAL ERROR, ABORTING!
Finished, rebooting. (Press Close/Cancel on VSIDE)
So we tryed to use "VS1005G Internal Flash Prommer" and it seemed to work properly producing the following message trace:
Starting VS1005g internal SPI Flash prommer v2014-01-14...
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" to address 0x000000 (0)
Erase 4 KiB sector 0 ( 0 - 4 KiB), ok. Writing data .
Ok
Programming file "eeprom.img" to address 0x001000 (4096)
Erase 4 KiB sector 1 ( 4 - 8 KiB), ok. Writing data .
Erase 4 KiB sector 2 ( 8 - 12 KiB), ok. Writing data .
Erase 4 KiB sector 3 ( 12 - 16 KiB), ok. Writing data .
Erase 4 KiB sector 4 ( 16 - 20 KiB), ok. Writing data .
Erase 4 KiB sector 5 ( 20 - 24 KiB), ok. Writing data .
Erase 4 KiB sector 6 ( 24 - 28 KiB), ok. Writing data .
Erase 4 KiB sector 7 ( 28 - 32 KiB), ok. Writing data .
Erase 4 KiB sector 8 ( 32 - 36 KiB), ok. Writing data .
Erase 4 KiB sector 9 ( 36 - 40 KiB), ok. Writing data .
Ok
Map file "eeprom_i.map" closed
Finished, rebooting. (Press Close/Cancel on VSIDE)
After this operation we got several other problems: when board started in software upload mode, a Window message popup informed about the need of external disk format, but trying to accomplish this task we got another message with "Impossible to format".

We followed the user instruction step by step for the connections, and the Panu video for kernel upgrade.
It is clear that we need to do something different or something more.
Please, can you give us some more instruction to properly use breakout board for our development?

Many thanks
Enzo

User avatar
Panu
VLSI Staff
Posts: 2572
Joined: Tue 2010-06-22 13:43

Re: VS1005G breakout board problems

Post by Panu » Wed 2015-05-20 12:51

Hi!

Could it be that the SPI Flash driver is still trying to use the external flash even if you programmed the kernel to the internal flash...?

There's a line in vsos_vs1005g.c:

Code: Select all

//#define USE_INTERNAL_FLASH /* uncomment this line if you want to use INTERNAL flash for S: */
Did you uncomment it? (remove the // from the beginning of the line)

-Panu
Info: Line In and Line Out, VS1000 User interface, Overlay howto, Latest VSIDE, MCU Howto, Youtube
Panu-Kristian Poiksalo, VLSI Solution Oy

nventalab
Senior User
Posts: 21
Joined: Mon 2015-02-23 11:53

Re: VS1005G breakout board problems

Post by nventalab » Wed 2015-05-20 15:06

You are right Panu,

Now it seems to work properly.

Thank you for the quick reply

Enzo

User avatar
Panu
VLSI Staff
Posts: 2572
Joined: Tue 2010-06-22 13:43

Re: VS1005G breakout board problems

Post by Panu » Wed 2015-05-20 20:36

Hi!

Great that it's working properly!

I just released a set of UART SHELL tools for VSOS, they would be also useful for the Breakout Board. Especially if you replace the SD driver with the USB memory stick driver! (because the breakout board has the connector for the USB memory stick :) ) (after copying the ROOT files from the uart shell extensions.zip file to your breakout board: in CONFIG.TXT put "USBHOST D" instead of "SDSD D" - then you can CD to the USB memory stick and PLAYFILE music files from there.)

Check it out here: viewtopic.php?f=13&t=1615

-Panu
Info: Line In and Line Out, VS1000 User interface, Overlay howto, Latest VSIDE, MCU Howto, Youtube
Panu-Kristian Poiksalo, VLSI Solution Oy

bill
User
Posts: 6
Joined: Sun 2015-12-13 22:41

Re: VS1005G breakout board problems

Post by bill » Wed 2015-12-23 2:47

Dear VLSI staff,

I have a 'Standard I/O' response from VSIDE which is similar to Enzo’s. I think I’ve managed to erase part of the external nand flash memory and prevented normal start-up thereby.

We recently purchased VS1005 Developer Board with Pre-Installed Software VSOS 3.22. It operated very nicely with VLSI Classic Player 0.2 after pressing the Power button.

Deciding to load VSOS 3.25 kernel, I followed your steps in video vlsi001 with the depicted results - save that VSOS 3.25 Main Menu and the player LCD screen appears when the Debugger runs. Apparently init.ap3 is still present in external flash.
Hello.
VSOS 3.25 build Dec 22 2015 14:10:41
VLSI Solution Oy 2012-2015 - http://www.vlsi.fi
Starting the kernel..
Starting Devices...
External SPI Flash
Installed system devices:
S: SPI Flash c214, handled by FAT.
Load drivers, config 0...
Driver: LCD288...
Driver: LCDCON...
Driver: TOUCH288...
Driver: STDBTCH...
Driver: SDSD...
5 driver(s) loaded.
VSOS running with 5 tasks:
Task I/O Stack:0010-020f (512w), free:164
Task Int Stack:0210-024f ( 64w), free:29
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->14034 INT16_TI2:2->10574
Load S:INIT.AP3...
And the player plays audio normally - except for the Stop button (lower left).
But when stopping the Debugger and attempting to program, I encounter:
Starting VS1005g external SPI Flash prommer v2014-01-14...
Serial Flash RDID: manufacturer c2, type 20, density 15
Serial Flash REMS: c214
Opened map file "eeprom_e.map"
Programming file "eeprom.img" to address 0x000000 (0)
Erase 4 KiB sector 0 ( 0 - 4 KiB), ok. Writing data
VERIFY ERROR block 0 (addr 0 - 255)!
ABORTING!
FATAL ERROR, ABORTING!
Finished, rebooting. (Press Close/Cancel on VSIDE)
I thought to build again with 3.22.
Hello.
VSOS 3.22 build Dec 22 2015 17:11:04
VLSI Solution Oy 2012-2015 - http://www.vlsi.fi
Starting the kernel.. Starting Devices... External SPI Flash
Installed system devices:
S: SPI Flash c214, handled by FAT.
Load drivers, config 0...
Driver: LCD288...
Driver: LCDCON...
Driver: TOUCH288...
Driver: STDBTCH...
Driver: SDSD... E'SD Card not found'
5 driver(s) loaded.
VSOS running with 5 tasks:
Task I/O Stack:0010-020f (512w), free:178
Task Int Stack:0210-024f ( 64w), free:29
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->14034 INT16_TI2:2->10670
Load S:INIT.AP3...
Again the player works - now including the Stop button! Nand flash still does not appear on PC. Reset seems to stop all program execution.

Trying to program the external flash once again:
Starting VS1005g external SPI Flash prommer v2014-01-14...
Serial Flash RDID: manufacturer c2, type 20, density 15
Serial Flash REMS: c214
Opened map file "eeprom_e.map"
Programming file "eeprom.img" to address 0x000000 (0)
Erase 4 KiB sector 0 ( 0 - 4 KiB), ok. Writing data
VERIFY ERROR block 0 (addr 0 - 255)!
ABORTING!
FATAL ERROR, ABORTING!
Finished, rebooting. (Press Close/Cancel on VSIDE)
I am a beginner, please check my conclusions.

1. The player software is still resident in the ‘removable partition’ section of the flash.
2. VSIDE loads that software (and the kernel) to vs1005 RAM for execution.
3. As shown above, I am indeed addressing the Developer Board External nand flash memory.
4. Sector 0 has been erased.
5. For some reason the Developer Board cannot write to sector 0.

I’m sure there is something critical that I’ve not learned yet! I've not tried switching to internal nand flash memory. I'd like to understand what has happened. Please help if you can.

Thanks very much.

Bill

bill
User
Posts: 6
Joined: Sun 2015-12-13 22:41

Re: VS1005G breakout board problems

Post by bill » Wed 2015-12-23 22:26

Dear VLSI staff,

Um......

Today my VS1005 Developer Board external nand flash programmed nicely, restoring boot capability with kernel 3.22.

I think the difference is that I did not run VSIDE debugger (and then stopping it, of course) before attempting to write to the external nand flash memory. Heeding a forum comment, I used the Prommer immediately after the RS-232 link auto-detected.

But, having a 'restored' board, I'm too chicken to test this just now!

Merry Christmas, one and all!

Bill

User avatar
Panu
VLSI Staff
Posts: 2572
Joined: Tue 2010-06-22 13:43

Re: VS1005G breakout board problems

Post by Panu » Tue 2016-01-05 22:00

Hi!

With the Developer Board you can push the BOOT SELECT button during boot to disable access to external SPI or NAND flash. That will cause a "black screen" boot to pure ROM (unless internal flash is programmed). From that "black screen" stat you will be able to completely rewrite all flashes no matter what their state is.

If internal flash is programmed, for code protection purposes there is no way to prevent booting that flash except by setting the "erase state" jumpers which cause the internal flash to be erased.

So don't worry - you basically cannot brick the developer board so that it can't be unbricked. :)

-Panu
Info: Line In and Line Out, VS1000 User interface, Overlay howto, Latest VSIDE, MCU Howto, Youtube
Panu-Kristian Poiksalo, VLSI Solution Oy

bill
User
Posts: 6
Joined: Sun 2015-12-13 22:41

Re: VS1005G breakout board problems

Post by bill » Wed 2016-01-20 7:12

Panu,

Thanks very much for your reply. I think I did not understand VSIDE debugger and programming operations well enough at first. I have since learned to switch kernels and object code back and forth using external flash memory - without incident! Your video tutorials are very helpful.

Best Regards,

Bill

Post Reply