After discovering that FRES bit of the USB Control Register isnt useful as a software disconnect/connect. I tied one of the header pins to PA12 - USB D+ and used the user 'c' and 'd' values on the uart to connect (set as output and pullup) and disconnect(set as input floating) ...
Unfortunately other that RESET, no USB transactions were taking place. My usb sniffer showed sync errors.
Last night I decided to test a theory - which is that the internal pullup/pulldown wasnt driving the pin/line hard enough. I decided to remove the header wire between PA0 and PA12 and just insert the jumper on J6 after initialization. Immediately communication started flowing between the host and my board as seen on my beagle USB sniffer.
The jumper pulls PA12 to vcc (3.3v).
I even tested using PA12 to do the work PA0 was meant to do. To no avail. Finally I decided I needed a momentary switch plugged into J6 - for now while I am debugging my firmware. Normal operation would have firmware running shortly after usb power plugin
I salvaged this switch from the front panel of an old PC I had laying around and it serves its purpose well. Here is the output from the TotalPhase Beagle USB sniffer and a picture of the board and push button switch.
No comments:
Post a Comment