segunda-feira, 24 de junho de 2019

Modificação para usar antena externa no Raspberry Pi3.

       O Raspberry Pi3 vem com uma interface wireless onboard cuja antena também é onboard. Mas em alguns casos, é necessário uma antena externa com maior ganho ou quando a placa do Raspberry Pi3 é instalada em um gabinete metálico. Para tal modificação, pode-se soldar um cabo diretamente à placa ou como preferi fazer soldar um conector U.FL.

Conector Hirose U.FL comumente encontrada em placas Wi-Fi de notebooks.
Visão geral do lado inferior da placa do Raspberry Pi3.
        Para fazer esta modificação é necessário raspar duas pequenas áreas na para inferior da placa do Raspberry Pi3 bem como trocar a posição de um capacitor, sendo que esta troca é parte mais difícil pois este capacitor é absurdamente pequeno, cerca de 1/4 de uma pulga!
       O conector U.FL foi retirado de uma placa Wi-Fi de notebook.


Detalhe da placa com as áreas raspadas.

Conector soldado. Note o capacitor que foi trocado de posição. Além de muito pequeno, fica muito próximo a outro componente dificultando ainda mais seu reposicionamento.

Cabo conectado. Deve-se ter cuidado para que o conector do cabo não encoste na parte de baixo do conector do Raspberry Pi3, pois fechará um curto entre GND e +3,3V.
Visão geral do cabo conectado (Pigtail U.FL SMA Macho).


terça-feira, 14 de maio de 2019

Display OSRAM SCD55103A, complemento da postagem anterior

        O display OSRAM SCD55103A é a versão de 10 caracteres do display SCD5583A do post anterior, usando a mesma interface serial síncrona e tendo a mesma pinagem e protocolo de comunicação.

Display SCD55103A visto com um display SCD5583A e um PIC16F876 mostrando o mesmo tamanho.


Display SCD55103A visto por baixo. Note que tem a mesma pinagem do display SCD5583A.

Display SCD55103A acima do Display SCD5583A, note o menor espaçamento dos caracteres.

quarta-feira, 17 de abril de 2019

Display OSRAM SCD5583A.

        O display OSRAM SCD5583A é um display de matriz de LEDs 5x5 verdes de 8 caracteres que opera em 5V.
       Este display usa uma interface serial síncrona, mas ao contrário dos displays similares mostrados em posts anteriores, os caracteres devem ser desenhados bit a bit, ou seja, sem um decodificador ASCII, além disso, sua matriz de LEDs é de 5x5 tornando-o bem mais barato por usar menos LEDs. Com uma interface serial, o projeto fica bem mais simples, podendo usar um PIC12F1822 para controlar este display diretamente e ainda se ter uma interface I²C para ler os registros do IC INA219 por exemplo.


Display SCD5583A visto com um PIC16F876 mostrando como este display é compacto.

Display SCD5583A visto por baixo. Note que tem o mesmo espaçamento de um DIP de 28 pinos.
Placa com o display SCD5583A e um PIC12F1822. Note que usando uma interface serial, a placa fica tremendamente mais simples.
Display SCD5583A em ação com um acrílico fumê.
Comparação entre o display OSRAM SCD5583A (acima) e o Siemens HDSP2114S (abaixo). Note a diferença nos caracteres com uma matriz 5x5 e 7x5.
Sinal do pino CLK I/O do SCD5583A, usado para sincronizar outras unidades.








terça-feira, 13 de novembro de 2018

Aproveitamento uma fonte de alimentação do PlayStation3 com medidor baseado no INA226.

       Ganhei um PS3 Fat estragado (RLOD) que não tem mais conserto. Nesta versão de hardware, a fonte vem em uma subcaixa de plástico. Ela tem entrada universal (100~240Vac) com PFC ativo e fornece até 23A @ 12Vdc. Tem ainda uma saída auxiliar de 5Vdc e um sinal de controle que habilita/desabilita a saída de 12 Vdc. Infelizmente não achei seu esquemático.

Placa da fonte vista de cima (ref. EADP-300AP).
Placa da fonte vista de baixo. Adicionei os postes metálicos de parafusos e os poste de plástico tive que furar a placa.

        Para aproveitar esta fonte, fiz uma placa que tem um PIC12F1840 para controlar a habilitação da saída de 12V bem como mostrar a medição de tensão e corrente realizada pelo INA226 em um display OLED de 128x64 pixels. O INA226 mede a corrente através de um shunt de 0,001Ω da própria fonte. Retirei os conectores das saídas de 12V e 5V. No lugar do conector de 12V foi soldado diretamente a fiação de saída e no lugar do conector de 5V, foi ligado um fio para alimentar esta placa de controle bem como o fio de controle da saída de 12V.

Detalhe mostrando a placa de controle fixada em um dos postes metálicos.
Placa de controle vista de lado.


Esquemático. Note que neste caso, o INA226 mede a corrente pelo lado baixo, razão pela qual não pode ser usado o INA219.


Detalhe mostrado os fios esmaltados atravessando a placa da fonte e que ligam os sinais IN+, IN-, GND e VBUS do INA226.
Detalhe mostrando onde foram ligados os sinais IN+, IN-, GND e VBUS do INA226.
Detalhe dos opto acopladores de controle, proteção e realimentação.
Foram usados vários fios para suportar 20A.
Fonte ligada mas com a saída desabilitada. Note que infelizmente o offset de corrente ficou bem alto devido a distância entre os terminais do INA226 e o shunt.

Saída habilitada e sem carga. A medição de tensão do INA226 é bem precisa mas o offset de corrente continua muito alto.
Com uma lâmpada dicróica ligada como carga. A diferença de tensão ocorre porque o múltimetro está medindo no conector de saída, depois do shunt.
Medindo a corrente com o múltimetro. Ao contrário da tensão, a corrente precisa ser calibrada através de uma constante em um dos registros do INA226.

Display Sharp LS013B4DN04 (Memory LCD) com o PIC16F1825.

        Em um post anterior, foi mostrado o Memory LCD LS013B4DN04 da Sharp. Notar que este display está obsoleto agora, tendo como alternativos LS010B7DH04 ou LS013B7DH03, ambos com 128x128 pixels, mas a lógica de acionamento e pinagem continuam as mesmas.
         Foi um grande desafio fazer este display funcionar com o PIC16F1825, pois este possui pouca memória RAM, insuficiente para criar um buffer de memória requerida para o uso deste display: 12 bytes para cada uma das 96 linhas totalizando 1.152 bytes. Para contornar esta falta de memória, em vez de armazenar no buffer o conteúdo do display, é armazenado somente os caracteres a serem mostrados. Usando uma fonte de 32x12 pixels para os caracteres, tem-se 3 linhas de 8 caracteres totalizando somente 24 bytes. A grande desvantagem deste método é a tremenda dificuldade para mostrar caracteres e gráficos ao mesmo tempo, mas para minhas aplicações já é aceitável mostrar somente caracteres. Tenho muitos projetos para este display devido ao seu consumo de energia ser absurdamente baixo.
        O display usado foi retirado da placa 430BOOST-SHARP96, que é usado nas placas de desenvolvimento dos microcontroladores MSP430 da Texas Instruments.

Placa 430BOOST-SHARP96 vista por cima sem display e com display.
Placa 430BOOST-SHARP96 vista por baixo sem display e com display.
       Para poder usar este display nos meus projetos, montei uma placa onde o mesmo é colado com fita dupla face no lado de cima e embaixo montei o conector ZIF de pitch 0,5mm e 10 pinos e um header de 7 pinos cuja pinagem é a mesma dos displays OLED com interface SPI.



Conector ZIP de pitch 0.5mm de 10 pinos, retirado de uma placa de notebook.
Placa montada com o display fixado por quatro quadradinhos de fita dupla face branca.
Placa vista por baixo. Note a resina epoxi cinza para fixar os fios esmaltados.
Pinagem de um display OLED SPI.

Esquemático. Notar que o sinal D/C não é usado e o RESET é ligado ao DISP, sendo que este sinal controla a habilitação do display (display on/off).



Display em ação com fonte 32x12. Note a orientação vertical dos caracteres.


sexta-feira, 5 de outubro de 2018

Display Siemens HDSP2114S com o MCP23017.

        O Siemens HDSP2114S é um display de matriz de LEDs 7x5 verdes de 8 caracteres que opera em 5V.
Display HDSP2114S visto de cima.
Display HDSP2114S visto de baixo.
Display HDSP2114S visto de lado.
       Assim como o display HPDL-1414 mostrado em um post anterior, este display também usa uma antiquada interface paralela. E novamente, para minhas aplicações, é bem mais útil usar uma interface I²C ou SPI. Para converter a interface paralela do HDSP2114S em I²C foi usado novamente o IC MCP23017 da Microchip. As saídas GPA7~GPA0 são ligadas às entradas D7~D0 do HDSP2114S e as saídas GPB7~GPB0 ligadas às A4~A0, CE, WR e RST.
Esquemático.
        O display HDSP2114S fica no lado superior. Ainda neste lado, está o IC MCP23017 e no lado inferior está um microcontrolador PIC de 8 pinos (como o PIC12F1822 ou PIC12F1840). Tem somente um header para interface I²C. Esta placa também pode ser usada sem o microcontrolador através do header I²C.

Lado inferior da placa, mostrando o microcontrolador e o header I²C.
Lado superior da placa, mostrando o IC MCP32017.
Placa com todos os componentes montados vista de lado. Ficou um sanduíche difícil de montar mas muito compacto.

Display HDSP2114S em ação com um acrílico fumê.
Mostrando a tensão do IC INA219.
Mostrando a corrente do IC INA219.
Sinal do pino CLK I/O do HDSP2114S, usado para sincronizar outras unidades.


terça-feira, 2 de outubro de 2018

Display HPDL-1414 com o MCP23017.

        Em um post anterior, foi mostrado o display HPDL-1414 ligado diretamente a um microcontrolador (PIC16F1933). Este tipo de display usa uma antiquada interface paralela já que na época em que foi lançado era uma interface muito comum. Para minhas aplicações, é bem mais útil usar uma interface I²C ou SPI. Para converter a interface paralela do HPDL-1414 em I²C foi usado o IC MCP23017 da Microchip. Ele possui duas portas de 8 vias: GPA7~GPA0 ligados a D6~D0 do HPDL-1414 e GPB7~GPB0 ligados a A1~A0 e WR de cada HPDL-1414.

Esquemático.
        A placa usa quatro displays HPDL-1414 no lado superior, totalizando 16 caracteres. No lado inferior, estão o IC MCP23017 e um microcontrolador PIC de 8 pinos (como o PIC12F1822 ou PIC12F1840). Tem dois headers: um para interface I²C e outra para programação/debug do microcontrolador. Esta placa pode ser usada também sem o microcontrolador através do header I²C.

Lado superior com os 4 displays HPDL-1414.
Lado inferior com o IC MCP23017 e PIC12F1822. O header branco é a interface I²C e o amarelo a interface de programação.
Placa vista de lado. É difícil montar assim mas fica bem compacto.
Display em ação. Foi fotografado com um acrílico fumê para melhorar a visualização.
Com mais iluminação mostrando o acrílico.
Mostrando tensão e corrente do IC INA219.