phantom982002

Papilio One Programming Issues

Recommended Posts

I recently purchased the Papilio One from Sparkfun and have now tried, unsuccessfully to program on both Ubuntu and Windows Vista.

 

On the former, the device is not detected (nothing comes up on dmesg) though the power LED comes on. The papilio programmer (using the opensource libftdi) complains (regardless of whether the device is plugged in) as follows: Could not access USB device 0403:6010.

 

On Windows Vista, the programmer complains about being unable to find FTD2XX.dll. I am uncertain as to whether the device is detected (I installed everything as instructed in the guide).

 

Any assitance in getting my board operational would be very appreciated.
 

Share this post


Link to post
Share on other sites

The last guy who had a similar problem fixed it by replacing the USB cable. At the very least try another quality cable and see, even if you don't think that's the problem, you might be pleasantly surprised. Regarding the missing dll, I can't remember if that is installed with the drivers, I believe it should. I'll check when I get home.

Share this post


Link to post
Share on other sites

Yes, sounds like power is getting to the board but there are no communications. If you can try a different USB cable that would be good, each board is supposed to go through a verification test when it is manufactured so they should have already tested this board at the factory to see if it works. Having said that, there is always the possibility that it slipped through the cracks and has a hardware issue. Lets rule out the easy things first.

 

Thanks,

Jack.

Share this post


Link to post
Share on other sites

The FTDI chips are more or less self contained and should show up in Device Manager regardless of what software is installed. IIRC they enumerate under "Universal Serial Bus Controllers" unless you have the virtual comm port checkbox enabled.

 

Seems like I've seen a few USB cables out there that are intended only for charging and lack the data lines entirely. I've also had some issues with some very cheap cables with wires too thin to supply enough power for some more hungry devices. Definitely try a different cable first.

Share this post


Link to post
Share on other sites

I just got my Papilio Pro the other day and had the same problem. The USB cable that came with it felt really cheap, especially compared to the nice fit & finish of the Papilio board and wings. While my laptop would detect that something had been plugged in, it wouldn't talk to it but swapping the cable solved the problem and everything works fine.

 

While including a cable is a nice gesture, a cheap cable that doesn't work is worse than no cable at all and could lead to frustration. With reasonably well made USB cables being only a couple bucks in single quantities it isn't a great deal of cost. Perhaps just have the cable available at the time of purchase as an optional accessory at a small additional cost for those who need it.

Share this post


Link to post
Share on other sites

I just got my Papilio Pro the other day and had the same problem. The USB cable that came with it felt really cheap, especially compared to the nice fit & finish of the Papilio board and wings. While my laptop would detect that something had been plugged in, it wouldn't talk to it but swapping the cable solved the problem and everything works fine.

 

While including a cable is a nice gesture, a cheap cable that doesn't work is worse than no cable at all and could lead to frustration. With reasonably well made USB cables being only a couple bucks in single quantities it isn't a great deal of cost. Perhaps just have the cable available at the time of purchase as an optional accessory at a small additional cost for those who need it.

 

We got a batch of these USB cables and we agree that the quality is not good enough to continue selling them. We ordered another batch of higher quality cables but have been throwing in the older cables for free so they don't go to waste... Maybe we need to just figure out some other use for the old cables...

 

Jack.

Share this post


Link to post
Share on other sites

Hello everyone,

 

I am very new to Papilio. I am geing an error

 

Using devlist.txt
Invalid chain position 0, position must be less than 0 (but not less than 0).

 

 

when I use papilio loader to load Quickstart-Papilio_One_250K-v1.5.b

it file.

 

will you please help me out solving thie problem?

Share this post


Link to post
Share on other sites

Explaining my problem in more details,

 

When I disconnect USB cable from laptop it shows error

 

Could not access USB device 0403:6010.

 

 

and when I reconnect it, it shows

 

Using devlist.txt
Invalid chain position 0, position must be less than 0 (but not less than 0).

 

same error . Please help me out....

Share this post


Link to post
Share on other sites

Amit, there are a couple things you can try but that usually indicates a problem with the board, did you purchase this board from the India store?

 

You can try swapping out the USB cable and rebooting the computer. If those do not work then the board probably needs to be replaced.

 

Jack.

Share this post


Link to post
Share on other sites

Hi,

Im having problems with my board which is somewhat similar. When I plug in the board I can connect to it and successfully pass my .bit file in it (writing to FPGA)...

 

However, after couple of times of doing it... The log on Papillio Loader shows successful transfer but the device doesnt respond accordingly...

 

I had a test led vhdl .bit file that lights odd pin numbers, I get the same problem with this test .bit file.

 

Another thing that is troubling is that I get the following error when I try programming the FLASH...

 

 

JTAG chainpos: 0 Device IDCODE = 0x11c10093 Desc: XC3S100E

Using devlist.txt
JTAG chainpos: 0 Device IDCODE = 0x11c10093 Desc: XC3S100E
Using devlist.txt
 
Uploading "C:\Program Files (x86)\Gadget Factory\Papilio Loader\programmer\bscan_spi_xc3s100e.bit". Done.
Programming time 70.0 ms
 
Programming External Flash Memory with "C:\XILINX FPGA Study\Experiments\day1\switch_leds.bit".
Uknown Flash Manufacturer (0x00)
Error: SPI Status Register [0x00] mismatch (Wrong device or device not ready)..
Error occured.
USB transactions: Write 30 read 8 retries 0
 
Using devlist.txt
Response incompatible with mask xxxx01
Invalid chain position 0, position must be less than 0 (but not less than 0).
ISC_Done       = 1
ISC_Enabled    = 1
House Cleaning = 1
DONE           = 1

 

Share this post


Link to post
Share on other sites

yes... I bought one with 100k logic gates.... just trying to start with FPGAs... 

 

is there a block diagram that explains how the whole board works... I mean when I click write to FPGA what exactly happens?

Share this post


Link to post
Share on other sites

Hi Loop_51,

 

I don't think there ever has been a 100k version - have a close look at the chip's markings.

 

When you click "write to FPGA" the host PC talks to the FT2232D chip, and transfers the bit file via ithe FT2232D's connection to the FPGA's JTAG port. There really isn't anything like a "bootloader" involved - it is all acheived by the TCK, TDI and TMS signals shown on http://papilio.cc/uploads/Papilio/usb-schematic.png

 

It is a little different when you burn the design into serial configuration EEPROM. To do this the programming tool first downloads a 'special' '.bit' into the FPGA, and it is this '.bit' file that connects the EEPROM to the programming interface.

The host then erases the required bits of the EEPROM, verifies that the erase worked, programs the EEPROM, then verifies that the EPROM now contains the correct image.

  • Like 1

Share this post


Link to post
Share on other sites

Oh, that explains a lot :) Can you post the markings on the serial flash chip, it's the 8 pin chip on the edge of the board below the FPGA. Or post a close up picture of it, whatever's easier.

 

From your log it seems the FPGA is identified on the JTAG bus and the bit file is uploaded to the FPGA but then it can't ID the flash chip. It may be that it is a different chip manufacturer or type of chip so the ID doesn't match the expected result.

Share this post


Link to post
Share on other sites

The SST25V040B is the supported flash chip as you can see here under SPI Flash heading half way down the page. I would recommend you use a magnifying glass and check all the pins of the flash chip to make sure they are all soldered on properly to the board, perhaps if you have a multimeter check that you get 3.3V on pins 3, 7, 8 as per the schematic at the link I mentioned.

 

Finally if none of the above show anything wrong, it may be the software. I may be wrong but I didn't think that the programmer software comes with a bscan_spi_xc3s100e.bit file as there was no official Papilio with a XC3S100 FPGA. May I ask where you got the programming software from? Maybe it's an incorrect bscan file?

Share this post


Link to post
Share on other sites

Checked the pins... They seems to be soldered properly... Checked the voltages... It is 3.3v there...

Im using the papillio loader 2.1

On the folder of the papilio loader it has a bscan_spi__xc3s100e.bit file

Share this post


Link to post
Share on other sites

one more thing... if I open the jumper from the VCC0 headers and completely disconnect the VCC0... If I scan with the Papillio Loader... I get 

 

 

JTAG chainpos: 0 Device IDCODE = 0x11c10093 Desc: XC3S100E

Using devlist.txt

 

Doesnt the VCC0 powers the FPGA which responds via the JTAG... I know that powering the deice will turn on the FT2232D but not the FPGA right? The Flash though takes power directly from the 3.3V line

Share this post


Link to post
Share on other sites

The FPGA core is also directly powered. The VCCO jumper only sets the voltage for the FPGA I/O pins so you can for example directly connect them

to 2.5v logic or 3.3v logic. You should make sure the jumper is set for 3.3v when programming the flash.

Share this post


Link to post
Share on other sites

So what is wrong with my SPI Flash device? or the board... again the list of problems

 

1) I can write on the FPGA after leaving it off for couple of hours but after couple of writes the device physically doesnt respond according to the .bit file. Tested this phenomenon with a test vhdl code which turns on odd I/O pins.

2) I get error when I try writing the SPI Flash. (See the posts before for exact error)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now