Antes de tudo entendam que nunca possui um computador da maçã, portanto aqui são apenas observações de um leigo.
Ganhei um Apple A1534 emc 2991, a principio não reconhece o HD e esta com um pequeno mau contato na entrada USB tipo C, que serve tanto para carregar quanto para conectar dispositivos.
Apesar da entrada para o carregador ser do tipo USB C a tensão não é de apenas 5V como os carregadores de celular, o carregador deve fornecer no minimo 15V e ter uma boa potência, com a aquisição de um celular novo o carregador dele funciona para carregar o Mac.
Com a ajuda de um amigo que conhece bastante o mundo da maçã, peguei emprestado o carregador dele e ao menos consegui carregar o Macbook para verificar algumas informações que compartilho aqui.
Algumas telas que são possíveis acessar:
Tela de instalação do macOS Sierra
Se assim como eu você não é familiarizado com os nomes das versôes do macOS sugiro ver aqui ou aqui, para constatar que esta Sierra é a versão 10.12 de 2016.
Tela de inicio da instalação
Mensagem de erro, não detecta HD
Tela de utilitários do macOS
Depois de entender que o problema é não reconhecer o HD do dispositivo, a opção mais simples para verificar se não tem mais nenhum outro problema é usar uma distribuição Linux Live-USB com um adaptador de USB-C para USB convencional.
Usei a distribuição que já tinha gravada em um pendrive cartão do Senac (Como visto na imagem), a distribuição é o Linux Mint Cinnamon 21.3.
Para verificar a configuração do hardware usei o modo gráfico, porém para tirar o print screen foi pelo terminal.
Print screen do Macbook com linux Mint em live USB
O NodeMCU esp12, combina o chip ESP8266 e a interface de comunicação usb-serial com um regulador de tensão 3.3 V. Sua programação pode ser realizada utilizando LUA ou a IDE do Arduino.
O NodeMCU vem com antena de wifi embutida e conexão micro-usb, possui 11 pinos I/Os.
O seu controlador é o ESP-12F aumentando o alcance da sua antena wifi.
Ao abrir a caixa de seleção, no campo de procura digite esp8266 e selecione a opção esp8266 by ESP8266 Community
Ou se preferir ver o vídeo:
Consumo do ESP8266
Como o Hello World! das plaquinhas é o Blink (piscar LED), vamos iniciar o consumo com o LED azul piscando no exemplo básico que já acompanha a biblioteca padrão, para não ficar com dúvidas tem até o print screen do script no IDE do Arduino.
Print screen do Arduino IDE com o exemplo do Blink (pisca LED)
O consumo no Blink é tão baixo que o meu medidor não saiu do 0.
Medição do NodeMCU executando um blink dos exemplos básicos
Continuando nos exemplos de biblioteca padrão, desta vez vamos para o WiFiScan, e ao abrir o monitor serial não se esqueça de alterar a velocidade para 115200 (seta vermelha), caso contrário fica ilegível como nas primeiras linhas desta tela da imagem.
Print screen do exemplo do WiFiScan no Arduino IDE com o Monitor Serial
Com o uso do WiFi o consumo já aumenta, e vai para a casa dos 60 mA.
Consumo do NodeMCU executando o script de exemplo WiFiScan
O ABC Makerspace tem uma impressora 3D com software proprietário, é a Cube 3D Printer 2nd Generation (manual da 3rd Generation), porém precisamos coloca-la em funcionamento, de preferencia com GNU/Linux, e para isso vou colocar as principais informações do manual aqui para depois pesquisar alternativas.
Visão geral da impressora 3D Cube 2ª Geração - reprodução do manual
Como tivemos mudanças de local e ficamos com as portas fechadas por 3 anos é preciso juntar todas as peças que fazem parte deste equipamento.
Medidas da impressora 3D - reprodução do manual
Existem diversos acessórios que acompanham a impressora, é necessário encontrar a maioria deles.
Peças que acompanham a impressora 3D
Existem alguns pré requisitos para o funcionamento da impressora 3D
Pré requisitos para funcionamento da impressora 3D Cube
Infelizmente só tem suporte nativo para ®windows 7 ou XP SP3 e Mac OS, a intenção agora é fazer funcionar com GNU/Linux.
Instruções de instalação do software
Preciso encontrar a pinagem correta de alimentação para fazer a conexão com a fonte corretamente.
Etiqueta da Cube 3D Printer 2nd Generation do ABC Makerspace
Aparentemente ela não esta danificada, a aparência esta bem aceitável.
Preciso encontrar a fonte, mas a principio farei o teste com a fonte de um PC adaptada e depois relato aqui os resultados.
Caso conheça alguma solução de software aberto, por favor comente abaixo.
É uma das plaquinhas mais baratas e úteis para iniciar e aprender hardware hacking.
Conversor USB Serial que usarei para extrair informações de alguns dispositivos
A placa da FTDI (Future Technology Devices International) FT232RL é um conversor serial para USB.
Conversor USB Serial que usarei para extrair informações de alguns dispositivos
Ao adquirir verifique quantos pinos existem na placa, o recomendado é a de 6 pinos, que já possuem o DTR (Data Terminal Ready) e o CTS (Clear To Send).
Pino
In / Out
Descrição
DTR
Output
Data Terminal Ready
RX
Input
Serial Receive
TX
Output
Serial Transmit
Vcc
+
CC 3,3V ou 5V
CTS
Input
Clear To Send
Gnd
-
Ground 0V
Ligação
Na hora de ligar o RX (RX - Serial Receive - Input) lembre-se de coloca-lo no TX (TX - Serial Transmit - Output) do dispositivo, e ao ligar o pino TX coloque a ponta no RX do dispositivo.
Um outro detalhe que não pode esquecer é de confirmar a tensão que sai do dispositivo pelo TX (TX - Serial Transmit - Output), se é de 5Vcc ou de 3,3Vcc, e mudar o jumper, que neste caso funciona como uma "chave seletora de voltagem", para a tensão correspondente.
Outra forma de usar o Conversor serial USB já foi explicada para gravar firmware no ESP01.
Esquema de ligação do ESP01 com o Conversor - Modificado a partir de Fernando K
A principio usaremos apenas o terra (Ground), transmissor (TX - Serial Transmit - Output) e receptor (RX - Serial Receive - Input) para fazer a "leitura" das informações dos dispositivos conectados através do SSH (Secure Shell), e para os usuários de ®windows podem usar o Putty.
Algumas informações que podem ser coletadas com o conversor serial/USB em dispositivos de rede:
Total Flash size
Chip ID
Total Memory
Board IP
Host IP
Number of MAC Adress
Base Mac Adress
PSI Size
Versão do Busybox
Esse assunto será abordado com mais detalhes em futuro post sobre BusyBox.
Como sou um excelente programador (#SQN), toda essa parte é na base do Ctrl+C e Ctrl+V com poucas adaptações das fontes citadas, e na parte de desenvolvimento de placas fiz apenas algumas simples no século passado, por isso optei na substituição algo que usei bem em 2017, uma cortadora laser.
Primeira versão do meu protótipo de badge
Essa versão já foi aposentada e estou trabalhando na segunda, substituindo por uma placa universal o MDF e os parafusos por barra de pinos.
Protótipo com parafusos M3 e espaçadores feitos com canudos
Acrílico para fechar a parte de cima https://hackaday.com/2022/08/21/an-ascii-terminal-like-its-1974/
Material
Jumpers fêmea-fêmea
ESP32 DevKitV1 Display 2.4 TFT SPI 240 X 320 com touch
Célula de 3,7 V 18650
Placa MDF de 3mm espessura, 85mm largura, 150mm altura
Lay-out
Primeiro é preciso decidir a disposição em que os componentes ficarão, como serão com jumpers de 10 cm então pensei em deixar o ESP32 em uma extremidade e o display na outra, com a bateria no meio, porém vendo diversas placas verifiquei que pelo peso o melhor seria deixar a bateria na parte de baixo com o display na parte superior e no centro o ESP32.
Pensando em qual posição ficaria melhor para cada componente
Tem de ser com 3 encaixes para o cordão, um centralizado e 2 nas bordas, para ter opção de escolha de como deixar pendurado.
Para facilitar o meu entendimento da ligação planilhei as pinagens do display, cores dos fios usados no protótipo e os pinos usados no ESP32.
Observe que os 3 primeiros são na ordem, no 4º e 5º pinos são invertidos no ESP32 DEVKIT V1,
No começo não usarei touch screen e nem o cartão SD, isso ficara para um futuro próximo.
Montagem
Conforme detalhado anteriormente em Display 2.4 TFT SPI 240 X 320 com touch depois de identificado o drive do display, que no caso do meu é ILI9341 será necessário calibrar o touch e trocar os valores exibidos no programa.
Software
Além do Arduino IDE, precisamos das bibliotecas TFT_eSPI
Esta é uma das menores placas do mundo maker com microcontrolador, e possibilita o uso do Arduino IDE para programar "diretamente".
Frente e verso da plaquinha além de alguns nomes que ficou conhecida.
ESP-01 , Módulo ESP8266 WiFi ou ainda Ponte Serial Wifi, qualquer um desses nomes serve para esta plaquinha, que para saber mais detalhes dos componentes do módulo ESP8266 basta conferir na imagem.
Componentes do módulo ESP8266 Wifi Reprodução: Pinterest
Apenas para fins históricos e curiosidade, no principio do ESP8266 usavam comandos AT para programar.
Atenção:
Existem muitas diferenças entre o módulo ESP8266 e o nodeMCU ESP8266, fique atento ao comprar.
Comunicação com o PC
Podemos usar o Conversor Serial/USB para efetuar a comunicação com o PC. Se o seu for do mesmo modelo com a chave seletora de tensão basta seguir o vídeo Gravando no ESP-01, ou seguir o esquema da imagem.
Fique atento que são necessários 2 jumps, um no VCC e outro no GND, além de mudar o jumper para a tensão de 3,3 V.
Esquema de ligação do ESP01 com o Conversor - Modificado a partir de Fernando K
Por curiosidade não é possível usar o Spacehuhn's esp8266_deauther project que é exclusivo para o ESP8266 conforme explicado em mais detalhes neste texto, mas inspirou outros para desenvolver o ESP32 Marauder.
Preciso fazer um projeto que esta empacado a alguns anos e já vou aproveitar para tirar poeira da minha rasp e praticar um pouco.
Neste texto abordo algumas coisas como:
consumo
acesso remoto por SSH
primeiro acesso por SSH
alterar senha
lista de serviços executados
alterar fuso horário
Python, pip e Scapy
Raspberry Pi Model B Rev 2 com 512Mb RAM e Raspberry Pi OS Lite
Se assim como eu você deixou seu raspberry antigo encostado por algum tempo e não tiver nada de importante salvo no cartão, instale outro sistema do zero, será muito mais rápido que aguardar mais de duas horas para atualizar.
O sistema utilizado depois de aguardar toda a atualização, é o Raspberry Pi OS Lite
Release date: September 6th 2022
System: 32-bit
Kernel version: 5.15
Debian version: 11 (bullseye)
Tamanho: 338MB
Como curiosidade na lista de MAC Address Vendors ao procurar o MAC da minha rasp o retorno é Raspberry Pi Foundation.
Para saber o MAC Address ou o IP do rasp basta usar o ifconfig, onde o resultado para o IP é indicado como inet e o resultado para o MAC Address é indicado como ether.
Resultado do comando ifconfig no Raspberri Pi OS Lite
Consumo
Como na época do RPi01 - Revivendo um Raspberry Pi B de 1ª Geração eu ainda não tinha o USB Color Display Tester aproveitei para fazer a medição do meu Raspberry Pi Model B Rev 2 com 512Mb RAM e usando o sistema Raspberry Pi OS Lite, com um carregador de celular genérico, a corrente variava em torno de 0,450A chegando algumas vezes a picos de 0,51A com média de 4,86V, gravei um vídeo durante a inicialização para ver a variação. Quando em repouso, sem nenhum programa executando ele consome 0,4A em 4,87V.
Como este é um hardware antigo e instalei um sistema sem modo gráfico, além de usar para alguns experimentos na minha rede, não tenho necessidade de teclado, mouse e monitor ligados na rasp, então para manuseá-la preciso habilitar o acesso remoto.
SSH - Acesso Remoto
Para habilitar o SSH na rasp fique atento na versão do seu hardware, pois algumas opções podem ser diferentes, as imagens apresentadas são do antigo Raspberry Pi Model B Rev 2. Primeiro é preciso entrar nas configurações com:
Depois de abrir o menu selecione a opção 3 Interface Options Configure connections to peripherals e depois confirme com a tecla enter.
Na segunda tela selecione I2 SSH Enable/Disable remote command line access using SSH e depois confirme com a tecla enter.
O sistema ainda é legal de perguntar se realmente deseja habilitar o SSH com senhas padrão ou fracas, confirme pressionando enter novamente, que daqui a pouco mudaremos a senha.
Depois da confirmação o sistema envia uma mensagem avisando que o SSH esta habilitado.
Após isso ele retorna para o menu inicial das configurações, para sair basta selecionar o Finish e pressionar o enter.
Primeiro Acesso
Depois de habilitado o SSH, para acessar pela primeira vez com o ®windows é preciso usar o Putty, e com o Linux é bem simples, depois de abrir o terminal, basta digitar ssh seguido do nome de usuário, sinal de arroba e endereço IP da máquina, que descobrimos usando oifconfig.
Apenas para deixar registrado, uma tentativa de acesso ao rasp quando esta indisponível.
Senha
Para alterar a senha padrão ou uma senha fraca do usuário basta usar o comando passwd, ele vai pedir para digitar a senha atual, depois a nova senha e para confirmar a nova senha, ao final dará a mensagem que a senha foi atualizada.
O comando whoami ajuda a identificar qual usuário esta logado no momento.
Lista de Serviços
Ao pedir para listar os serviços executados pelo Raspberry Pi OS Lite no meu Raspberry Pi Model B Rev 2, ele não tem nada conectado além da fonte de alimentação, cartão SD e o cabo de rede.
Fuso Horário
No caso do meu rasp o fuso horário é importante estar correto, pois por padrão ele vem no europeu, então para acertar utilizei novamente o comando raspi-config.
Na primeira tela selecionei 5 Localisation Options Configure language and regional settings, depois a tecla enter para selecionar.
Para alterar o fuso horário seleciono L2 Timezone Configure time zone, e seleciono o Select com a tecla Tab e novamente aperto a tecla enter para confirmar.
Como não faltei na aula de geografia, a opção que mais se aproxima aqui é America, e confirmo com a tecla Tab o OK e depois tecla enter.
Como estou próximo de São Paulo esta é a minha opção e confirmo.
Depois ele mostra rapidamente a confirmação do horário local e do universal.
Após isso ele retorna para o menu inicial das configurações, para sair basta selecionar o Finish e pressionar o enter.
Para confirmar as atualizações e configurações preferi reiniciar o rasp, e para isso utilizei o comando reboot, lembre-se que é preciso usar o sudo.
Python
Para o projeto que farei com esta rasp vou precisar automatizar algumas coisas e para isso preciso verificar a versão do python no sistema, basta usarmos python3 --version e o resultado é:
Para facilitar essas automatizações ainda será preciso usar o pip