TODOPIC

Lenguajes de programación para PC => Visual Basic => Mensaje iniciado por: PalitroqueZ en 16 de Enero de 2008, 13:17:55

Título: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 16 de Enero de 2008, 13:17:55
Nota:
los driver generados por este programa han sido probados exitosamente en winxp/7 32 bits, y no han sido probados en win/64 bits





los link de descarga (por si está caido el server de mi página):

Código: [Seleccionar]
http://www.mediafire.com/file/a3d703gpy7ulwd3/v3.1-INF_Enumeration_uC_PIC-USB.zip
Código: [Seleccionar]
http://www.4shared.com/file/250702123/af0227ce/v31-INF_Enumeration_uC_PIC-USB.html
MD5: 3D4EC240D2E92B44E16CBAA5821B830E





Descripción:

Automatización de datos Enumeración USB es un programita que pemite introducir datos como Nombre, VID, PID, Fabricante, Descripción para configurar el instalador que necesita el windows cuando conectamos a la primera vez

(http://www.todopic.com.ar/foros/index.php?action=dlattach;topic=20047.0;attach=5889)

dichos datos se muestran al momento de instalación y cuando accedemos al administrador de dispositivos.

he aquí un video (http://www.4shared.com/file/35015377/5490ce8e/auto_enum_pic_usb.html) que explica en detalle (bajar este (http://download.techsmith.com/tscc/tscc.exe) codec para observarlo)

El adjunto con el Código Fuente para el quiera añadirle mejoras:



la actualización mas reciente la puedes bajar en este post:

http://www.todopic.com.ar/foros/index.php?topic=20047.msg189418#msg189418


Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: jfh900 en 16 de Enero de 2008, 14:28:32
Fantástico, no sabes la cantidad de trabajo que nos quitas.

Gracias por el programa.

Un saludo
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: Nocturno en 16 de Enero de 2008, 14:30:15
Muchas gracias, Pedro. Es muy interesante.
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: J1M en 16 de Enero de 2008, 14:33:46
wowwwwwww!!! Gracias Pedro!! :) vivan los programitas para hacer la vida más fácil! jejeje pq mira que me gusta poco, cada vez que tengo que hacer un driver nuevo, ponerme a modificar los campos. Al final siempre se olvida alguno y se pierde media hora buscando el fallo de la placa! ejejeje

Gracias nuevamente! :)

Un saludo!
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: pocher en 16 de Enero de 2008, 14:58:09
Muchas gracias Pedro por toda la info que has dejado en el FORO sobre USB.

En esta semana si no pasa nada me meto con el USB ... subiendo peldaños poco a poco.

Aprovecho también para agradecer a J1M y a RedPic todas las explicaciones, ejemplos y enlaces relativos al USB ... con vosotros la vida es más sencilla.

Gracias.
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 16 de Enero de 2008, 20:40:55
jeje las gracias se las tengo que dar a jaime ya que me guié por ahí.

Por cierto me quedé con las ganas de añadir los iconos personalizados, si logro entender como funcionan los instaladores en la WDK, entonces habrá una versión 2.








Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 21 de Enero de 2008, 12:22:57
Añadí unas secciones al INF para darle un ícono nuevo al device y ¡¡nada!!  no lo consigo.

hice tal cual como sale en el artículo: [1] Personalized Icons for Devices on Windows XP (http://www.microsoft.com/whdc/driver/install/devicons.mspx#EBAA)  y si se copian las entradas en el registro, y al system (en el ejemplo lo copié junto con mchpusb.sys), después, simplemente no carga el condenao ícono.  :x


Código: C
  1. ; Installation file for mchpusb driver
  2. ; Copyright (C) 2004 by Microchip Technology, Inc.
  3. ; All rights reserved
  4.  
  5. [Version]
  6. Signature=$CHICAGO$
  7. Class=%ClassName%
  8. ClassGuid={4D36E9AE-E325-11CE-BFC1-08002BE10318}
  9. Provider=%ONEYSOFT%
  10. CatalogFile=mchpusb.cat
  11. DriverVer=11/19/2004
  12.  
  13. [Manufacturer]
  14. %MFGNAME%=DeviceList
  15.  
  16. [DestinationDirs]
  17. DefaultDestDir=10,System32\Drivers
  18.  
  19. [SourceDisksFiles]
  20. mchpusb.sys=1
  21. wdmstub.sys=1
  22. perro.ico=1
  23.  
  24. [SourceDisksNames]
  25. 1=%INSTDISK%,,,
  26.  
  27. [DeviceList]
  28. %DESCRIPTION%=DriverInstall,USB\VID_08A8&PID_A811
  29.  
  30. [ClassInstall32]
  31. Addreg=PicUSBClassReg
  32.  
  33. [PicUSBClassReg]
  34. HKR,,,0,%ClassDesc%
  35. HKR,,Class,,%ClassName%
  36.  
  37. [DDInstall.NT.HW]
  38. AddReg=IconInformation
  39.  
  40. [IconInformation]
  41. HKR,,Icons,0x10000,"perro.ico"
  42.  
  43. ;------------------------------------------------------------------------------
  44. ;  Windows 2000/XP Sections
  45. ;------------------------------------------------------------------------------
  46.  
  47. [DriverInstall.ntx86]
  48. CopyFiles=DriverCopyFiles
  49.  
  50. [DriverCopyFiles]
  51. mchpusb.sys,,,2
  52. perro.ico,,,2
  53.  
  54. [DriverInstall.ntx86.Services]
  55. AddService=MCHPUSB,2,DriverService
  56.  
  57. [DriverService]
  58. ServiceType=1
  59. StartType=3
  60. ErrorControl=1
  61. ServiceBinary=%10%\system32\drivers\mchpusb.sys
  62. AddReg=TraceFlags
  63.  
  64. ;------------------------------------------------------------------------------
  65. ;  Windows 98/Me Sections
  66. ;------------------------------------------------------------------------------
  67.  
  68. [DriverInstall]
  69. AddReg=DriverAddReg
  70. CopyFiles=DriverCopyFiles,StubCopyFiles
  71. DriverVer=01/01/2003            ; TODO replace with real info
  72.  
  73. [DriverAddReg]
  74. HKR,,DevLoader,,*ntkern
  75. HKR,,NTMPDriver,,"wdmstub.sys,mchpusb.sys"
  76.  
  77. [StubCopyFiles]
  78. wdmstub.sys,,,2
  79.  
  80. ;------------------------------------------------------------------------------
  81. ;  String Definitions
  82. ;------------------------------------------------------------------------------
  83.  
  84. [Strings]
  85. ONEYSOFT="Walter Oney Software"
  86. MFGNAME="Microchip Technology, Inc."
  87. INSTDISK="Microchip Technology, Inc. Installation Disc"
  88. DESCRIPTION="PIC18F4550 Family Device"
  89. ClassName="PicUSB Sample Device"
  90. ClassDesc="PicUSB Device"
  91.  
  92.  

por lo menos averigué que al definir una ClassGuid individual se crea un grupo de device aparte en administrador de dispositivos.

Definitivamente ese artículo [1] está muuuy corto y no da mayores explicaciones  :evil:





Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: J1M en 21 de Enero de 2008, 12:29:31
Pedro creo recordar que cuando empecé a pelearme con el tema de los iconos también pasé por ese tutorial, lo dejé por imposible... lo que acabo de leer y que en su tiempo no hice, es el tema de las características que debe cumplir el icono, mira lee este apartado: "Creating Icons Based on Windows XP Design Guidelines". Si no para empezar, con un editor de 'resources' extrae el icono por ejemplo a la calculadora o el paint e intenta utilizarlo como icono, si ese icono se inserta, entonces el problema solo estará en crear un icono apto.... sino se puede tampoco con eso..... siempre quedará la famosa DLL....... :p

saludines!!
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 21 de Enero de 2008, 12:37:29
voy hacer un segundo intento en base a lo que me dices.

Lo de las dll ya la vi, según entiendo hay que crear una dll nueva cada vez que se cambia el ícono, por cierto compilé el fuente de tu classinstall y la ddk crea unos archivos .obj y .lib

¿es necesario el visual C para crear la .dll?



Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: J1M en 21 de Enero de 2008, 12:42:27
Efectivamente, en el caso de que desees cambiar el icono, necesitas volver a compilar los archivos fuente para generar la dll. Respecto a los archivos generados, yo solo le doy uso a la .dll en cuestión, los demás se pueden eliminar tranquilamente.

No es necesario el VisualC, tan solo la DDK de marras! lleva su propio entorno de compilación. Además no es posible hacerlo con el Visual, o al menos que yo sepa ;)

saludinesss
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 25 de Enero de 2008, 15:11:32
Segundo intento fallido  :8}

Ese win no le gusta nada que tenga que ver con iconos directos, probé las formas usando el Autoplay, accesando a las ramas device group y el device class, incluso en Device Parameters tal como lo explica la ayuda del DDK.

después hice unas pruebas locas y cree una clave en la misma rama del classguid :

Icon[REG_SZ]="-1"

¡¡y me aceptó el ícono!!  :shock:

naa. pero no me sirve porque es del sistema (pertenece al driver del video)

mi intención es que el usuario pueda escoger libremente el ícono de su elección sin instalaciones , ni complicaciones. Totalmente portable.

Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: J1M en 25 de Enero de 2008, 15:20:20
Ya Pedro, en su día también lo descarte por imposible, y efectivamente lo único que conseguía era colocarlo mediante el "-1", pero como bien dices son los del sistema. Supongo que en este intento has hecho lo que te dije, usease, coger un icono de windows que ya tenga algún programa para ir sobre seguro... Suerte con ello!! ;)
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 25 de Enero de 2008, 15:27:35
... Supongo que en este intento has hecho lo que te dije, usease, coger un icono de windows que ya tenga algún programa para ir sobre seguro... Suerte con ello!! ;)

sip probé eso también, y además extrayendo un ícono de una dll del sistema:

..\shell32.dll,5

voy hacer un tercer intento.



Jaime, una preguntonta, ¿en la DDK como compilas la picusbci.dll?

me fuí al command que genera la ddk ( en mi caso free para winxp) y solamente genera .exp y .obj después salta un error diciendo que no pudo crear la .lib
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: J1M en 25 de Enero de 2008, 15:41:05
que error te da? debe haber algo mal en el código de la DLL, pq si te genera esos archivos esq estás compilando bien. Por cierto, hay que cuidar que el nombre no tenga más de 8 caracteres, eso me volvió loco!

saludos!
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: Cryn en 26 de Enero de 2008, 02:10:08
muy buen trabajo Pali!!

el programa esta de las mil maravillas! :mrgreen:

muchas gracias :-/ :-/
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 28 de Enero de 2008, 19:06:45
Hola

J1M ¡¡LOGRÉ INSERTAR UN ÍCONO EN EL ADMIN. DISPOSITIVOS!!   :-/ :-/ :-/

en picusb.inf, la línea:

HKR,,Installer32,,"picusbci.dll,PicUSBClassInstaller"

lo que hace es crear una clave:

Installer32[REG_SZ]="picusbci.dll,PicUSBClassInstaller"

en el regedit cambié el string por:

Installer32[REG_SZ]="mi_icono.ico"

(debes copiar mi_icono.ico en system32)

al insertar el device, inmediatamente toma el ícono :)

ahora probaré modificando en el inf a ver si me la acepta.


PD: gracias Cryn
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: J1M en 30 de Enero de 2008, 20:48:40
Hola Pedro,

Si, el panel de control accede al registro para 'tomar o saber donde tomar' el icono. La clave esa que modificas es creada por la DLL... o bueno, mejor dicho, mediante el .INF, el problema a priori es el mismo. Quizá una forma de solventarlo y de una vez por todas librarnos de la DLL sería incluir algo en el .inf ó crear un .reg que añada esa misma información al registro y sea tomado en cuenta por el panel de control.

Has probado a utilizar un icono por defecto, es decir, utilizar el driver 'sin modificar' de microchip y modificar posteriormente el registro??? en ese caso, se cambia también el icono??? Si respondes afirmativamente a las dos. El problema de la DLL se resuelve instalando el .inf 'sin modificar' y ejecutando un .reg que modifique la clave del registro correspondiente al icono 'por defecto' para poner un .ico propio.


saludos!
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 31 de Enero de 2008, 19:29:23
Has probado a utilizar un icono por defecto, es decir, utilizar el driver 'sin modificar' de microchip y modificar posteriormente el registro??? en ese caso, se cambia también el icono??? Si respondes afirmativamente a las dos. El problema de la DLL se resuelve instalando el .inf 'sin modificar' y ejecutando un .reg que modifique la clave del registro correspondiente al icono 'por defecto' para poner un .ico propio.


saludos!

sip. de hecho asi es que funciona, instalo normalmente (creando una clase aparte) y luego me voy al regedit y hago el cambio.

Hola Pedro,

Si, el panel de control accede al registro para 'tomar o saber donde tomar' el icono. La clave esa que modificas es creada por la DLL... o bueno, mejor dicho, mediante el .INF, el problema a priori es el mismo. Quizá una forma de solventarlo y de una vez por todas librarnos de la DLL sería incluir algo en el .inf ó crear un .reg que añada esa misma información al registro y sea tomado en cuenta por el panel de control.


nop del todo (funciona a medias). Estuve probando metiendo la línea:

HKR,,Installer32,,"mi_icono.ico"

y me lanza un error y no culmina la la instalación, aunque se puede apreciar el ícono insertado en la ventana del error.

voy a probar si puedo hacer la instalación normal y luego modificar esa línea en el registro, asi como tu dices, hay unas "llamadas" o directivas dentro del ADDREG que permiten actualizar ó modificar  una línea creada, probaré con esas.

ya falta poco para que le ganemos Jaime  :mrgreen:



Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 01 de Febrero de 2008, 14:29:06
Buenas noticias. Creo que lo conseguí, les echo el cuento:

probé usando la entrada EnumPropPages32que según la ayuda del DDK, funciona similar a installer32

quedó así;

HKR,,EnumPropPages32,,"perro7.ico,0"

y felizmente el win no se quejó, se lo tragó con gusto, eso si, el ícono debe copiarse a ...\system32 entonces modificando una cuantas lineas en inf quedó asi:



; Installation file for mchpusb driver
; Copyright (C) 2004 by Microchip Technology, Inc.
; All rights reserved

[Version]
Signature=$CHICAGO$
Class=%ClassName%
ClassGuid={4D36E9AE-E325-11CE-BFC1-08002BE10318}
Provider=%ONEYSOFT%
CatalogFile=mchpusb.cat
DriverVer=11/19/2004

[Manufacturer]
%MFGNAME%=DeviceList

[DestinationDirs]
DefaultDestDir=10,System32\Drivers
icono_device=11 ; system32

[SourceDisksFiles]
mchpusb.sys=1
wdmstub.sys=1
perro7.ico=1

[SourceDisksNames]
1=%INSTDISK%,,,

[DeviceList]
%DESCRIPTION%=DriverInstall,USB\VID_08A8&PID_A811

[ClassInstall32]
Addreg=mchpusbClassReg

[mchpusbClassReg]
HKR,,,0,%ClassDesc%
HKR,,Class,,%ClassName%
HKR,,EnumPropPages32,,"perro7.ico,0"

;------------------------------------------------------------------------------
;  Windows 2000/XP Sections
;------------------------------------------------------------------------------

[DriverInstall.ntx86]
CopyFiles=DriverCopyFiles,icono_device

[DriverCopyFiles]
mchpusb.sys,,,2

[icono_device]
perro7.ico,,,2


[DriverInstall.ntx86.Services]
AddService=MCHPUSB,2,DriverService

[DriverService]
ServiceType=1
StartType=3
ErrorControl=1
ServiceBinary=%10%\system32\drivers\mchpusb.sys
AddReg=TraceFlags

;------------------------------------------------------------------------------
;  Windows 98/Me Sections
;------------------------------------------------------------------------------

[DriverInstall]
AddReg=DriverAddReg
CopyFiles=DriverCopyFiles,StubCopyFiles,icono_device
DriverVer=01/01/2003      ; TODO replace with real info

[DriverAddReg]
HKR,,DevLoader,,*ntkern
HKR,,NTMPDriver,,"wdmstub.sys,mchpusb.sys"

[StubCopyFiles]
wdmstub.sys,,,2

;------------------------------------------------------------------------------
;  String Definitions
;------------------------------------------------------------------------------

[Strings]
ONEYSOFT="Walter Oney Software"
MFGNAME="Microchip Technology, Inc."
INSTDISK="Microchip Technology, Inc. Installation Disc"
DESCRIPTION="PIC18F4550 Family Device"
ClassName="PicUSB Sample Device"
ClassDesc="PicUSB Device"



unas imagenes:

(http://www.todopic.com.ar/foros/index.php?action=dlattach;topic=20047.0;attach=6035)

(http://www.todopic.com.ar/foros/index.php?action=dlattach;topic=20047.0;attach=6037)

en el regedit debe verse asi en la rama principal del classguid

(http://www.todopic.com.ar/foros/index.php?action=dlattach;topic=20047.0;attach=6039)


un video (http://www.4shared.com/file/36592990/95620b23/funciona_icono.html) aficionado (si no lo puedes ver, bajar el codec (http://download.techsmith.com/tscc/tscc.exe))

notas:
- probado con un 18F4550 REAL montado en protoboard.

- si el driver está instalado (otro VID_PID de la misma clase) el ícono aparece a lo largo de la instalación

- ahora sigo haciendo unos ensayos para estar seguro y retoco el programa.



bajar el adjunto con la simulación en ISIS.

Si es tan amable alguien de probar este ejemplo en el windows vista y reporte por acá si le funcionó, please sería de mucha ayuda :)

Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: J1M en 01 de Febrero de 2008, 15:33:04
jjejejej OLE AHI!!! si está claro, quien la sigue la consigue....... adios al incordio de la DDK!! bravooooo!!!! :):):) A ver si vuelvo a poner en orden mi caos de PC dspués de la muerte súbita de 2HDs y pongo el Vista64 otra vez y compruebo como va este lujo!!

Enhorabuena y gracias por compartirlo! :)
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: Cryn en 02 de Febrero de 2008, 02:37:05
gran logro Pali :-/ :-/ :-/
enhorabeuna y felicidades por conseguirlo :mrgreen: :mrgreen:

siempre nos son muy útiles tus trabajos, muchas gracias nuevamente :mrgreen:
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 06 de Febrero de 2008, 18:11:14
Gracias amigos  :P

Tengo una duda con el mchpusb.inf que usa el win para enumerar el nuevo dispositivo (llamese pic con módulo usb)

en la entrada Version siempre es el mismo GUID, independientemente del PID que se use

ClassGuid={4D36E97E-E325-11CE-BFC1-08002BE10318}

en cambio veo que el instalador que usa J1M (picusb.inf) es:

ClassGuid={4D36E911-E325-11CE-BFC1-08002BE10318}

¿existe algún patrón o fórmula para calcular el GUID a usar en estos drivers?, porque al fin y al cabo lo que se instala es mchpusb.sys que es el que usa el Win para acceder al usb


En la wikipedia sale la explicación del GUID (http://es.wikipedia.org/wiki/Globally_Unique_Identifier).  Existe una api que genera esos numeros. interesante, leí por ahí que al parecer existe un orden respecto a los 8 primeros digitos, estuve probando con una combinación generada "aleatoriamente" por la api y no tuve problemas. Otra opción que le añadiré a la versión 2. Voy por el 98% dentro de poco la subo. Quedó Carteluo  8)

Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 08 de Febrero de 2008, 12:26:10
¡¡la segunda versión recien salida del horno!!

(http://www.todopic.com.ar/foros/index.php?action=dlattach;topic=20047.0;attach=6106)

Ensayé, con un pic 18f4550 real y con windows 2000 SP4 y windows XP SP2 la parte de mpusbapi.dll con resultados satisfactorios.

para redundar un poco, el historial de cambios:


Historial:

 v2.0 01-feb-08

 - añadida nuevas opciones:
   - Crear una clase aparte solo para el dispositivo.
   - incluir un ícono a esa clase creada.
   - mejor estructuración de código fuente.
   - al cerrar el programa se guardan los datos de todos los campos.
   - al abrir el programa se cargan los datos de todos los campos, guardados
     con anterioridad.

 ---------------------------------------------------------------------------
 v1.0 versión inicial 09-ene-08

 
Una breve explicación:

existe un botón de opciones avanzadas, donde tenemos mas cosas por configurar. por ejemplo el clasguid, es posible crear uno nuevo, de manera de tener multitud de clases de device en el mismo ordenador, cada uno con su ícono elegido.

el classdesc es lo que aparecerá en el administrador de dispositivo cuando se conecté el device

el dato por defecto son los datos que incluye el programa como cuando lo probamos la primera vez, a la vez que sirve de plantilla si la ponemos metiendo datos erroneos.

cuando cerramos el programa se guardan todos los datos introducidos en un archivo llamado enum_picusb.ini, incluyendo el ícono, de manera que al abrir la próxima vez se cargaran dichos datos

xxxxxxx


Nota importante:

ya salió una nueva actualización del MCHPUSB Driver el cual modifica unas lineas del inf y los .sys para adecuarse al Win vista/vista64

Este programa trabaja sobre la versión anterior v1.00.005 y ha sido probado bajo Win2K y WinXP



Como siempre les ruego que me notifiquen los errores que encuentren, pasé varios dias depurando detalles (ahora entiendo lo que siente tratar de encontrar fallos en programas largos) y ya no le ví ninguno, puedo estar equivocado porque una sola persona no encuentra todos los detalles.
 
En fin ahí una herramienta mas que sirve para nuestros proyectos, además que tienen el código fuente y de allí pueden mirar como se trabaja en Basic.
 
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: J1M en 08 de Febrero de 2008, 12:34:03
Gracias por compartir tú tiempo y este pedazo programa con todo el foro!! Realmente es una genialidad!! Ganas tengo de verlo preparado para el nuevo driver ;)

un saludo y nuevamente... GRACIAS!
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: Cryn en 10 de Febrero de 2008, 21:54:22
 :shock: perfecto

Ole, como dice Nocturno, grande Pali :-/ :-/ :-/
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: jeremylf en 12 de Febrero de 2008, 22:39:18
Que gran programa Palitroquez! Esto te facilita la vida en un monton!  :D 

Yo me baje la DDK que uso J1M para la DLL que exporta el icono de la clase pero no pude compilar. Y esto me servira de maravilla! Muchas gracias  :-/

Citar
Este programa trabaja sobre la versión anterior v1.00.005 y ha sido probado bajo Win2K y WinXP
Lo has probado en la ultima version? Es la que tengo ahora. Espero no haya errores.


saludos!
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 13 de Febrero de 2008, 13:20:13
...
Citar
Este programa trabaja sobre la versión anterior v1.00.005 y ha sido probado bajo Win2K y WinXP
Lo has probado en la ultima version? Es la que tengo ahora. Espero no haya errores.
...

nop, en lo que terminé la versión 2, me enteré que microchip sacó una actualización  :?.

supongo que no debería haber problema alguno con el nuevo mchpusb.sys, porque el mchpusb.inf en escencia cambia las lineas para el driver que usará el vista 32/64

de todas maneras en cuanto tenga un chance veré si hago una revisión del programita.

Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: jeremylf en 25 de Marzo de 2008, 01:47:58
Hola. Por no tener problemas me quedo con la version anterior. Por ahora que aun estoy testeando todo  :mrgreen:

Queria preguntarte... ¿Que es esa opcion de Ubicacion? Viendo las propiedades desde el admi. de dispositivos sale una descripcion del dispositivo diciendo "Ubicacion 0:", y entre parentesis el nombre del dispositivo, el especificado en el pic. Ocea, con el ejemplo J1M, sale esto:

Ubicacion: Ubicacion 0 (J1M PicUSB)

Con esa opcion en tu programa cambio eso de "ubicacion 0"??, en que afecta??,...

Gracias.
Un saludo.
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 25 de Marzo de 2008, 12:20:56
no, no afecta en nada, solo sirve para darle una identificación personalizada.

en el programa, se cambia exactamente donde dice "Ubicación:"  :mrgreen:


Es una pena no publicar la nueva versión, la tengo 99% lista, el uno por ciento restante son los ensayos que tengo que hacer para ver si funciona, pero es un hecho que lo subiré en lo que esté listo.

La diferencia que noto de la nueva versión respecto a la vieja, es el uso con los procesadores 64 bits


Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: jeremylf en 25 de Marzo de 2008, 20:48:19
Eso de ubicacion es esos 0000 que aparece siempre? Asi se identifican cada dispositivo de una misma GUID? Y si se repite esa misma ubicacion?  :shock:
Ah, y si cambio eso de ubicacion, nada pasa en el .inf. Es acaso interno o algo parecido? Porque en el .inf no sale nisiquiera el nombre default que le pones (YO PICUSB)

Porcierto, en el .inf que se crea, en String Definitions... INSTDISK="Microchip Technology, Inc. Installation Disc". Este dato no es modificable, porque? que hace?

Disculpa tantas preguntas  :lol:
Gracias nuevamente por compartir tan grandioso programa!

Un saludete!  :-/
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 26 de Marzo de 2008, 15:27:11
pufff, la verdad no me había fijado que el textbox ubicacion realmente no hace nada, porque cuando uno mira en el admin. dispositivos allí lo que aparece es ubicación (n) "Nombre del dispositivo"

"nombre del dispositivo" forma parte de la segunda cadena de los descriptores y aparece durante la instalación y es lo que identifica al dispositivo aún cuando el S.O. no lo conozca.

así que es un textbox que si bien no daña nada, mas bien estorba y consume recursos de RAM  :mrgreen:. Gracias por la observación, no se porque lo puse   :z)

Citar
...
porcierto, en el .inf que se crea, en String Definitions... INSTDISK="Microchip Technology, Inc. Installation Disc". Este dato no es modificable, porque? que hace?
...

Forma parte de la sección [SourceDisksNames] o paquete de instalación por discos,  cuando se usaban diskettes o si los archivos de instalación son tan grandes que hay que dividirlo en pedazos para grabarlo en los medios de almacenamiento (cd/dvd, etc)

En la MSDN sale la explicación completa:

http://msdn2.microsoft.com/en-us/library/ms794354.aspx

Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: RALF2 en 26 de Marzo de 2008, 15:52:38
Muuchas gracias palitroquez!  :-/ :-/

Todo un genio  :mrgreen:
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: jeremylf en 26 de Marzo de 2008, 23:46:49
Jaja seria para integrarlo en la siguiente version :mrgreen:

Citar
Forma parte de la sección [SourceDisksNames] o paquete de instalación por discos,  cuando se usaban diskettes o si los archivos de instalación son tan grandes que hay que dividirlo en pedazos para grabarlo en los medios de almacenamiento (cd/dvd, etc)
Si, gracias por la info. Pero en Automatizacion de Datos Enumeracion USB no es posible modificar este valor a menos que sea "a mano" verdad? Solo quiero aclararme eso  :lol:

Un saludo.
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 29 de Marzo de 2008, 13:53:17
si claro, es posible, umm se podría añadir en opciones avanzadas


Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: umalrovi en 10 de Abril de 2008, 11:13:45
Palitroquez buen trabajo. Te felicito.
Un saludo.
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: Slalen en 15 de Abril de 2008, 18:58:02
Pedro tio, eres increible.....
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: Slalen en 09 de Junio de 2008, 18:17:39
Buenas!!

Pedro, ya no está tu enlace...

Quería tu programa para ver si podia hacer los drivers para que windows me reconozca una cnc como impresora.

Las especificaciones están aqui (http://www.usb.org/developers/devclass_docs/usbprint11.pdf)

Y como no tengo ni idea de hacer divers....

Intente bajarme unos de una impresora y compiar la clase, subclase, ect y na...
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: Cryn en 11 de Octubre de 2008, 11:55:56
Hola pali, desde la vez que vi por primera vez tu hilo supe que me iba ser de mucha utilidad, y pues así ha sido, he tenido un buen resultado creando los dos archivos el .c y el .inf, ademas de agregarle un icono, y me fue más o menos. Pasa que la creación y reconocimiento del micro la hice bien creo, hasta pude ver mi icono asignado.

El probelma que tengo es en la asignaciónn del driver creo, o nose que más debo hacer, pues pasa que antes probe un programa que hice con el driver que dejo J1M, y el programa funciono mbien, logré recibir datos desde USB, pero despues cuando me cree el .c y el .inf con tu programa y el icono y todo, con el driver que tb dejaste la comunicacion que antes funcionaba ya no me dio resultado, pues no se podía establecer el enlace entre el programa de la PC y el micro para que se transmitan los datos.

pasa despues que use los descriptores con tu programa y el driver de J1M y nada, seguía igual, solo qeuire funcionar ocn los descriptores de J1M y sus drivers. porque con los mios creados y el driver que tb dejaste no quiere dar, y tampoco combinaciones :(

que me sugieres Pali? o es que he hecho algo mal?? o em falta hacer algo?

un saludo, y muchas gracias pr la ayuda.
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 11 de Octubre de 2008, 18:45:32
Hola Cryn

Mira si ya tienes unos drivers instalado con una misma configuración, al instalar otro con la misma configuración, no se, no creo que sea buena idea. Las veces que lo he hecho, era borrando el driver anterior.

Con el deepfreeze activado podía instalar un nuevo driver (VID, PID distinto) en cada reinicio del ordenador.

Mi hipótesis: debería funcionar así, pero recuerda que si estas usando la misma rama y la misma clave para 2 configuraciones, podría haber un malentendido en el S.O. a la hora de asignar claves en el registro.


pd: Recuerda también que en el programa hay que elegir las dos formas del usb: BULK y CDC

Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: Modulay en 11 de Octubre de 2008, 19:23:16
Buenas!!

Pedro, ya no está tu enlace...

Quería tu programa para ver si podia hacer los drivers para que windows me reconozca una cnc como impresora.

Las especificaciones están aqui (http://www.usb.org/developers/devclass_docs/usbprint11.pdf)

Y como no tengo ni idea de hacer divers....

Intente bajarme unos de una impresora y compiar la clase, subclase, ect y na...

Quizá te interese más implementar un dispositivo plug&play.
Es cuestión de investigar qué forma deben tener los descriptores,cómo usar los endpoints y conocer el encapsulado de los datos

http://www.usb.org/developers/devclass_docs/usbprint11.pdf (http://www.usb.org/developers/devclass_docs/usbprint11.pdf)

EDITO: no me dí cuenta que tú pusiste un link al mismo pdf :D
Se supone que implementando un dispositivo que mantenga el contenido y la estructura de descriptores indicada en ese documento, no necesitarás drivers, al ser Class Compliant
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: Slalen en 13 de Octubre de 2008, 04:35:17
Hola Modulay,

Ya tengo hecha la impresora.

El problema de los pulg&play es que no se cómo envían los datos.

Pude hacer el driver con el mpusbapi.dll y su correspondiente driver.

Quería colgarlo en mi web y en el foro pero es que no tengo casi tiempo...

De todas formas quiero hacer más pruebas para ver cómo trata los datos.

Probé a mandar una página de prueba y que el pic encendiese unos leds y funciona muy bien.

Ahora hay que ver que datos me manda.
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: Cryn en 14 de Octubre de 2008, 13:32:15
Mira si ya tienes unos drivers instalado con una misma configuración, al instalar otro con la misma configuración, no se, no creo que sea buena idea. Las veces que lo he hecho, era borrando el driver anterior.

Con el deepfreeze activado podía instalar un nuevo driver (VID, PID distinto) en cada reinicio del ordenador.

Mi hipótesis: debería funcionar así, pero recuerda que si estas usando la misma rama y la misma clave para 2 configuraciones, podría haber un malentendido en el S.O. a la hora de asignar claves en el registro.

pd: Recuerda también que en el programa hay que elegir las dos formas del usb: BULK y CDC

Gracias  por la rspuesta Pali, Mira te cuento que me estuve fijando en el registro y tb en los descriptores lo que definió J1M y pues tiene un numero de VID y PID distinto a los que yo uso, si hace fata puedo adjuntar el driver que use y el nuevo, y tb así los descriptores que el usó y los qeu yo cree con tu programa, pero como te digo al menos los VID, PID y algunos otros numeros y datos son completamente distintos a los míos.

elegir BULK y CDC?? eso si esta raro para mi, creo que no lo hice, como debo hacerlo? usé algunos defines en mi codigo principal, y ahi si defini que iba ser BULK, pero... CDC :roll:, disculpa nose que es, me lo explicarías porfavor, porque si lei algo en el foro, pero... :oops:

muchas gracias por la auyda Pali, un saludo
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 15 de Octubre de 2008, 13:26:21
...
Con el deepfreeze activado podía instalar un nuevo driver (VID, PID distinto) en cada reinicio del ordenador.
...

me refería a que además tenía que programar de nuevo el uC PIC con el nuevo VID, PID (que era identico al nuevo driver )

lo de bulk y cdc,son las dos unicas opciones que trae el programa (arriba a la derecha seleccionas la DLL  o cdc)



Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: Cryn en 15 de Octubre de 2008, 13:38:35
Una vez creados los archivos .c y .inf con tu programa, el nuevo descriptor lo incluí en mi programa del uC y lo grabé nuevamente, entonce la pc me lo reconoció y me pidió que instale el controlador, así lo hice dándole el controlador que incluyes en tu programa (esta comprimido en una de las carpetas) y pues con todo ello la comunicción cayo, ya no se podía enviar nada, volvi al controlador antiguo (al que dejo J1M) y acá si dió como antes.

cuando use el uC con el descriptor que cree rapidamente me detectó como hardware nuevo, no hizo falta desinstalar el de J1M, además qeu me fije y tienen difernetes VID y PID
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 29 de Octubre de 2008, 17:57:46
Hola Amig@s

Por fin, terminé después de tantos meses dandole un ratico cada vez que podía jeje

Aquí está la versión 3 del programilla, entre otras cosas paso a continuación de las buenas nuevas:

- Lo escribí en Basic de AutoIT para aprender sobre ese entorno (además que no requiere de runtime alguno)

- Está basado en la última actualización hasta esta fecha del Microchip General Purpose USB Windows Driver. v1.1.0.0 June 23, 2008

Ojo me basé en la versión que dice la MCHPUSB Driver Release Notes.htm que viene en Microchip MCHPFSUSB v2.3 Installer.zip; es mas actual que la que viene en MCHPFSUSB_Setup_v1.3.exe

-  Añadida multitud de mejoras entre ellas, validaciones en los campos de textos, se puede intercambiar la interfaz del idioma Español <-> Inglés

- Hay un manual donde explica de manera visual, los pasos para realizar una instalación exitosa de los drivers.

Solamente lo he probado en windows XP (32Bits), faltan personas que lo prueben en xp/vista 64Bits

- Cualquier novedad que le encuentren, fallo, bugs, horrores, etc les ruego que me notifiquen para corregirlo en la brevedad posible.

Bueno espero que les sirva de utilidad. ¡Ahh! y como siempre siguiendo el espiritu de software libre, ahí les pongo el código fuente para el que quiera hacer modificacion o conocer un poco el autoIT.

xxxxxxx





Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: Cryn en 29 de Octubre de 2008, 18:18:36
me cae como anillo al dedo Pali, muchas gracias por el aporte! lo probaré en cuanto pueda

grande Pali! :-/ :-/

muchas gracias!!! :-/ :-/ :-/ :-/ :-/
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: puma_oro en 14 de Diciembre de 2008, 00:30:49
Hola, me da gusto que se hagan esta clase de programas ya que cada vez facilitan mas la elaboracion de los proyectos. Por otra parte quisiera comentar que he estado probando en xp el programa para automatizar la enumeracion y a pesar de que instala los driver correctamente no logro hacer que instale ningun icono y siempre aparece el signo de interrogacion alguien me podria explicar si hay que hacer algo mas para que instale el icono? Tambien queria preguntar como hacer para que no me instale automaticamente el driver cada vez que conecto un dispositivo ya que primero lo instale con el .inf que proporciona microchip, entonces lo desinstale desde el adminsitrador de dispositivos para probar con el .inf generado con el programa pero en cuanto conecto el micro instala el driver y pone el icono que trae por default el .inf de microchip.

Gracias de antemano y da gusto que haya gente interesada en compartir sus conocimientos.
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: puma_oro en 14 de Diciembre de 2008, 00:50:04
Estuve leyendo el foro y no copie el icono a system 32 yo creo por eso no lo instala. Lei el manual del programa y en ningun lugar dice eso, por lo que seria bueno que estuviera esa informacion en el manual. Solo es una recomendacion que espero no tomes a mal ya que solo es para mejorar el manual.

Gracias por este gran aporte.

De todos modos tengo la duda que les comente de la instalacion automatica con el .inf de microchip jee gracias.

Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 15 de Diciembre de 2008, 17:31:20
Hola

Estuve leyendo el foro y no copie el icono a system 32 yo creo por eso no lo instala.
...

exacto, pero el ícono debería copiarse solo al system (está configurado en la entrada del inf), si no se copia entonces te saldrá cualquier otro ícono.

es extraño que no se te haya copiado.

... Lei el manual del programa y en ningun lugar dice eso, por lo que seria bueno que estuviera esa informacion en el manual. Solo es una recomendacion que espero no tomes a mal ya que solo es para mejorar el manual.
...

ok no hay problema, sería parte de una especie de FAQ, ese manual lo hice muy apresurado y por supuesto que le hacen falta mas información.


Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 15 de Diciembre de 2008, 17:38:26
...Tambien queria preguntar como hacer para que no me instale automaticamente el driver cada vez que conecto un dispositivo ya que primero lo instale con el .inf que proporciona microchip, entonces lo desinstale desde el adminsitrador de dispositivos para probar con el .inf generado con el programa pero en cuanto conecto el micro instala el driver y pone el icono que trae por default el .inf de microchip.
...

la forma es desinstalar el driver anterior, yo lo he hecho manualmente, pero después descubrí un programita llamado USBDeview (gracias a Willyp) que lo hace automáticamente:

http://www.nirsoft.net/utils/usb_devices_view.html



Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: Slalen en 16 de Diciembre de 2008, 06:24:13
Gracias Pedro!!!

No se por qué me dejaron de salir las actualizaciones de este post y no me he enterado hasta ahora que ya tenías la última versión.

Ahora la pruebo!!!
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: jeremylf en 10 de Febrero de 2009, 03:02:09
Hola palitroquez.

No sabia de esta nueva version de tu programa, recien hoy me entero =D. Veras, por querer dar soporte a Vista, estuve modificando hace unas semanas por mi cuenta el .inf de la version 2.3 de la MCHPFSUSB (ayudandome del .inf que generaba tu programa en la version 2) y, recien hoy, comparando con la que genera tu programa (v3) y la que yo modifique, me doy cuenta que son iguales. Ahora, con lo que yo modifique y todo en vista 32 bits funciono correcto pero el problema fue el icono, no se muestra en el administrador asique podria decirse que falta "algo mas" para que, almenos el icono, con tu programa, aparesca en Vista. Es el unico problema, pero todo el funcionamiento y reconocimiento del driver y todo me funciona bien, el problema es el icono  :(

Porcierto, habia algo que si no eran iguales entre lo que genera tu programa y lo que cambie yo y es en la parte de Windows 64 bits, justo aqui:
Tu pones asi:
Código: [Seleccionar]
;------------------------------------------------------------------------------
;  Windows XP/Vista 64 Section
;------------------------------------------------------------------------------

[DriverInstall64]
CopyFiles=DriverCopyFiles64

Mientras que yo creo que te olvidaste de poner el copiado de icono, ocea yo lo tengo asi:
Código: [Seleccionar]
;------------------------------------------------------------------------------
;  Windows XP/Vista 64 Section
;------------------------------------------------------------------------------
[DriverInstall64]
CopyFiles=DriverCopyFiles64,icono_device ;;

Pero bueno, el problema es otro porque yo lo he probado (elmenos el mio) en windows vista premium 32 bits y el icono sige sin aparecer.

Te dejo como deje la modificacion que yo hice:
Código: [Seleccionar]
; Installation file for Microchip's Custom USB Driver
; Copyright (C) 2007 by Microchip Technology, Inc.
; All rights reserved

[Version]
Signature=$Windows NT$
Class=CustomUSBDevices
ClassGuid={a503e2d4-a032-49dc-b684-c99085dbfe92}  ;;
;ClassGuid={a503e2d3-a031-49dc-b684-c99085dbfe92}

Provider=%MFGNAME%
CatalogFile=%MFGFILENAME%.cat
DriverVer=01/21/2009,2.0.0.0

[Manufacturer]
%MFGNAME%=DeviceList,ntamd64

[DestinationDirs]
DefaultDestDir=12
icono_device=11 ; system32  ;;

[SourceDisksNames]
1=%INSTDISK%,,,

[ClassInstall32]
AddReg=ClassInstall_AddReg

[ClassInstall_AddReg]
HKR,,,,%DEVICEMANAGERCATEGORY%
;HKR,,Icon,,"-20"  ;
HKR,,EnumPropPages32,,"perro7.ico,0"  ;;


;------------------------------------------------------------------------------
;  Windows 2000/XP/Vista 32 Section
;------------------------------------------------------------------------------
[DriverInstall]
CopyFiles=DriverCopyFiles,icono_device ;;

[DriverCopyFiles]
%MFGFILENAME%.sys,,,2

[icono_device] ;;
perro7.ico,,,2 ;;

[DriverInstall.Services]
AddService=MCHPUSB,2,DriverService

[DriverService]
ServiceType=1
StartType=3
ErrorControl=1
ServiceBinary=%12%\%MFGFILENAME%.sys


;------------------------------------------------------------------------------
;  Windows XP/Vista 64 Section
;------------------------------------------------------------------------------
[DriverInstall64]
CopyFiles=DriverCopyFiles64,icono_device ;;

[DriverCopyFiles64]
%MFGFILENAME%64.sys,,,2

;[icono_device] ;;
;perro7.ico,,,2 ;;

[DriverInstall64.Services]
AddService=MCHPUSB,2,DriverService64

[DriverService64]
ServiceType=1
StartType=3
ErrorControl=1
ServiceBinary=%12%\%MFGFILENAME%64.sys


;------------------------------------------------------------------------------
;  Vendor and Product ID Definitions
;------------------------------------------------------------------------------
; When developing your custom USB device, the VID and PID used in the PC side
; application program and the firmware on the microcontroller must match.
; Modify the below line to use your VID and PID.  Use the format as shown below.
; Note: One INF file can be used for multiple devices with different VID and PIDs.
; For each supported device, append ",USB\VID_xxxx&PID_yyyy" to the end of the line.
;------------------------------------------------------------------------------
[DeviceList]
%DESCRIPTION%=DriverInstall, USB\VID_04D8&PID_0008
 
[DeviceList.ntamd64]
%DESCRIPTION%=DriverInstall64, USB\VID_04D8&PID_0008

;[DeviceList]
;%DESCRIPTION%=DriverInstall, USB\VID_04D8&PID_000B, USB\VID_04D8&PID_000C, USB\VID_04D8&PID_01F0 USB\VID_04D8&PID_01F1, ;USB\VID_04D8&PID_01F2, USB\VID_04D8&PID_01F3, USB\VID_04D8&PID_01F4, USB\VID_04D8&PID_01F5, USB\VID_04D8&PID_01F6
 
;[DeviceList.ntamd64]
;%DESCRIPTION%=DriverInstall64, USB\VID_04D8&PID_000B, USB\VID_04D8&PID_000C, USB\VID_04D8&PID_01F0 USB\VID_04D8&PID_01F1, ;USB\VID_04D8&PID_01F2, USB\VID_04D8&PID_01F3, USB\VID_04D8&PID_01F4, USB\VID_04D8&PID_01F5, USB\VID_04D8&PID_01F6


;------------------------------------------------------------------------------
;  String Definitions
;------------------------------------------------------------------------------
;Modify these strings to customize your device
;------------------------------------------------------------------------------
[Strings]
DEVICEMANAGERCATEGORY="Custom USB Devices"
MFGFILENAME="mchpusb"
MFGNAME="Microchip Technology, Inc."
INSTDISK="Microchip Technology, Inc. Installation Disc"
DESCRIPTION="Microchip Custom USB Device"


;------------------------------------------------------------------------------
;  Source Files
;------------------------------------------------------------------------------
;The source file name prefixes need to be the same name as the string MFGFILENAME
;above
;------------------------------------------------------------------------------
[SourceDisksFiles]
mchpusb.sys=1
mchpusb64.sys=1
perro7.ico=1 ;;

Ojala algun dia se pueda agregar icono al Vista  :mrgreen:

Un saludo.


PD: En esta version detu programa ya no sale el boton de OPCIONES AVANZADAS para cambiar el GUID y el icono verdad? porq? xP
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: migsantiago en 13 de Febrero de 2009, 21:46:58
Hola Pali

Te felicito por tan buen programa que hiciste. Acabo de usarlo y luego de pasar por varios problemitas de novato, eché a andar mi picusb con ayuda de J1M, Redpic y tu programita.

Gracias  :mrgreen:
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: migsantiago en 17 de Febrero de 2009, 19:05:08
Hola de nuevo

Pedro, tengo un problema. La primera vez que usé el pic18f2450 lo programé con un VID 04D8 y un PID 0011 y utilicé el ejemplo de J1M. Funcionó OK.

Luego compilé mi propio código con el mismo PID&VID y generé el inf y el scope.h con tu programa. Cuando instalo el driver para el pic le doy la dirección del .inf que crea tu programa.

El problema es que en el administrador de dispositivos el pic se muestra como PicUSB de J1M y no emplea los datos que ingresé en tu programa.

¿Qué puede estar faltando? Ya le di desinstalar driver y no se muestra correctamente.  :8}

Edito:

Ya usé el USBDeview y desinstalé el driver, pero al reinstalar sigue presentándose como J1M USB  :(

(http://img89.imageshack.us/img89/6263/dibujobi2.jpg)
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: Slalen en 18 de Febrero de 2009, 06:03:09
Prueba a conectarlo a otro puerto USB. Normalmente, al conectar en los distintos USBs te instala drivers nuevos y no tiene en cuenta los ya instalados.

Otra forma es desinstalar el driver y luego ejecutar el regedit. Buscas el pid y borras los restos del driver.
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: migsantiago en 18 de Febrero de 2009, 14:58:17
Hola Slalen

Lo desinstalé y conecté en otro puerto USB y no funcionó. Luego busqué PicUSB en el registro de windows y borré todas sus apariciones. Incluso hubo unas llaves que estaban protegidas, le cambié los permisos y las borré. Aún así al conectarlo se reporta como PicUSB y pide un archivo picusbci.dll que es el class installer de J1M.  :(

Voy a probar compilarlo con un PID diferente y generar los drivers de nuevo con el programa de Pedro.

Edito:

No he programado con un nuevo pid, pero conecté el pic a un usb virtualizado de Virtual box en un windows xp fresco (recién instalado) y funcionó a la perfección.

Seguiré reportando.  :mrgreen:
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 23 de Febrero de 2009, 16:10:28
Saludos jeremy y ante todo gracias a los que probaron esta nueva versión

...y todo en vista 32 bits funciono correcto pero el problema fue el icono, no se muestra en el administrador asique podria decirse que falta "algo mas" para que, almenos el icono, con tu programa, aparesca en Vista. Es el unico problema, pero todo el funcionamiento y reconocimiento del driver y todo me funciona bien, el problema es el icono  :(
...

es bueno que lo mencionas, entonces hay que buscar un método para hacer mostrar el ícono en vista, lamentablemente (o debería decir por fortuna) no tengo el Vista y no he podido hacer pruebas desde allí.

El hecho de que si se muestre en XP se debe a una serie de ensayos que realicé y usando otras entradas (EnumPropPages32), por lo que dices el vista no acepta esa entrada para nuestros propositos.

varios post atrás usé una entrada que según la WDK indica que es para tratar iconos

http://www.todopic.com.ar/foros/index.php?topic=20047.msg149019#msg149019

http://www.microsoft.com/whdc/driver/install/devicons.mspx#EBAA

allí solo se refieren al XP, y con eso quedamos con la duda sobre el vista.  :(

voy a revisar las entradas para el caso del vista que subiste, gracias  :)


...
PD: En esta version detu programa ya no sale el boton de OPCIONES AVANZADAS para cambiar el GUID y el icono verdad? porq? xP

opciones avanzadas está en el menú Acerca

Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 23 de Febrero de 2009, 16:24:01
Hola de nuevo

Pedro, tengo un problema. La primera vez que usé el pic18f2450 lo programé con un VID 04D8 y un PID 0011 y utilicé el ejemplo de J1M. Funcionó OK.


Hola Santiago

debes eliminar todo rastro de una instalación previa sobre todo si utilizaras la misma VID PID, el driver de Jaime creo que usa un classguid distinto, es decir, el que le puse al programa por defecto es

A503E2D3-A031-49DC-B684-C99085DBFE92

en estos momentos no me acuerdo si el que usó Jaime es el mismo, me queda la duda de porque el USBDeview no lo eliminó por completo, pero si quieres eliminarlo definitivo, me temo que tendras que hacerlo manualmente.

en el regedit entra a:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB

luego entra en la clave del vid y pid y busca que el classguid coincida con el del inf del driver del picusb

luego busca el classguid un poco mas arriba (una rama donde están todas las guid del sistema) y una vez que la localices, veras los archivos que se utilizan.

el resto es borrar todos los elementos mencionados (incluyendo la copia del inf que generó el win), desde luego que sería bueno que hicieras una copia de respaldo (o usar algún utilitario para borrar claves de manera segura)

Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: migsantiago en 23 de Febrero de 2009, 17:55:36
Hola Pali

Pues yo creo que mejor creo un nuevo PID VID, ya le metí mano al registro, pero no a la parte que mencionas... pero mejor evito posibles daños a winxp y uso el pid nuevo  :mrgreen:

Por cierto, quisiera reportarte un bug del programa Enumerador. Cuando se guarda por segunda vez el archivo .inf o el archivo .h hay ocasiones que el archivo nuevo no sobreescribe al viejito y se crea como mchpusb.inf.inf o como usb_desc_scope.h.h.

Ni cuenta me había dado que el driver con el que estaba haciendo las pruebas era el viejito, porque el nuevo tenía otro nombre  :D

Bueno, gracias de nuevo por el programa Pedro.  :)
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 25 de Febrero de 2009, 13:38:50
...
Pues yo creo que mejor creo un nuevo PID VID, ya le metí mano al registro, pero no a la parte que mencionas... pero mejor evito posibles daños a winxp y uso el pid nuevo  :mrgreen:
...

si mejor hazlo asi, yo cuando estoy en etapas de pruebas que necesito meter muchas vid, uso un congelador de windows (ej: deepfreeze) asi hago todos los destrozos necesarios y luego vuelvo a descongelar.

...
Por cierto, quisiera reportarte un bug del programa Enumerador. Cuando se guarda por segunda vez el archivo .inf o el archivo .h hay ocasiones que el archivo nuevo no sobreescribe al viejito y se crea como mchpusb.inf.inf o como usb_desc_scope.h.h.

Ni cuenta me había dado que el driver con el que estaba haciendo las pruebas era el viejito, porque el nuevo tenía otro nombre  :D

Bueno, gracias de nuevo por el programa Pedro.  :)

aclarado entonces, voy a revisar el programilla y lo arreglo.

Por cierto te quedó muy bien presentable la página, veo que te decidiste por Joomla

Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: migsantiago en 25 de Febrero de 2009, 19:59:15
Ah por ahora yo estoy usando una máquina virtual con el disco duro congelado y con USB Virtualizado, funciona como Deepfreeze  :mrgreen:

Sí, joomla se ve muy bien, aunque cuando se usa por primera vez es difícil acostumbrarse a las categorías y módulos que emplea  :?
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 07 de Marzo de 2009, 13:44:45
Hola Muchachos!

Tuve la oportunidad de instalar el driver mchpusb.inf en una laptop - Vista 32

Intenté varias cosas y es inutil: NO es posible que el administrador de dispositivos reconozca un archivo .ico

la alternativa que existe es, lograr añadir iconos como recursos a una dll, y luego invocarla desde el inf (asi funciona OK). El problema es que no se si se pueda hacer sin tener un compilador, voy a buscar a ver que consigo.

la otra alternativa, es usar el ícono predeterminado del windows

entonces para el vista, quedará como lo hace mchpusb.inf original: usando el ícono predeterminado del puerto usb.

Voy a colocar una opción que permita al usuario escoger si quiere o no, un ícono personalizado.

es decir que para windows <> a vista, está disponible la opción de usar iconos personalizados, y para aquellos que usen vista, solamente aparecerá un solo ícono, el que muestra el logo del USB

(http://www.todopic.com.ar/foros/index.php?action=dlattach;topic=20047.0;attach=8726)


jeremy, respecto a la sección que mencionas:

Citar
...
Mientras que yo creo que te olvidaste de poner el copiado de icono, o sea yo lo tengo asi:
Código:

;------------------------------------------------------------------------------
;  Windows XP/Vista 64 Section
;------------------------------------------------------------------------------
[DriverInstall64]
CopyFiles=DriverCopyFiles64,icono_device ;;
...

no le coloqué el icono_device, precisamente por el mismo problema que no se vería. Ya se que en Vista 32 no se ve, asi que asumo que no habrá diferencias para 64 bits


He de aclarar que el contenido de mchpusb.inf generado por el programilla, viene del original que provee Microchip, las diferencias que hay, es la opción de añadir íconos y solamente funcionará para un solo VID (el mchpusb.inf original provee para varios VID)

estoy terminando de arreglar esos detalles y pronto vendrá una revisión del enumerador INF  :P



Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 12 de Marzo de 2009, 17:29:14
¡¡ Lista la versión 3.1 !!

(http://www.todopic.com.ar/foros/index.php?action=dlattach;topic=20047.0;attach=8744)

v3.1-INF_Enumeration_uC_PIC-USB

Bajar (http://www.4shared.com/file/95120344/cc568978/v31-INF_Enumeration_uC_PIC-USB.html)

Nota: v3.1-INF_Enumeration_uC_PIC-USB.zip contiene imágenes, textos, logotipos y demás material extraídos de los mas variados medios de los que no soy ni autor ni depositario de los correspondientes derechos de autor, uso y/o reproducción. Si Ud. es depositario de dichos derechos y desea que el material correspondiente sea eliminado de esta Web no dude en ponerse en contacto conmigo mediante e-mail y será inmediatamente retirado. Gracias.

- Lo he probado exitosamente en windows XP 32 (con/sin iconos) y en windows vista 32 (con/sin iconos) y con la clase CDC

- amplié la ayuda enormemente para responder las posibles preguntas que surgieran en el camino.

- para Windows vista NO existe el ícono personalizado, de manera pués, que mostrará el ícono predeterminado por el sistema.



Historial cambios:

 v3.1. 06-Mar-09

    - Arreglado un bug relacionado al sobrescribir los archivos generados.
    - Se añadió la opción de escoger el tipo de ícono del dispositivo, si se quiere usar un ícono personalizado ó usar el predeterminado de windows (Win Vista).
    - Probado y funcional para Windows Vista 32.

 ------------------------------------------------------------------------------------
 v3.0 27-oct-08
 
  - Mudado el código fuente del Visual Basic 6.0 al AutoIT  con la iniciativa
   de apoyar al software libre ;-)
 
 - Actualizado para MCHPFSUSB v1.1.0.0 (June 23, 2008) que corresponde a la     actualización de:
   - mchpusb.inf
   - mchpusb.sys
   - mchpusb64.sys
   - mchpusb.cat
   
   - mchpcdc.inf
   - mchpcdc.cat
   (para mayor información leer las release notes de MCHPFSUSB en www.microchip.com)

-  Añadida multitud de mejoras como comprobaciones de los textos, cambio total en la interfaz de idioma Inglés <-> Español
 ------------------------------------------------------------------------------------
 v2.0 01-feb-08

 - añadida nuevas opciones:
   - Crear una clase aparte solo para el dispositivo.
   - incluir un ícono a esa clase creada.
   - mejor estructuración de código fuente.
   - al cerrar el programa se guardan los datos de todos los campos.
   - al abrir el programa se cargan los datos de todos los campos, guardados
     con anterioridad.
 
 ------------------------------------------------------------------------------------
 v1.0 versión inicial 09-ene-08

 ------------------------------------------------------------------------------------

Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: kain589 en 12 de Marzo de 2009, 18:06:04
Muchas gracias por tu esfuerzo y por compartirlo con nosotros PalitroqueZ
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: migsantiago en 12 de Marzo de 2009, 18:07:33
Gracias Pedro, qué bien que ya funciona en WinVista  :mrgreen:

Cualquier otro problema que surja te aviso.  8)

Todavía no he tenido oportunidad de llevarme mi pic a mi casa y probarlo con Win7, pero a ver si puedo en la semana  :-)
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 12 de Marzo de 2009, 18:36:38
gracias kain, gracias Santiago

...
Cualquier otro problema que surja te aviso.  8)
...

sería de gran ayuda, asi vamos mejorando el programilla poco a poco.


Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: jonathanPIC888 en 14 de Marzo de 2009, 21:05:46
 :-) Como andas pali, muy bueno el programa. Aunque me parece que podrías agregarle las configuraciones para los descriptores de HID. entonces el programa estaría completo.
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 16 de Marzo de 2009, 16:55:50
umm podría añadirse en una futura versión.

Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 16 de Marzo de 2009, 17:01:18
por cierto, revisando el manual de ayuda chm, noté un error de mi parte al mencionar el autor correspondiente de un software:

en la sección 9 de preguntas y respuestas:

9. ¿Cómo desinstalar el driver MCHPUSB?
R: Existen varias formas, la más fácil es con un programa llamado USBDeview de Arturo Vergara que se consigue en http://www.nirsoft.net/

el autor del USBDeview NO es Arturo Vergara, el autor se llama Nir Sofer

http://www.nirsoft.net/about_nirsoft_freeware.html

Arturo Vergara es el autor de la traducción al castellano del USBDeview

¡¡craso error que cometí!! por supuesto que no tiene que ver con el funcionamiento del programilla, pero hay que respetar las autorías correspondientes. Dentro de poco subiré el manual corregido.

Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: mariano_pic en 16 de Marzo de 2009, 19:54:14
Hola palitroquez, una pregunta, el programa tambien manipula las librerias del ccs o solo el inf, y este inf sirve para cualquier lenguaje o solo con visual, disculpa si estoy desubicado pero apenas me estoy desayunando en lo de USB  8)
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: jeremylf en 17 de Marzo de 2009, 18:21:44
Vaya PalitroqueZ, muchas gracias hombre! (con rima  :D)

Quisiera añader que aunq los nombres de la DLL de la version antigua y la version actual del mpusb.. de microchip, son iguales. Si pones el de la version anterior en vista no funcionara. Tuve problemas con eso al probar con vista ya que solo cambie el .inf y olvide de que la DLL era distinta (internamente) y me refiero interna no al codigo en borland c++, sino a interna a como este lo genera para SO en el archivo final, aunq ay nuevaas funciounes en este nuevo DLL pero bueno, solo advertir  :mrgreen:


Gracias nuevamente palotroquez, salu2.
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 18 de Marzo de 2009, 14:55:01
...el programa tambien manipula las librerias del ccs o solo el inf,
...

sip, personaliza ambas librerias, las del ccs tiene que ver con los descriptores y las del inf con varias entradas

...
y este inf sirve para cualquier lenguaje o solo con visual, disculpa si estoy desubicado pero apenas me estoy desayunando en lo de USB  8)

el inf es un instalador para los dispositivos usb y es independiente de software que vayas a usar para hacer las comunicaciones.



Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: mariano_pic en 18 de Marzo de 2009, 20:38:16

   Gracias palitroquez por sus explicaciones, esto es lo que necesitaba.
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: migsantiago en 22 de Marzo de 2009, 17:49:26
Estimado Sr. Master Pedro Palitroquez
PRESENTE

 :D

Te platico que tu aplicación es 100% compatible con Windows 7, incluso el dichoso iconito funciona a la perfección en el administrador de dispositivos de Win7. Es el mismo archivo .inf que he usado con WinXP y no dio problemas.

Mejor ya no te pelees con WinVista, ya tienes solucionado el problema con el 7.  :mrgreen:

Acá unas fotos de cómo se ejecuta...

http://www.migsantiago.com/index.php?option=com_content&view=article&id=9&Itemid=10

Gracias Pedro
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 24 de Marzo de 2009, 11:15:55
vaya que sorpresa!!  :)

un indício que el nuevo windows funcionará como debe ser jaja

gracias a tí por testearlo.

Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: Alexandra en 19 de Julio de 2009, 13:47:58
Hola PalitroqueZ,  :-/  :-/  :-/ gracias por compartir tu trabajo con nosotros,  :lol:  :lol: es una excelente herramienta..
Te contare que usando el ejemplo de J1M y tu enumerador hice una pequeña aplicacion todo funciona muy bien en windows XP, la misma apliacion quise usarlo en Vista64 y  nada de nada, hay algo adicional que debo de hacer o es suficiente que use los mismo descriptores y el inf que use en xp?? 
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 21 de Julio de 2009, 21:41:06
Hola Alexandra.

Ante todo gracias jeje

respecto a lo otro lamentablemente no he podido ensayar con win64, pero puedes intentar lo siguiente:

toma el inf original que provee microchip, tiene que funcionar porque ellos así lo dicen.

una vez probado, solo te resta modificarle el vid_pid por el tuyo

Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: donjuan_01 en 16 de Septiembre de 2009, 12:47:43
Cordial Saludo para todos los duros en estos temas de los PIC...

PalitroqueZ, J1M, Nocturno, RedPic, bueno muchachos si se me escapa alguno me perdonan..

He visto y leido sus Post y si que son de gran ayuda...

Bueno primero queria presentarme y saludarlos...Ahora si...a participar, ayudar y aprender.

Saludos!!
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 17 de Septiembre de 2009, 12:31:57
saludos de mi parte donjuan

 :)

Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: obento en 12 de Noviembre de 2009, 10:31:50
buenos dias a todos

quisiera comentarles un pequeño problema pero que me tiene los nervios de punta :5], he seguido las indicaciones que ustedes recomiendan para conectar un pic a la pc por medio de usb, y cuando simulo sus ejemplos wala eureka si sirven. de ahi he querido aplicar para poder realizar mis propios programas y nada no me sirven, he tratado modificar los programas para que realicen algo diferente los compilo y ahi yo el pc no me reconoce el driver. La verdad he querido dejar esto a un lado y hacer otra cosa pero no es tipico mio el de rendirme pero no me gustaria pasarme una vida buscando que es lo que estoy haciendo mal, les agradeceria se me pueden ayudar a buscar cual es mi error
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: jesaga en 03 de Marzo de 2010, 20:42:29
Hola Amig@s

Por fin, terminé después de tantos meses dandole un ratico cada vez que podía jeje

Aquí está la versión 3 del programilla, entre otras cosas paso a continuación de las buenas nuevas:

- Lo escribí en Basic de AutoIT para aprender sobre ese entorno (además que no requiere de runtime alguno)

- Está basado en la última actualización hasta esta fecha del Microchip General Purpose USB Windows Driver. v1.1.0.0 June 23, 2008

Ojo me basé en la versión que dice la MCHPUSB Driver Release Notes.htm que viene en Microchip MCHPFSUSB v2.3 Installer.zip; es mas actual que la que viene en MCHPFSUSB_Setup_v1.3.exe

-  Añadida multitud de mejoras entre ellas, validaciones en los campos de textos, se puede intercambiar la interfaz del idioma Español <-> Inglés

- Hay un manual donde explica de manera visual, los pasos para realizar una instalación exitosa de los drivers.

Solamente lo he probado en windows XP (32Bits), faltan personas que lo prueben en xp/vista 64Bits

- Cualquier novedad que le encuentren, fallo, bugs, horrores, etc les ruego que me notifiquen para corregirlo en la brevedad posible.

Bueno espero que les sirva de utilidad. ¡Ahh! y como siempre siguiendo el espiritu de software libre, ahí les pongo el código fuente para el que quiera hacer modificacion o conocer un poco el autoIT.

xxxxxxx
Hhola no se ven las ligas del proyecto



Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 03 de Marzo de 2010, 23:54:08
jesaga, todo lo necesario lo consigues en:

http://www.unpocodelectronica.netau.net/generador-de-inf-para-los-drivers-usb-de-microchip

Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: Akone en 12 de Marzo de 2010, 06:48:41
Pedazo de curro si señor, muchas gracias!
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: kapo33 en 15 de Abril de 2010, 08:28:32
EL ARTÍCULO COMPLETO CON EL PROGRAMA ACTUALIZADO, LO PUEDES VER EN MI PÁGINA WEB

ver articulo completo (http://www.unpocodelectronica.netau.net/generador-de-inf-para-los-drivers-usb-de-microchip)





Descripción:

Automatización de datos Enumeración USB es un programita que pemite introducir datos como Nombre, VID, PID, Fabricante, Descripción para configurar el instalador que necesita el windows cuando conectamos a la primera vez

(http://www.todopic.com.ar/foros/index.php?action=dlattach;topic=20047.0;attach=5889)

dichos datos se muestran al momento de instalación y cuando accedemos al administrador de dispositivos.

he aquí un video (http://www.4shared.com/file/35015377/5490ce8e/auto_enum_pic_usb.html) que explica en detalle (bajar este (http://download.techsmith.com/tscc/tscc.exe) codec para observarlo)

El adjunto con el Código Fuente para el quiera añadirle mejoras:



la actualización mas reciente la puedes bajar en este post:

http://www.todopic.com.ar/foros/index.php?topic=20047.msg189418#msg189418




Hola gente, lestoy realizando un proyecto con pic18f4550 e intentandolo conectar por puerto usb 2.0, he seguido todos los tutoriales y ejemplos que tenemos por aqui pero me sigue dando algun error.
Explico, mi intencion es la de conectar mi dispositivo pic por usb al PC para luego hacer una pequeña aplicacion con labview.
el problema que tengo es que cuando conecto el usb al pc me responde  diciendome que el hardware esta instalado y listo para usarse, pero al momento aparece otro mensaje que dice "dispositivo desconocido". He estado probando con el "enumeratorpicusb" como se explica en todo pic o en hooby pic, pero siempre aparece el mismo error haciendolo exactamente igual.
Me gustaria saber si alguien me puede dar un ayda para que esto se resuelva
si necessitais que suba algo decirmelo y lo subo para que observeis el proyecto
muchas gracias
kapo33
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 16 de Abril de 2010, 15:07:55
...
el problema que tengo es que cuando conecto el usb al pc me responde  diciendome que el hardware esta instalado y listo para usarse, pero al momento aparece otro mensaje que dice "dispositivo desconocido". ...

umm según parece que existe una intermitencia de hardware, ese aviso de error es muy común cuando hay fallas de conexión, yo te recomendaría revisar los cables, los componentes o el condensador vusb del pic.

Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: Slalen en 17 de Abril de 2010, 08:35:42
A parte de lo que te dice Pali, mira el valor del condensador de vusb, pon uno de 47uF con el positivo hacia el pic y el negativo a masa. No hagas caso del valor de datasheet que da errores.

Además revisa que el d+ y el d- los has puesto en su sitio y no al contrario.
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: Alumno en 09 de Julio de 2010, 20:57:15
queria saber si alguien lo ha probado en windows7 y si le funciono? porque a mi no me funciona ni el bootloader, ni otras aplicaciones USB  en WXP no tenia problemas ?
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: krlosjcc en 30 de Septiembre de 2010, 01:11:10
Estimado Sr. Master Pedro Palitroquez
PRESENTE

 :D

Te platico que tu aplicación es 100% compatible con Windows 7, incluso el dichoso iconito funciona a la perfección en el administrador de dispositivos de Win7. Es el mismo archivo .inf que he usado con WinXP y no dio problemas.

Mejor ya no te pelees con WinVista, ya tienes solucionado el problema con el 7.  :mrgreen:

Acá unas fotos de cómo se ejecuta...

http://www.migsantiago.com/index.php?option=com_content&view=article&id=9&Itemid=10

Gracias Pedro

yo probé este tutorial en mi laptop con windows7 de 64 bits y a la hora de conectar el pic no pasa nada, windows no reconoceningun dispositivo :S alguna idea?
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: migsantiago en 30 de Septiembre de 2010, 10:34:29
yo probé este tutorial en mi laptop con windows7 de 64 bits y a la hora de conectar el pic no pasa nada, windows no reconoceningun dispositivo :S alguna idea?

Debes descargar la librería mpusbapi.dll más reciente de Microchip.com

http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=2680&dDocName=en537044

Usando la nueva DLL ya puedes usar Win7 a 64 bits.

Ya he agregado la nota al artículo. Gracias por avisar.
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: jhozate en 21 de Enero de 2011, 21:30:14
hola muchachos, le he estado dando vueltas y no he podido conectar mi pic al pc (windows 7) por USB CDC, tengo un 18f4550 y utilicé el enumerador de pedro, genero los dos archivos mchpcdc.inf y el usb_desc_cdc.h, estos archivos los copio en la carpeta projects de CCS junto con el mchpcdc.cat(del .zip de pedro) y archivo USB_CDC.H(de la carpeta drivers de ccs). compilo el siguient codigo:
Código: [Seleccionar]
#include <18F4550.h>

#fuses HSPLL,MCLR,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL5,CPUDIV1,VREGEN,NOPBADEN
#use delay(clock=48000000)

#include <usb_cdc.h>
#include "usb_desc_cdc.h"


void main(){
usb_cdc_init();
    usb_init();    
    while(!usb_cdc_connected()) {}

   do{
    usb_task();
    if (usb_enumerated())
    {
    output_high(pin_e2);
    }
   }while (TRUE);
}

sin problema alguno, cuando conecto el pic, el administrador de dispositivos me muestra el dispositivo "SERIAL DEMO", automaticamente busca los controladores en windows uptade, obvio no los encuentra, acto seguido le doy actualizar controlador para buscar los archivos manualmente y dirijo la busqueda hacia donde tengo el .INF y el .CAT, es decir a la carpeta project. Pero no los encuentra :(  si los pongo en el escritorio tampoco :(

Edit: He hecho lo propio con los drivers de ccs, cambio los VID PID y ya me funciona, mas el pc me lo reconoce como un dispositivo llamado USB to UART y no como un pic18
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 22 de Enero de 2011, 01:11:50
en el archivo cdc_NTXPVista.inf puede verse al final, una directiva que dice


CCS_CDC = "USB to UART"

Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: jhozate en 22 de Enero de 2011, 14:52:25
efectivamente, ya pude con tu soft, aunque me pasa a veces cosas raras cuando intento guardar directamente los archivos .inf y .h directamente en la carpeta project de ccs y es que el Windows 7 a veces si a veces no me pide unos permisos para poder guardar en esa carpeta . En Fin ya pude :mrgreen: Gracias
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: proyecto2009utu en 01 de Febrero de 2011, 21:36:01
Buenas, muy interesante el hilo..
pero tengo un problema, ya que si quiero compilar mi programa con el archivo usb_desc_cdc.h generado, no me compila....

y si lo hago con el usb_desc_cdc.h que viene en C:...../PICC/Drivers me anda en proteus pero no me funciona en el hardware    :(

Esto es muy raro, le agradezco alguien me pueda ayudar
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 01 de Febrero de 2011, 23:04:50
Buenas, muy interesante el hilo..
pero tengo un problema, ya que si quiero compilar mi programa con el archivo usb_desc_cdc.h generado, no me compila....

y si lo hago con el usb_desc_cdc.h que viene en C:...../PICC/Drivers me anda en proteus pero no me funciona en el hardware    :(

Esto es muy raro, le agradezco alguien me pueda ayudar

umm no te funciona en hardware?, yo cuando tengo problemas con un circuito que no quiere andar, lo deshago y lo vuelvo a armar. mas de una vez me he llevado chascos con un cable o un condensador.

Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: proyecto2009utu en 02 de Febrero de 2011, 17:53:55
Gracias PalitroqueZ,
es cierto no me funciona en hardware (en la simulacion en proteus funciona)

Revise todo el harware como me dijiste y nada  :(

Cambie capacitores, pero todo sigue igual..
Y ya que estaba para hacer pruebas hice alguna otra:
- Le interncambie los contactos del USB el D+ y D- (uno por otro)
- Le probe poner otros cristales 48, 20 y 8 MHz (El programa esta para 48MHz)

Lo mas extraño es que hiciera lo que hiciera siempre me aparecia "Dispositivo Desconocido"

Y me da el Error 43 Siempre
Windows detuvo este dispositivo porque informó de problemas. (Código 43)

No se que podra ser  :?

Los archivos que incluyo a mi proyecto del PIC son:
Código: [Seleccionar]
usb.h
18f4550.h
pic18_usb.h
usb_cdc.h
usb_cdc_desc.h
ctype.h
usb_hw_layer.h

Esta bien verdad?
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 02 de Febrero de 2011, 20:49:01
pues sip, los archivos son esos.

¿y has probado cambiando el condensador Vusb?

sin ese condensador, la conexión se ve comprometida.


Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: proyecto2009utu en 02 de Febrero de 2011, 20:59:33
Si efectivamente, cambie los 3 condensadores, los dos del cristal y el de Vusb

Tengo 15pF
y 47uF

Respectivamente, sin ese condensador ni si quera me dice "dispositivo desconocido"

tienes alguna idea de que otra cosa pueda ser??

Gracias, disculpa las molestias
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: jorge_gm en 13 de Mayo de 2011, 20:29:02
Antes que nada para agradecer toda la información que han compartido del uso de los pic con USB, a todos y cada uno de los que han colaborado en estos desarrollos.

Les comento que ya termine de leer casi todos los hilos que han puesto en el foro y sus respectivas webs (uff demacida info). y despues de descargar algunos ejemplos logre simular en proteus un ejemplo de J1M y todo perfecto, pero pues como todo, queria seguir experimentando y quise hacer uso del enumerador de Pedro,( haciendo uso de la misma aplicación y circuito en proteus) el caso esta en que segun entiendo el enumerador genera el codigo necesario para hacer que el firmware del pic se enlace con el pc a travez del .inf que genera y al mismo tiempo te da la opción de modificar algunos parametros ¿es correcto?. Bueno pues hasta ahi todo bien, volvi a compilar el codigo del pic ahora agregando el respectivo include del archivo que genera el enumerador. Al ejecutar el simulador de proteus nuevamente me reconocio el pic y pidio el respectivo driver y lo instalo de forma correcta, incluso me aparece el icono que personalice. Mi pregunta es, si en el codigo de la aplicación de windows ¿también es necesario poner en alguna parte el vid y el pid, para que concuerden con el dispositivo y volver a compilar la aplicación? Lo pregunto porque al momento de ejecutar la aplicacion, al parecer todo esta bien, pero no reconoce el dispositivo y no hace ninguna función.

Saludos y gracias de antemano.
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: proyecto2009utu en 14 de Mayo de 2011, 09:38:54
Creo que no es necesario.
Sabes el numero de COM que te genera??? si lo sabes despues te comunicas con ese COMX

Una consulta aparte, algien tiene idea de como bajar el numero de COM???? sacar alguno, ya voy por el COM21.....

Gracias
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: jorge_gm en 14 de Mayo de 2011, 21:22:54
Creo que me habia ganado la emoción de ver los ejemplos funcionando y de ahí mi error, ahora que descargue el visual studio le di una mirada al codigo de  la api  y pude ver que efectivamente ahí tambien se declara el valor del pid y vid, bueno asunto resuelto ya me queda mas claro el procedimiento para hacer mi propia aplicación. gracias de nuevo a todos. Espero pronto tener algo para aportar al foro.


Saludos.
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: Dymtra en 03 de Julio de 2011, 12:54:33
.
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: Dymtra en 03 de Julio de 2011, 12:56:40
Hola, soy nuevo por aquí, estoy desarrollando una interfaz con la pc's por medio de USB, utilizando el PIC18F4550. He logrado que la PC lo identifique, utilizando esta herramienta, y que al mandar cierto dato por medio de VC++  el PIC controle un motor a pasos.

Tengo una duda, voy a conectar un segundo  PIC18F4550 ¿Como puedo hacer q la PC los diferencie si tienen el mismo PID y VID?

Gracias de Antemano  ;-)
Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: PalitroqueZ en 03 de Julio de 2011, 20:37:15
....
Tengo una duda, voy a conectar un segundo  PIC18F4550 ¿Como puedo hacer q la PC los diferencie si tienen el mismo PID y VID?
...

no puede diferenciar si mantienes los mismos VID y PID, forzosamente tienes que cambiar al menos uno

Título: Re: Automatiza la Configuración de tus datos para enumerar un PIC 18Fxx5x
Publicado por: danielpic en 17 de Octubre de 2012, 13:27:04
Hola, primero agradecer el trabajo.

He probado conectar el pic al Windows XP y va perfecto, pero lo estoy intentando en windows 7 64 bits y no reconoce los drivers.
Me he descargado la nueva dll y tampoco va.

Alguna idea?