There is an issue with the betemcu.cn USBASP as sold on http://9xrprogrammer.com, Ebay, and elsewhere. The betemcu.cn USBASP is the primary USBASP hardware available any more since HK apparently quit selling USBASP. Hopefully this will keep people from pulling their hair out reinstalling drivers or having the appearance of intermittent operation of their USBASP. luckily there is a workaround.
This issue mainly revolves around targets that have a backlit LCD or other circuitrys that initially have a very low resistance when powered up. Examples of this are the Turnigy 9XR and the HK KKmulitcopter control board that has an LCD. The MCU of the USBASP is being driven into brownout during the powering up of these targets.
- Programmers involved - Betemcu programmers sold from March of 2013 till present ( September 2013). The manufacturer has been notified and is reverting to the working configuration. Only the programmers with a 3.3V/5V option are affected. Unfortunately these are the most popular models. The PCB is black. If you have a green PCB , you are not affected.
- Issue - Avrdude reports 'avrdude: error: could not find USB device "USBasp" with vid=0x16c0 pid=0x5dc' even though the drivers are properly installed.
- Cause - Manufacturer switched from using a '0' ohm jumper to a '2.0' or '2.4' ohm resistor as a jumper on the 3.3/5V option to power the target. During power up of a target with a very low initial resistance the majority of the voltage supplied by the computers USB port is being dropped across this resistor, causing the MCU to go into brownout.
- Workaround - Plug the target (9xr/kkboard.etc) into the USBASP before plugging the USBASP into the computer
A schematic and pcb layout of both revisions of the PCB are here. The resistor is marked as '0' ohms in the schematic although that isnt true for the later versions of these PCB's
http://openrcforums.com/forum/viewtopic ... 109&t=3233
Why did it happen ? When questioned, the manufacturer made comments about 'additional protection ' for laptops USB power supplies. Upon further questioning and discussion the manufacturer agreed to remedy the issue. He has followed through in the past and I have confidence he will on this issue also.
Pictures of the component location, more details of that particular part of the circuitry, oscilloscope screenshots of the voltage drop at the MCU, are all available if requested. I just wanted to get this out now. I've only had a couple returns over this and now that I know what is going on it is easy to give out the workaround. I believe a portion of the people who 'just cant get the driver installed' or ' the driver was installed yesterday , but now its gone' were being bitten by this issue.
After installing drivers this is how I recommend the driver installation to be tested
1. Do not plug the target ( kkboard ) into the usbasp. plug the usbasp into the computer. Run a firmware read ( or flash ) command. Of course it will fail because the target isnt even hooked up. How did it fail ?
A. 'Device not found' error means the drivers arent installed . Install drivers.
B. 'Target not found' means that the drivers are good and you should proceed to the next step
2. In order for the target not to pull the usbasp device down ( this sometimes happens on targets that have a backlight LCD), Plug the target (kkboard) into the usbasp, THEN plug the usbasp into the computer.
3 run firmware read ( or flash ) command.
If you post back with more questions or concerns, include the command line portion of the error . it should say something like:
/blah/blah/blah/avrdude -C /blah/blah/avrdude.conf -c usbasp -p blah -U blah ... etc etc