Shop OBEX P1 Docs P2 Docs Learn Events
USB Testing - Page 11 — Parallax Forums

USB Testing

18911131420

Comments

  • cgraceycgracey Posts: 14,206
    ozpropdev wrote: »
    cgracey wrote: »
    I've got that new compile underway now for the -A9.

    Be careful Chip!
    I have found Quartus to be be a massive source of stress!!
    :)

    I've tamed it for our needs. No stress there.

    Today has been a really good day. Ever since this whole thing started, my pulse jumped up to about 85. When I was lying in bed last night, my heart went through a funny convolution, like a new signal took over, and afterwards it was beating at 70 beats per minute, like it used to. I wouldn't be surprised if it toggled a few more times, but I think it's finding its way back to how it used to be.


  • We are all surrounded by all sorts of "modern technology" and yet the good old human body never ceases to amaze me with it's ability to repair itself!
  • cgracey wrote: »
    Cluso99 wrote: »
    Chip,
    Get out of the P2 for a well deserved rest and recouperate!!!

    But, the P2 is trying to get out of ME.

    Maybe this would be a good time to write some of the instruction documentation. That would be something that can be taken in small chunks, isn't mentally taxing, etc.
  • USB full-speed/low-speed demo v0.8c.
    P2v13 FPGA image is required.

    There are now two source files -- the full demo, and a "minimal" version without the verbose descriptor output. This shaves ~9KB off the .obj file.

    If you have a 2.4GHz wireless keyboard and mouse combo, and both devices support the HID "boot protocol", you should see the device output on your terminal (Parallax Serial Terminal recommended). The output screen formatting is very minimal, so if both devices are used at the same time, things get messy quickly. But hey, it's just a demo.

    On the Prop123-A9 board, pushbutton PB3 can be used to toggle on/off verbose data output to the terminal. The default at startup is off, and the device must be disconnected before the option can be changed.

    More improvements have been made in the handling of error conditions, including certain STALL situations. Low-speed keyboards and mice are working very well. Full-speed devices are working better, but can still be a bit finicky. @Rayman, I think your Logitech Mk520 wireless keyboard/mouse should now work.

    In the demo's verbose mode, all device/interface base class type IDs defined by the USB-IF are matched to a description string. The same is done for the Subclass and Protocol IDs for the HID and Mass Storage base classes. Example output is in the FS_ThumbDrive.txt file.

    The bug in previous versions that would occasionally require an FPGA image reload after something went wrong on the USB should be fixed.

    Any and all feedback is welcome. Thanks!
  • Oops, forgot to update one of the files in the zip...
  • cgracey wrote: »
    Here's a new v14 Prop123-A9 image:
    It wasn't upgrade and go, but I didn't expect it to be. It doesn't look like it will take long to get the timings tweaked back into place.

    Thanks, Chip!
  • cgraceycgracey Posts: 14,206
    garryj wrote: »
    cgracey wrote: »
    Here's a new v14 Prop123-A9 image:
    It wasn't upgrade and go, but I didn't expect it to be. It doesn't look like it will take long to get the timings tweaked back into place.

    Thanks, Chip!

    And things should speed up, afterwards, at least a little. It might allow you to pack in one more housekeeping task.
  • Sorry Chip but V14 appears to be broken. :(
    I'm getting weird Cordic behaviour and possible Hub issues.
    I will see if I can narrow it down and be more specific.
    No rush.
  • cgraceycgracey Posts: 14,206
    ozpropdev wrote: »
    Sorry Chip but V14 appears to be broken. :(
    I'm getting weird Cordic behaviour and possible Hub issues.
    I will see if I can narrow it down and be more specific.
    No rush.

    Oh, no! I must have not turned the CORDIC back on from my test board compiles. I will start it up again in the morning. Sorry about that. I only tested that it identified properly.
  • No worries Chip.
    Can test without it, take your time.
    Relax please :cool:
  • cgraceycgracey Posts: 14,206
    Here is the new Prop123-A9 image. It's v14a:

    https://drive.google.com/file/d/0B9NbgkdrupkHRVk1emhMUUgyaFE/view?usp=sharing

    I tested it out this time and it seems to work fine.
  • V14a running nicely now.
    CALLPx,Jxxx and JNxxx instructions all Ok now.
    always @(new_fpga_image)
            chip <= thanks;
    
  • cgraceycgracey Posts: 14,206
    ozpropdev wrote: »
    V14a running nicely now.
    CALLPx,Jxxx and JNxxx instructions all Ok now.
    always @(new_fpga_image)
            chip <= thanks;
    

    Thanks for checking that.

    Can you please remind me whether or not some changes are needed on the assembler in PNut.exe?
  • CALLD rel9 variant needs attention in Pnut.
    dat	org
    
    'CCCC 1011001 CZI DDDDDDDDD SSSSSSSSS        CALLD   D,S/#rel9   {WC,WZ}
    
    	setnib	dirb,#$f,#0
    '	calld	myret,#mycode	'fail
    '	calld	myret,@mycode	'fail
    '	calld	myret,#@mycode	'fail
    	long	$fb240c02	'works
    
    	outh	#32
    me	jmp	#me
    
    mycode	outh	#33
    	jmp	myret
    
    myret	res	1
    
    
  • cgracey wrote: »
    Here is the new Prop123-A9 image. It's v14a:
    No problems regarding the USB changes.
  • jmgjmg Posts: 15,175
    garryj wrote: »
    cgracey wrote: »
    Here is the new Prop123-A9 image. It's v14a:
    No problems regarding the USB changes.

    Do you mean V14 -> V14a, or did you mean you now have the 'timings tweaked back into place', with the changes to the bits 3..0 of USB smart pin status ?

  • It looks good for the smart pin status changes (14a).
  • RaymanRayman Posts: 14,755
    Just tested v0.8c...

    Now works with both Logitech mk520 wireless keyboard and mouse combo
    and also with Logitech k400 Plus wireless keyboard and touchpad.

    Only keyboard recognized on wired keyboard and touchpad combo Periboard 515-Plus.

    Thanks!
    Ray
  • Rayman wrote: »
    Just tested v0.8c...

    Now works with both Logitech mk520 wireless keyboard and mouse combo
    and also with Logitech k400 Plus wireless keyboard and touchpad.
    This is good to hear!
    Only keyboard recognized on wired keyboard and touchpad combo Periboard 515-Plus.
    For this one, I'd hazard a guess that the touchpad interface doesn't support boot protocol? My Microsoft Wireless Optical Desktop 4000 supports boot keyboard, but no joy for the mouse.

    Going forward, I was planning on moving the serial terminal stuff into its own cog. IMO this would make it easier to integrate the USB stuff into projects like yours. Hopefully, at least for boot protocol keyboard/mouse, we can eventually come up with an interface that gets us closer to "plug and play".
  • jmgjmg Posts: 15,175
    Curious about attach of multiple units.
    Could P2 service those on a round robin basis, (eg 500us for 2 USBs, alternating ), or can this best be done using a HUB ?
  • RaymanRayman Posts: 14,755
    garryj wrote: »
    Going forward, I was planning on moving the serial terminal stuff into its own cog. IMO this would make it easier to integrate the USB stuff into projects like yours. Hopefully, at least for boot protocol keyboard/mouse, we can eventually come up with an interface that gets us closer to "plug and play".

    That sounds perfect.


  • RaymanRayman Posts: 14,755
    edited 2017-01-03 20:23
    Borrowed a monitor to try this with a touchscreen computer monitor with USB output for the touchscreen.

    No joy. It was a longshot, but would have been neat had it worked...
  • RaymanRayman Posts: 14,755
    BTW: My quick fix for the LUT non-start issue doesn't seem to work 100%.

    Have to try the "USB full-speed/low-speed demo v0.8c." version.
    Will try the low footprint version with my GUI code...
  • Rayman wrote: »
    Borrowed a monitor to try this with a touchscreen computer monitor with USB output for the touchscreen.

    No joy. It was a longshot, but would have been neat had it worked...

    Does the device enumerate? I'm curious as to what the configuration descriptor chain looks like. If you get the time, could you run the most recent USB demo in verbose mode and copy/paste the results to a .txt file? If it's HID compliant, the report descriptors should show how to get the x/y position/velocity and tap data.
  • RaymanRayman Posts: 14,755
    Doesn't seem to get very far...
    Gives me this:
    Debug & descriptor output to terminal is on.
    Mouse data scroll option is on.
    Mouse data scroll option is off.
    <Full-Speed device connected.>
    GetDescriptor(TYPE_DEVICE): Retry limit exceeded, transaction canceled.
    <Full-Speed device connected.>
    

    Don't worry about it though, this was just a fun test...
  • GetDescriptor(TYPE_DEVICE): Retry limit exceeded, transaction canceled.
    Bummer. It's not even getting out of the starting gate. For full-speed I'm still scratching my head as to why some devices work really well, yet others don't :confused:
  • What monitor are you trying Rayman?
  • RaymanRayman Posts: 14,755
    Just one I have a work somewhere...
    Can check model tomorrow...

    Annoying thing about it is that people will come by and touch the screen not knowing it's touch sensitive and make it do some random thing...
  • OK. We have a number of acer T232H's, but have also used 3M CT150's. I'm looking forward to firing up your demo soon
Sign In or Register to comment.