sexta-feira, março 13, 2015

Amiga GOTEK Floppy Emulator - « unrecognized device – please reset your device then try again »

This is a billingual post. First portuguese, after english. If you don't speak portuguese, jump to the english part :)

Olha, esse deu trabalho, viu...
Peguei um emulador de drive GOTEK la nos USA, e deixei guardado. Como ia mexer no meu amiga 1200 essa madrugada, aproveitei pra tira-lo do saquinho e aplicar o excelente codigo do emulador de drive pra amiga, que voce encontra aqui: http://cortexamigafloppydrive.wordpress.com

O procedimento é bastante simples: Fecha dois pinos (que ativa o bootloader), liga a saida de um conversor USB-serial TTL no emulador, roda um programinha e pimba, funcionou.

Nao, nao funcionou.

Fiquei duas horas pastando pra fazer o troço funcionar, e parece que é um problema bem comum pela internet. Como trabalho nessa area, resolvi baixar os manuais do processador da ST (é um ARM!) que roda nessa bagaça e tentar entender o que NAO estava funcionando. Foi relativamente facil.


Tao vendo aqueles dois resistores ali na vertical? Sao os resistores de pull up que sao NECESSARIOS, mas o meu drive nao tem, e nem todo conversor serial - TTL (ou no nosso caso USB-TTL) tem.

A solucao? Ligue dois resistores de 10K nos pinos de TX e RX. Um do TX pra VCC e outro do RX pra VCC (sendo VCC o pino de 3.3 volts que tem ao lado dos pinos de TX e RX).

Pronto, com isso o flashing do seu dispositivo funciona. Isso serve pra outras placas que usam os processadores STM32F10x.

E tem gente pra caramba se ferrando com isso por ai :(

English session:
Instead of telling a funny history, I'll go directly to the point.
Trying to flash a GOTEK drive and gets the "Unrecognized device" error?
Put a pair of 10K resistors from TX to VCC and RX to VCC. These lines are open collector and needs a pull-up resistor to work. Use the 3,3V pin you have besides the TX/RX pins on the GOTEK as VCC.

Hope that helps!

Nenhum comentário: