ATTiny85 y USB con Android?

Desarrollé una aplicación de Android que habla con un Arduino Mega a través de USB.

El código C es de 1,8 kb y cabrá en un chip ATTiny85 para reducir el circuito a casi nada. El problema es...

¿Cómo introduzco USB en el circuito para poder seguir hablando con la aplicación de Android?

Cuál es el medio físico de conectividad/comunicación entre Android y su dispositivo. ¿Es USB directo (es decir, Android está ejecutando un host USB), o a través de una PC, es decir, la PC reproduce un host USB, y Android/PC hablan por encima de TCP/IP o Bluetooth, etc.?

Respuestas (2)

Echa un vistazo a V-USB . Lo he usado con ATtiny85. Es esencialmente una implementación de USB solo de firmware para AVR que no tienen USB "incorporado".

El sitio de V-USB también tiene una lista decente de proyectos de ejemplo que podría usar como punto de partida. No estoy seguro de cómo/si puede interactuar con Android o no.

Una cosa a tener en cuenta es su modelo de licencia . Tienes que elegir GPL o licencia comercial. Si no quiere molestarse en adherirse a la GPL, su opción comercial tiene una licencia de "pasatiempo" por $9.90.

¿Puedes colocar un V-USB dentro de un ATTiny?
Sí, su principal proyecto de referencia (el "PowerSwitch") en realidad usa el ATtiny2313 que solo tiene flash 2K. obdev.at/products/vusb/prjobdev.html
AFAIU, hay varias trampas. Por ejemplo, V-USB o la mayoría de las implementaciones de SW USB bitbanged no funcionan bien en Windows 7. Algunas personas lograron que funcionara en Windows 7 de 32 bits, después de piratear los controladores de Vista aparentemente, pero no existe una solución para 64 -poco.
Tengo Win7 (64 bits) y funcionó para mí.
Entonces, ¿es realmente solo el puerto USB conectado al ATtiny y el circuito y nada más que eso? ¡Genio! Gracias... Trataré de actualizar cómo va.

Hay algunas soluciones USB para AtTTiny85 disponibles, pero todas ellas son solo trucos inteligentes. En mi opinión, se puede lograr una conexión USB adecuada utilizando solo dispositivos USB de hardware. Deberías buscar dispositivos como ATMega8u2. El chip es mucho más grande, pero un software como LUFA (http://code.google.com/p/micropendous/wiki/ADK) será una solución relativamente estable y fácil para usted. Especialmente si eres más bien un tipo Arduino que un ingeniero.