Hallo,

Ik ben aan het proberen om een bootloader te programmeren op een pic18F2550.

Het programmeren op zich lukt perfect, maar als ik de pic eenmaal aansluit op de pc via usb, dan krijg ik altijd "unknown device". Als ik dan kijk naar de VID en PID dan zijn deze gewoonweg 0000. (pic starten in bootload natuurlijk, er staat nog geen user prog op dus anders doet ie gewoonweg niets)

Ik heb de code al nagekeken en daar staat het zoals het zou moeten zijn (PID=000b en VID=04D8).
Verder heb ik ook al op internet gekeken en wel nog een paar andere mensen gevonden met dit probleem, maar nog nergens geen werkende oplossing.

Ik gebruik de standaard bootloader van de microchip mchpfsusb V2.3 met volgend schema: http://uterror.dommel.be/project.png
Ik heb deze wel een klein beetje aangepast oa voor met de 18f2550 te kunnen werken (ipv de 18f4550) en om de status leds uit te schakelen, aangezien al mijn IO's bezet zijn.

Heeft iemand toevallig een idee wat er fout kan zijn en hoe ik het kan oplossen? Ik begin er zo langzaam aan een beetje zot van te worden!

De source code van de bootloader: http://uterror.dommel.be/bootloader.rar
en de settings: http://uterror.dommel.be/settings.png

Alvast bedankt!

op een 4550 heb ik ook de usb-bootloader staan, die knippert met bepaalde ledjes afhankelijk van de toestand waarin hij zit, heb zo ook al ooit kunnen achterhalen wanneer het mis ging... (op een olimex usb-devboard) De bootloader is daar op de site ook te downloaden: http://www.olimex.com/dev/ en dan PIC-USB-STK kiezen. (uiteindelijk wil ik ook met de 2550 gaan werken...)

VID en PID moeten juist zijn als je ze uitleest, anders zal je nergens geraken vrees ik.

Ik heb onlangs een simpele usb interface gemaakt op basis van 'n 18F2550. Met 22pF condensatoren aan het kristal werkte alles behalve de usb connectie. Die heb ik toen vervangen door 15pF (ik was ten einde raad en dat was het enige verschil tussen die schakeling en m'n experimenteerbord waar ik alle code op had getest. Hoewel ik moeilijk kon geloven dat die paar pico iets uitmaakte, zeker omdat de 22pF voor mij altijd perfect werkte met een 20Mhz kristal en een 16F877A). En daarmee was het toen opgelost.

Met die 22pF condensatoren werd er bij mij wel helemaal geen usb device gevonden, in het "beste" geval kreeg ik een foutmelding.

Heb het eindelijk gevonden!

Eerst alle cap's vervangen, maar dat wou nog niet werken.
Daarna die 22pF vervangen door 15pF, maar ook dat was niet genoeg.

Uiteindelijk elk ander ding op de pcb vervangen en nadat ik de usb connector vervangen had was het opgelost!

Stom dat zo een onnozel onderdeeltje alles kan verpesten :-)

Bootloader is nu up-and-running, user software staat erop, maar werkt nog niet volledig.

Ben hier ook met de pic18f2550 aan het rommelen, de bootloader is geladen en windows ziet een onbekend apparaat.
Wanneer ik echter de driver probeer te installeren zegt windows dat er op de opgegeven locatie geen gegevens staan over de hardware.

Ik maak gebruik van mchpcdc driver (een inf-bestand en een .cat-bestand).

Ik zie wel de de vid op 0000 staat, net als de PID (ook op 0000).

Verder kan ik helaas niet echt testen of de bootloader gestart is ofzo. Tijdens het programmeren van de pic met de bootloader is er geverifieerd zonder gekke problemen.

Sluit er minstens een ledje op aan, zodat je in ieder geval kunt zien of de bootloader inderdaad 'loopt'...

Heb je een schema ofzo iets van je ontwerp?
Heb je de "standaard" software van microchip gebruikt?

wat ik ook gedaan had is idd een ledje aansluiten aan een bepaalde pin, om te kijken of de chip wel in bootload modus gaat. Als dit niet het geval is dan zal windows het natuurlijk nooit herkennen.

[Bericht gewijzigd door UTerror op (50%)]

Zelfde schema als jij hebt. (maar dan zonder C4 en C5, vanwege C1)

En een ledje, klinkt leuk maar op welke poort?

[Bericht gewijzigd door Paul-online op (20%)]

En een ledje, klinkt leuk maar op welke poort?

Kan op iedere vrij beschikbare output pin?

jep, dat is waar, morgen maar weer eens de source in duiken.

maar weer een klein kickje, waar de **** kan je de mcc18 library vinden?

Hij zou geïnstalleerd moeten zijn met mplab, maar ik kan het nergens vinden. Op de microchip website is die library ook al niet te vinden (wat ik wel verwacht had), is dit soms een library waar je flink voor moet betalen ofzo?

Staat die niet in de map waar je C18 compiler geïnstalleerd is?
(ben nu niet thuis, kan nu dus niet nakijken)

C18 compiler?? die zit toch gewoon in mplab?

Edit (MPlab 8.2)

[Bericht gewijzigd door Paul-online op (19%)]

Geen idee, maar bij de 8.00 alvast niet, ik gebruik hierbij de (gratis downloadbare) studentenversie van de C18 compiler.

In de directory 'installfolder/mcc18' staat in elk geval een map lib. :D

ok, dan weet ik wat ik kan downloaden.

Dacht toch echt dat alles in mplab zat.

Gevonden en het werkt (ik kan compileren).
Helaas zal ik nu dus moeten duiken in de files om te kijken waarom mijn ledje niet aan wilt.
(kan ook aan mijn "code" liggen)

Ok, ik heb even gek gedaan en de code van UTerror gepakt..

En het werkt, na het een en ander installeren werkt de eerste pic. Maar nu het gekke, ik doe exact hetzelfde (denk ik) maar na programmeren van de bootloader en het installeren van de pic driver geeft windows het volgende aan:
"Dit apparaat start niet. (Code 10)"

Er staat nu ook zo'n vraagteken met een uitroepteken erover :S.

Ik doe iets fout, maar wat.

Mijn stappenplan tot nu toe:
programmeren pic met bootloader code
bootloader pin (sw2) ingedrukt houden en dan reset.
Windows ziet vervolgens dat het een pic18f4550 is (is het wel niet, maar met de eerste ging dat wel goed).
Na installeren driver geeft windows dus die error.

PICDEM FS USB Demo Tool kan de pic dus ook niet vinden helaas, wat bij de eerste wel zo was.

[Bericht gewijzigd door Paul-online op (61%)]