• Content count

  • Joined

  • Last visited

Everything posted by PeterH

  1. I've run several examples now but one that I can't get to work is the Papilio_DUO_BitCoin_Miner example. When I try to load, view or edit the circuit associated with this sketch I get a stack trace in the IDE message area, for example: Exception in thread "AWT-EventQueue-0" java.lang.StringIndexOutOfBoundsException: String index out of range: -1214 at java.lang.String.substring(Unknown Source) at at at at java.awt.Component.processMouseEvent(Unknown Source) at javax.swing.JComponent.processMouseEvent(Unknown Source) at java.awt.Component.processEvent(Unknown Source) at java.awt.Container.processEvent(Unknown Source) at java.awt.Component.dispatchEventImpl(Unknown Source) at java.awt.Container.dispatchEventImpl(Unknown Source) at java.awt.Component.dispatchEvent(Unknown Source) at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source) at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source) at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source) at java.awt.Container.dispatchEventImpl(Unknown Source) at java.awt.Window.dispatchEventImpl(Unknown Source) at java.awt.Component.dispatchEvent(Unknown Source) at java.awt.EventQueue.dispatchEventImpl(Unknown Source) at java.awt.EventQueue.access$200(Unknown Source) at java.awt.EventQueue$ Source) at java.awt.EventQueue$ Source) at Method) at$1.doIntersectionPrivilege(Unknown Source) at$1.doIntersectionPrivilege(Unknown Source) at java.awt.EventQueue$ Source) at java.awt.EventQueue$ Source) at Method) at$1.doIntersectionPrivilege(Unknown Source) at java.awt.EventQueue.dispatchEvent(Unknown Source) at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at Source)There is a library named BitCoin_Miner containing a circuit subdirectory, and as far as I can see this is what the #define circuit BitCoin_Miner declaration is intended to reference, but for some reason it's not working. I have confirmed that in other examples, if a non-existent circuit is referenced the IDE handles that gracefully. However, for the Papilio_DUO_BitCoin_Miner example, if I change the sketch to reference a non-existent circuit this still throws an exception. I suspect there's something wrong with the structure of the Papilio_DUO_BitCoin_Miner example which is breaking the IDE's circuit-processing logic. Has anyone alse managed to open this example in the IDE and Load, View or Edit the circuit?
  2. Thank you, that fixed it nicely. Now I'm onto fighting Python errors; I guess this was designed for Python V2.
  3. PeterH

    Could not access USB device 0403:6010

    My PC runs Windows 7. The Advanced Properties don't show all those options - just an option to enable FIFO buffers, a couple of sliders to set the buffer size, and a drop-down to select the port number. I can't figure out whether the problem is on the PC side or the AVR side but there seems to be a mismatch somewhere. When I upload a simple Blink sketch, it all seems to work OK (I see the AVR Bootloader port appear when the device boots, and then that disappears and the AVR Serial Port port appears) with the only snag being that the Bootloader and Serial Port port numbers aren't the same. This doesn't seem to be a big issue because I can select the Serial Port in the IDE and sketches upload OK, but I suspect that's not how it was intended to work. However, when I upload the Papilio_DUO_Quick_Start sketch, when the bootloader times out and the Bootloader port disappears, instead of seeing the AVR Serial Port, I get a PnP error and an Unknown Device. This means I don't have a port available to select in the IDE. In order to upload a sketch next time, I need to reset the AVR to run the bootloader, quickly select the corresponding COM port, start the upload and then reset the AVR again to re-start the bootloader to actually perform the upload. It's a nuisance. I haven't tried using the FPGA as ISP approach yet. In this situation where the AVR COM ports seem to be misbehaving, would the ISP approach be a better bet?
  4. PeterH

    Could not access USB device 0403:6010

    From what I've seen, that Papilio DUO AVR Serial Port is only created when the sketch calls Serial.begin(). One of the symptoms when I uploaded the Papilio DUO Quick Start sketch was that the AVR Serial Port no longer appeared, but when I uploaded a simple sketch that just opened the serial port and blinked an LED, I saw the Papilio DUO AVR Serial Port again at the point that Serial.begin() is called. The main problem outstanding in my installation now is that the COM port numbers don't make sense. Having deleted the USB devices, I have now got into a state where the Papilio DUO AVR Serial Port comes up as COM11, and the AVR Bootloader and FPGA Serial Port both come up as COM12. I guess the USB drivers are meant to match up the AVR Bootloader and AVR Serial Port so they end up with the same port number, but in my case that isn't working. I also find that from time to time some of the Papilio USB devices show up as "USB Serial Device" or "USB I/O Device", and once they both showed up as "HID-compliant mouse". I this code in the Quick_Start sketch which suggested this might be a known issue: //Delay for 5 seconds to prevent detection as a Micorsoft Serial BallPoint serial mouse. delay(5000);
  5. PeterH

    Could not access USB device 0403:6010

    I've made a little progress. I reset the AVR and was able to select the Papilio DUO AVR Bootloader (COM11) port in DesignLab. Then I uploaded a copy of the Blink sketch which had Serial.begin(9600) added to setup(). Now when I reboot the AVR I see 'Papilio DUO AVR Bootloader (COM11)' appear for a few seconds, then that disappears and Papilio DUO AVR Serial Port (COM13)' appears. If I open COM13 I see output from the sketch. This sort-of works but is pretty inconvenient because the COM port number is changing - it a bit of faffing around to run the bootloader and then quickly select that port in the IDE in order to be able to upload a sketch, and then change to a different COM port to see the sketch output. Is this changing of the port number how it is supposed to work?
  6. PeterH

    Could not access USB device 0403:6010

    I'm facing a similar problem. The DUO worked exactly as expected up until I tried to load a new sketch onto the AVR, and since then it no longer creates the 'Papilio DUO AVR Serial Port' virtual COM port - instead, I get USB PnP errors. The PC is running Windows 7. I have installed DesignLab 1.0.1 and the XILINX ISE WebPack. For convenience I connected the FPGA USB cable directly to the PC, and the AVR USB cable via a USB hub. The power selector jumper is in the FPGA position. Initially the on-board LED blinked as expected. When I disconnected it, plugged in the LED/buttons wing and reconnected, the onboard LED still blinked as before and the LEDs on the wing also blinked. When the DUO was running, I found Papilio DUO AVR Serial Port (COM9) and Papilio DUO FPGA Serial Port (COM12) present. Then I opened the Papilio_DUO_Quickstart sketch in DesignLab, selected Papilio DUO - AVR - USB as the board type and the AVR's virtual COM port (COM9) as the serial port, and uploaded the sketch. After the upload had completed, I still has COM12 but COM9 had disappeared. Each time I reset the AVR I found that a 'Papilio DUO AVR Bootloader (COM9)' port appeared for a few seconds, then that disappeared and an unknown Device appeared. A Windows Error Reporting event appeared in the Windows Application Log at this time: Log Name: Application Source: Windows Error Reporting Date: 08/02/2015 15:29:44 Event ID: 1001 Task Category: None Level: Information Keywords: Classic User: N/A Computer: E620 Description: Fault bucket 388111150, type 5 Event Name: PnPDeviceProblemCode Response: Not available Cab Id: 0 Problem signature: P1: x64 P2: USB\UNKNOWN P3: {36fc9e60-c465-11cf-8056-444553540000} P4: 0000002B P5: unknown P6: unknown P7: unknown P8: P9: P10: Attached files: C:\Users\Peter\AppData\Local\Temp\DMI86DD.tmp.log.xml C:\Windows\inf\usb.inf These files may be available here: C:\Users\Peter\AppData\Local\Microsoft\Windows\WER\ReportArchive\NonCritical_x64_8dd2a6bea57836935d86a299b4735d5c6f632592_12cec237 Analysis symbol: Rechecking for solution: 0 Report Id: 4544e066-afa7-11e4-88a0-d067e50fbc77 Report Status: 0 Event Xml: <Event xmlns=""> <System> <Provider Name="Windows Error Reporting" /> <EventID Qualifiers="0">1001</EventID> <Level>4</Level> <Task>0</Task> <Keywords>0x80000000000000</Keywords> <TimeCreated SystemTime="2015-02-08T15:29:44.000000000Z" /> <EventRecordID>45936</EventRecordID> <Channel>Application</Channel> <Computer>E620</Computer> <Security /> </System> <EventData> <Data>388111150</Data> <Data>5</Data> <Data>PnPDeviceProblemCode</Data> <Data>Not available</Data> <Data>0</Data> <Data>x64</Data> <Data>USB\UNKNOWN</Data> <Data>{36fc9e60-c465-11cf-8056-444553540000}</Data> <Data>0000002B</Data> <Data>unknown</Data> <Data>unknown</Data> <Data>unknown</Data> <Data> </Data> <Data> </Data> <Data> </Data> <Data> C:\Users\Peter\AppData\Local\Temp\DMI86DD.tmp.log.xml C:\Windows\inf\usb.inf</Data> <Data>C:\Users\Peter\AppData\Local\Microsoft\Windows\WER\ReportArchive\NonCritical_x64_8dd2a6bea57836935d86a299b4735d5c6f632592_12cec237</Data> <Data> </Data> <Data>0</Data> <Data>4544e066-afa7-11e4-88a0-d067e50fbc77</Data> <Data>0</Data> </EventData> </Event> I also see three UserPnP events in the System event log. This is the last one: Log Name: System Source: Microsoft-Windows-UserPnp Date: 08/02/2015 15:34:56 Event ID: 20001 Task Category: (7005) Level: Information Keywords: User: SYSTEM Computer: E620 Description: Driver Management concluded the process to install driver FileRepository\papilioduo_usb_driver.inf_amd64_neutral_3a30c79973337c29\papilioduo_usb_driver.inf for Device Instance ID USB\VID_1D50&PID_60A4\6&2B8B280A&0&3 with the following status: 0x0. Event Xml: <Event xmlns=""> <System> <Provider Name="Microsoft-Windows-UserPnp" Guid="{96F4A050-7E31-453C-88BE-9634F4E02139}" /> <EventID>20001</EventID> <Version>0</Version> <Level>4</Level> <Task>7005</Task> <Opcode>0</Opcode> <Keywords>0x8000000000000000</Keywords> <TimeCreated SystemTime="2015-02-08T15:34:56.813577500Z" /> <EventRecordID>1383165</EventRecordID> <Correlation /> <Execution ProcessID="6816" ThreadID="5988" /> <Channel>System</Channel> <Computer>E620</Computer> <Security UserID="S-1-5-18" /> </System> <UserData> <InstallDeviceID xmlns:auto-ns2="" xmlns=""> <DriverName>FileRepository\papilioduo_usb_driver.inf_amd64_neutral_3a30c79973337c29\papilioduo_usb_driver.inf</DriverName> <DriverVersion>5.1.2600.0</DriverVersion> <DriverProvider>Gadget Factory (</DriverProvider> <DeviceInstanceID>USB\VID_1D50&PID_60A4\6&2B8B280A&0&3</DeviceInstanceID> <SetupClass>{4D36E978-E325-11CE-BFC1-08002BE10318}</SetupClass> <RebootOption>false</RebootOption> <UpgradeDevice>false</UpgradeDevice> <IsDriverOEM>true</IsDriverOEM> <InstallStatus>0x0</InstallStatus> <DriverDescription>Papilio DUO AVR Bootloader</DriverDescription> </InstallDeviceID> </UserData> </Event> I'm guessing that the USB handling of the AVR virtual serial port is done in the sketch running on the AVR, and for some reason the sketch that I have uploaded no longer matches the corresponding USB device driver on the PC. Does that make sense? Any idea how to recover from it? At the moment I can't even select the DUO AVR COM port to upload a new sketch, because the bootloader port doesn't stick around for long enough to select it.