segunda-feira, 7 de dezembro de 2015

Quase ia me esquecendo: quarto projeto no concurso Square Inch

De uma conversa com um amigo do trabalho a respeito da participação no concurso "Square Inch" surgiu a idéia de mais um projeto. Fiquei pensando em algo que poderia fazer rapidamente,  Fiquei pensando em fazer um painel de LEDs, tipo aqueles mostradores de computadores antigos, mas não consegui achar um projeto que vi certa vez baseado num registrador de deslocamento e algumas portas lógicas. Até achei algo mas não era o que tinha em mente.
Também fiquei pensando que talvez esse projeto não fosse uma boa idéia porque iria exigir componentes SMD e placa em face dupla, que por ser tão pequena representaria alguma dificuldade na hora de confeccionar.
A idéia do quarto projeto ficou esquecida até que passei num corredor cheio de monitores CRT encostados e fiquei pensando se não seria legal fazer algo para colocar um deles funcionando, como um relógio digital.
Mas pesquisando na Internet vi que alguém ja tinha feito isso, então pensei em fazer um relógio binário, ou um relógio que marcasse horas de maneira diferente, mas ainda assim isso não me agradou.
Foi então que eu pensei em convergir minha idéia inicial do painel de luzes com a do dispositivo para ligar no CRT.
Peguei então a base do código to Tic TAc X e comecei a modificar até que nasceu o VGA Blinken Lights.



Featured on Hackaday (2)

Mais um projeto na página principal do Hackaday! Desta vez com o Chess Mate, um computador de xadrez que estou desenvolvendo em conjunto com  um amigo.


quinta-feira, 19 de novembro de 2015

Montagem dos 3 projetos do concurso finalizada!

Finalmente terminei a montagem do Key Pass, concluindo assim a montagem dos 3 projetos participantes do conteste do Hackaday.io



terça-feira, 17 de novembro de 2015

Featured on Hackaday!

O projeto dos paddles para Atari apareceu em 'featured' na primeira página do Hackaday.com! Achei bem legal isso, não esperava mesmo!


sábado, 31 de outubro de 2015

É caveira, meu capitão....

Olha só quem me deu uma caveirinha pelo projeto Key Pass no Hackaday.io:


O Bruce Land é um professor da Ecola de Engenharia Elétrica e Computação da Universidade de Cornell, famoso por suas camisas floridas e por suas aulas de microcontroladores e sistemas embarcados

quinta-feira, 29 de outubro de 2015

Mais um projeto inscrito no conteste "Square Inch" do Hackaday.io

Terceiro projeto, um armazenador/gerador/digitador de senhas via USB. Permite armazenar até 16 senhas. A EEPROM comporta mais que isso, mas por causa do display de 7 segmentos limitei a 16.

Link para o projeto.

Fotos do protótipo


Desenho da placa

'Tryout'. A placa ficou a conta certa dos componentes.


sábado, 10 de outubro de 2015

7 dias para o 9º encontro do Clube TK

Faltam 7 dias para o 9º encontro do Clube TK. Já estou na expectativa!


Este ano vou levar os protótipos de alguns projetos como o TicTacX, o emulador de teclado, o Kolour e um projeto surpresa (ainda em desenvolvimento):





segunda-feira, 5 de outubro de 2015

Square Inch Contest no Hackaday

O hackaday.io abriu um concurso cujo objetivo é criar projetos que caibam dentro de uma placa de 1x1 polegada (ou menos)


Eu estou participando com duas entradas:

AVeRCADE: Um adaptador USB para montar controles de arcade. Este projeto possui um bootloader de forma a poder carregar firmwares diferentes.



AT26-CHUCK: O já conhecido TK-Chuck, porém em nova placa.






sábado, 26 de setembro de 2015

Controle Arcade para SNES (2)

Meu amigo terminou de montar o controle Arcade. Seguem as fotos. A caixa de madeira que ele usou é bem legal, pois é cortada na CNC e as peças plásticas de fixação são impressas em plástico.




domingo, 20 de setembro de 2015

Teste de memória para o Master System (4)

A placa para o cartucho foi confeccionada utilizando-se uma placa dupla face, onde foram feitos sulcos utilizando o riscador de placa de forma a criar as ilhas. A ligação entre as ilhas e os terminais da EPROM foram feitas com fio esmaltado.
Placa improvisada

Cartucho de testes. Foi deixada provisão para alguns CIs extras

Uma 27256 foi gravada com o arquivo 'output.sms' e o cartucho foi inserido no Master System. Os primeiros resultados foram promissores. O teste da RAM sempre dá certo e o teste da VRAM sempre falha, e a cada vez que o Master System é ligado com o cartucho, os caracteres 'bagunçados' mudam um pouco, como pode ser visto no vídeo abaixo:


Tudo indicava um problema na RAM de vídeo mesmo. Daí comecei a fazer os testes de continuidade entre o VDP e as 2 RAMs pseudo-estáticas mas todas as ligações estavam em ordem.

Em determinado momento mexi um pouco o trimmer e ao religar o vídeo-game uma surpresa: As cores apareceram perfeitas!
Cores corretas.
Nesse momento as coisas ficaram estranhas, uma vez que com o cartucho de teste as cores ficam em ordem, porém os erros continuarm.
Cores em ordem, porém erro na VRAM
Mexendo um pouco mais descobri que a TV LCD tenta se adaptar à subportadora de cor, uma vez que se o trimmer for ajustado lentamente, as cores continuarão as mesmas. Porém uma mudança mais brusca, como a provocada pelo contato (ou retirada) de uma chave de fenda no eixo do trimmer fazem com que muitas vezes a TV deixe de exibir a imagem.

Bom, já descobri que não devo fazer ajuste na frequência da subportadora utilizando uma TV muito moderna, mas se não tiver outra TV, a cada pequeno ajuste, o vídeo game deve ser desligado e depois religado.
Quanto ao cartucho de testes, achei estranho os erros que ele está acusando na VRAM, bem como os caracteres 'intermitentes' uma vez que a tela inicial de seleção de jogos é desenhada sem problemas.

Infelizmente descobri outro defeito no vídeo game, relacionado ao chip que lê os joysticks, senão teria jogado um pouco para ver se apareceriam artefatos na tela.


Controle Arcade para SNES

Estou ajudando um amigo meu a montar um controle arcade para o SNES. A caixa de madeira e o conjunto de botões podem ser encontrados com facilidade hoje em dia no mercado livre e o preço não está ruim. Já para a eletrônica, uma das opções é canibalizar um controle, e a outra é construir um.
O circuito foi montado com base nos diagramas disponíveis na Internet, e usa apenas 2 CI's CMOS 4021 e alguns resistores.

Diagrama do controlador. Fonte: gamesx.com
 A montagem foi feita sobre uma placa padrão com ilhas.

Montagem em placa padrão

Fiação com fio esmaltado

O conector foi reaproveitado de sucata, e recebeu um cabo 'manga' com 2,40 metros.

Fios soldados aos pinos do conector

Circuito pronto para ser montado na caixa.
Os pontos de ligação dos fios dos botões e manete foram feitos com uma volta (anel) de fio utilizando os próprios terminais dos resistores de pullup. Com sobras dos terminais foram feitos os anéis para ligação do cabo 'manga'.

"anéis" para soldagem.

quarta-feira, 9 de setembro de 2015

Teste de memória para o Master System (3)

Investi um pouquinho mais de tempo no testador de memória e adicionei barras de cor ao fundo da tela.

Tela do programa, com barras de cor ao fundo
Um detalhe que esqueci de comentar é que como o programa tem que prever a possibilidade da RAM estar com defeito, ou seja, nada de usar CALL/RET, pilha, etc. Tudo que precisa ser armazenado fica nos registadores da CPU e vários trechos de código têm que ser repetidos.


A versão mais atual encontra-se neste link do dropbox.

Teste de memória para o Master System (2)

Dando prosseguimento ao programa do testador de memória para o Master System, terminei de incorporar o teste da VRAM.

O que deu um pouco de trabalho, por falta de experiência no assunto, foi que na hora de escrever na VRAM o bit 13 do endereço deve estar em nível 1. Depois de corrigido esse problema o programa passou a funcionar.

Boot da BIOS do vídeo game

Início dos testes da RAM

Teste da RAM OK, início dos testes da VRAM

Testes da VRAM ok, fim dos testes
O código fonte e a imagem da rom estão disponíveis no meu Dropbox (link)

terça-feira, 8 de setembro de 2015

Teste de memória para o Master System

Na falta de uma rom que faça testes no master system, resolvi estudar um pouco e fazer o meu próprio. O objetivo é só testar a RAM e a VRAM mesmo, através da escrita de padrões de bits.

A partir dos primeiros exemplos do tutorial do Maxim já foi possível fazer um programa que teste a RAM. Agora preciso estudar um programa que teste a VRAM e gravar isso num cartucho.









Conserto de um Master System

Adquiri recentemente (via OLX) um Master System modelo I da Tectoy. Segundo o anúncio o vídeo game estava funcionando porém não exibia cor. Depois de consultar alguns artigos sobre reparação, vi que nesses casos o reparo era simples, normalmente um reajuste num potenciômetro.

Quando o equipamento chegou, veio sem fonte. Como no anúncio tinha foto do vídeo game funcionando eu nem lembrei de perguntar se vinha com fonte ou não. Se tivesse perguntado, talvez eu tivesse procurado outro anúncio, de um Master System em melhor estado, considerando o preço médio da fonte vendida separadamente. Mas aí já era tarde demais. Pelo menos ficou a lição:


lição 1: Sempre que comprar algum produto online, seja novo ou usado pergunte o que vem junto.

Assim que consegui um tempo para mexer no video-game,  improvisei uma fonte e abri o aparelho para fazer o tal ajuste. Daí aprendi outra lição:

lição 2: Sempre que for adquirir um equipamento usado, pergunte sobre o estado geral do mesmo, se tem arranhões, trincas no gabinete e sinais de oxidação e se tem todos os parafusos (ou se falta algum)

O gabinete estava bem surrado, com um arranhão grande (mas que não dava para ver direito na foto do anúncio) e a blindagem eletromagnética (lata) que envolve a placa do vídeo game estava muito enferrujada. Até os conectores de saída apresentavam vestígios de ferrugem. Internamente uma das torres de fixação estava quebradas e faltava um parafuso.

Ao retirar as chapas da blindagem fiz uma inspeção visual e vi que as imediações do codificador de cor (MC1377) estava com sinal de ressoldagem em vários componentes. Até o regulador de tensão de +12V, usado somente para esta parte do circuito estava mexido.

Placa fuçada

Mau sinal. Tentei ajustar o trimpot, conforme artigos que eu houvera visto sobre este defeito e nenhum sinal de cor, ou de variação alguma em todo o curso do trimpot. Mais uma lição aprendida:

lição 3:  Quando o reparo de algum equipamento é simples, as pessoas vão tentar consertar antes de vender, portanto, sempre que for comprar um equipamento com defeito pergunte se o equipamento já sofreu manutenção, ou se a pessoa já tentou consertá-lo.O importante nesta pergunta vai ser a forma como a pessoa responde, pois a resposta em si pode não ser confiável.

Analisando o esquemático com cuidado, desconfiei logo de cara de algo que não havia sido mexido e que estava relacionado com o processamento de cor, que era um transformador que tem função de filtro, casador de impedância e defasador de sinal de crominância. Testando com o multímetro vi que este transformador estava aberto tanto no primário quanto no secundário.
Codificador de cor do Master System (MC1377)


Fio solto no transformador
Uma olhada mais próxima já foi suficiente para notar que o transformador estava com fios soltos, provavelmente devido à corrosão, uma vez que usa fio muito fino.

Depois de remover o transformador (e para ter acesso a ele foi necessário remover o dissipador de calor do regulador) confirmei que o problema de ambos os enrolamentos era realmente causado por oxidação.

Fios soltos no transformador

Usando um pedaço de fio fino reaproveitado de um eletroímã de relógio despertador xing-ling consegui emendar os enrolamentos do transformador e ressoldei ele no circuito.

Emenda com fio esmaltado

Transformador reparado

Desta vez foi possível obter alguma cor na tela ajustando-se o potenciômetro, porém ainda havia alguma coisa errada, pois as cores apresentavam um padrão de persiana. ao longo de toda a tela.

Problema na cor

Problema na cor, detalhe.

Munido de um osciloscópio e do datasheet do MC1377 ajustei o trimpot do cristal de forma que a portadora de cor ficasse exatamente em 3.575611 MHz e ajustei o trimpot de forma que a salva (burst) da portadora de cor ficasse exatamente enre 5,8 e 8,5us a partir da descida do sinal de sincronismo. Apesar do esforço, tudo estava em ordem, mas continuava sem cor. Cheguei a conferir várias formas de onda nos pinos do MC1377 mas aparentemente tudo está em ordem, batendo com o datasheet.

Parei por aí, mas o próximo passo vai ser conferir se todos os componentes em torno do MC1377 estão com os valores corretos, uma vez que o circuito foi visivelmente mexido.

Outra possibilidade é um defeito na memória RAM ou VRAM. Para isso vou precisar de alguma ferramenta capaz de fazer o teste, talvez um cartucho de teste no estilo dos micros Atari. Será que isso existe para SMS ?






domingo, 30 de agosto de 2015

Ensaio para joystick (4) - Versão USB funcionando!

Continuando o Post anterior seguem algumas fotos da montagem

Cabo de conexão foi construído
Primeiro a posição dos componentes foi definida. Os botões estão do lado de baixo

Depois cada componente recebeu um ponto de solda para permanecer no lugar.

A posição do cabo flat foi então definida
As ligações então foram feitas com fio esmaltado


O cabo flat foi então soldado à placa
E na sequência o cabo USB foi soldado

A caixa foi fechada e o circuito testado 

Testando a empunhadura.

Link para os arquivos do projeto (CR-096 Controller).