segunda-feira, 25 de junho de 2018

Adicionando os repositórios do RASPBIAN ao KALI LINUX para Raspberry Pi

Após instalar o KALI LINUX no Raspberry Pi 3, notei que não era possível instalar vários pacotes utilizando o comando apt-get install.
Para solucionar esse problema, adicionei o repositório do RASPBIAN na lista de repositórios do KALI.

  • Criar um novo arquivo /etc/apt/sources.list.d/raspbian.list
  • Adicionar essas duas linha (Fonte: https://www.raspbian.org/RaspbianRepository)
    • deb http://archive.raspbian.org/raspbian wheezy main contrib non-free
    • deb-src http://archive.raspbian.org/raspbian wheezy main contrib non-free 
  • Executar o seguinte comando para adicionar a chave pública do repositório:
    • wget https://archive.raspbian.org/raspbian.public.key -O - | sudo apt-key add -
  • Atualizar o APT:
    •  sudo apt update

quinta-feira, 8 de setembro de 2016

libqt4-core e libqt4-gui no Ubuntu 16.04 Xenial

No Ubuntu Xenial 16.04 as bibliotecas libqt4-core e libqt4-gui deixaram de existir, e foram substítuídas pelas libqtcore4 e libqtgui4. Porém, alguns programas antigos ainda possuem as libqt4-core e libqt4-gui como dependências. Para reverter isso, existe um script que altera as dependências de um pacote .deb qualquer, e com isso é possível substituir as dependências do pacote para libqtcore4 e libqtgui4.

Primeiro passo:
Crie um arquivo com o seguinte script e salve com o nome videbcontrol

#!/bin/bash

if [[ -z "$1" ]]; then
  echo "Syntax: $0 debfile"
  exit 1
fi

DEBFILE="$1"
TMPDIR=`mktemp -d /tmp/deb.XXXXXXXXXX` || exit 1
OUTPUT=`basename "$DEBFILE" .deb`.modfied.deb

if [[ -e "$OUTPUT" ]]; then
  echo "$OUTPUT exists."
  rm -r "$TMPDIR"
  exit 1
fi

dpkg-deb -x "$DEBFILE" "$TMPDIR"
dpkg-deb --control "$DEBFILE" "$TMPDIR"/DEBIAN

if [[ ! -e "$TMPDIR"/DEBIAN/control ]]; then
  echo DEBIAN/control not found.

  rm -r "$TMPDIR"
  exit 1
fi

CONTROL="$TMPDIR"/DEBIAN/control

MOD=`stat -c "%y" "$CONTROL"`
vi "$CONTROL"

if [[ "$MOD" == `stat -c "%y" "$CONTROL"` ]]; then
  echo Not modfied.
else
  echo Building new deb...
  dpkg -b "$TMPDIR" "$OUTPUT"
fi

rm -r "$TMPDIR"

Segundo passo:
Dê permissão de execução para o arquivo executando o comando: chmod +x videbcontrol

Terceiro passo:
Execute o script: sh videbcontrol seu_pacote.deb

Quarto passo:
(caso você tenha dificuldade para usar o editor vi , pesquise os comandos básicos para alterar, salvar e sair do vi) 
O script irá abrir o editor de texto vi com a linha de dependências do pacote em questão. Altere o nome das bibliotecas libqt4-core para libqtcore4 e libqt4-gui para libqtgui4. Após alterar basta fechar o vi e um novo arquivo .deb será criado com as dependências alteradas.

terça-feira, 5 de abril de 2016

Burning ATmega328P with 8MHz Internal Crystal

(this is a private POST just for me remember what are the FUSES that I used)

To burn the ATmega328P to run with 8MHz internal clock I'm using the ARDUINO PRO MINI bootloader.

Just changing the FUSE of the oscilator:

  • Low Fuse: E2
  • High Fuse: DA
  • Ext Fuse: 05
I'm using JTAGICE mkII-CN as programmer.

AVRDUDE command line:
  • /media/juliano/arduino-1.6.5-r5/hardware/tools/avr/bin/avrdude -C/media/juliano/arduino-1.6.5-r5/hardware/tools/avr/etc/avrdude.conf -v -patmega328p -cjtag2isp -Pusb -e -Ulock:w:0x3F:m -Uefuse:w:0x05:m -Uhfuse:w:0xDA:m -Ulfuse:w:0xE2:m
  • /media/juliano/arduino-1.6.5-r5/hardware/tools/avr/bin/avrdude -C/media/juliano/arduino-1.6.5-r5/hardware/tools/avr/etc/avrdude.conf -v -patmega328p -cjtag2isp -Pusb -Uflash:w:/media/juliano/arduino-1.6.5-r5/hardware/arduino/avr/bootloaders/atmega/ATmegaBOOT_168_atmega328_pro_8MHz.hex:i -Ulock:w:0x0F:m

segunda-feira, 4 de abril de 2016

Resolving the Error: avrdude: usbdev_open(): did not find any USB device "usb"

I was trying to burn a Atmega328P with a JTAGICE mkII-CN programmer and AVRDUDE.
After give all permissions to the JTAGICE mkII (click here to learn how) I was receiving the follow error:

avrdude: usbdev_open(): did not find any USB device "usb"

The error was because I was using the wrong programmer on AVRDUDE. I replaced the programmer for "jtag2isp" and worked like a charm.

The final AVRDUDE command line still like this:

avrdude -C/media/Linux/arduino-1.6.5-r5/hardware/tools/avr/etc/avrdude.conf -v -patmega328p -cjtag2isp -Pusb -Uflash:w:/media/Linux/arduino-1.6.5-r5/hardware/arduino/avr/bootloaders/atmega/ATmegaBOOT_168_atmega328_pro_8MHz.hex:i -Ulock:w:0x0F:m 

quarta-feira, 28 de outubro de 2015

Installing and giving permission to JTAGICE mkII and others USB programmers on Linux

If you're receiving errors like these:
avrdude: usbdev_open(): cannot open device: Permission denied
avrdude: usbdev_open(): did not find any USB device "usb"


Maybe you have to give the right permission for your programmer.
In my case I'm using the JTAGICE mkII-CN on USB.

First of all, check if your JTAG was recognized:
  • Open the terminal and type lsusb 

Note that in my case was found on BUS 002 and DEVICE 004, so, let's check the permissions of this DEVICE:
  • On the terminal type: ls -l /dev/bus/usb/002/004
Note that in my case I don't have permission to this device. So, let's create a UDEV rules for a permanent permission:

  • Create a new file named 60-avrisp.rules on the folder /etc/udev/rules.d/ with this content:
SUBSYSTEM!="usb_device", ACTION!="add", GOTO="avrisp_end"
# JTAGICE mkII
ATTR{idVendor}=="03eb", ATTR{idProduct}=="2103", GROUP="dialout", MODE="0666"
# AVRISP mkII
ATTR{idVendor}=="03eb", ATTR{idProduct}=="2104", GROUP="dialout", MODE="0666"
# Dragon
ATTR{idVendor}=="03eb", ATTR{idProduct}=="2105", GROUP="dialout", MODE="0666"
LABEL="avrisp_end"

  • Now, let's reload the UDEV rules. Open the terminal and write:
sudo udevadm control --reload-rules
sudo service udev restart
sudo udevadm trigger

  •  Unplug the USB device and plug again
  •  Let's check our USB devices again typing lsusb


 Note that in my case now was found on BUS 002 and DEVICE 009 (changed from 004 to 009), so, let's check the permissions of this DEVICE again:
  • On the terminal type: ls -l /dev/bus/usb/002/009

 PERFECT!
 Now let's check if our user are in the "dialout" group
  • on the Terminal write groups and check if if you're at dialout group


If didn't appears the dialout group, add your user to this group typing on the Terminalsudo adduser yourusername dialout and reboot your computer

quarta-feira, 30 de setembro de 2015

Slic3r GUI Error OpenGL.so libglut.so Linux Ubuntu

If you're receiving a error message like this:

Can't load '/folder/Slic3r/lib/vrt/9e109cfe461eb9a764d58156ba7bc844/OpenGL.so' for module OpenGL: libglut.so.3: Não é possivel abrir arquivo de objetos compartilhado: Arquivo ou diretório não encontrado at /DynaLoader.pm line 157.
 at /folder/RepetierHost/Slic3r/lib/std/Slic3r/GUI/Plater/2DToolpaths.pm line 120
Compilation failed in require at /folder/Slic3r/lib/std/Slic3r/GUI/Plater/2DToolpaths.pm line 120.
BEGIN failed--compilation aborted at /folder/Slic3r/lib/std/Slic3r/GUI/Plater/2DToolpaths.pm line 120.
Compilation failed in require at /folder/Slic3r/lib/std/Slic3r/GUI.pm line 16.
BEGIN failed--compilation aborted at /folder/Slic3r/lib/std/Slic3r/GUI.pm line 16.
Compilation failed in require at (eval 71) line 1.



Just open you terminal and write:
  • sudo apt-get install freeglut3
  • Just say "Thanks" on Comments if worked for you :o) 

quarta-feira, 12 de agosto de 2015

Programa de RESET para impressora Epson TX430w

EPSON Adjustment Program (AdjProg.exe) é o programa responsável por fazer o RESET dos contadores da impressora EPSON TX430w.
Nesse post, estou documentando como eu fiz a limpeza das almofadas da impressora EPSON TX430w.

Minha impressora começou a mostrar a seguinte mensagem de erro:


  • As almofadas de tinta da impressora estão no fim da sua vida útil.
  • Uma almofada de tinta necessita manutenção. A almofada de tinta está no final da sua vida útil. Desligue o produto e entre em contato com a Epson para obter suporte.
  • Uma almofada de tinta está chegando ao fim da sua vida útil. Entre em contato com a Epson para obter suporte técnico.
  • Fim da vida útil de componentes.
  • É necessário á substituição de componentes interno.


No vídeo abaixo eu mostro como eu abri a minha impressora EPSON TX430w e limpei as almofadas de tinta.


Depois, foi necessário RESETAR os contadores e EEPROM da impressora, para que ela voltasse a funcionar com a almofada limpa.

Para isso, você precisa fazer download do programa de RESET da EEPROM da EPSON, chamado  EPSON Adjustment Program. 
Para os Modelos TX430w, o programa está disponível aqui: 

Download RESET TX430W (senha: nossorepositorio)

Com a IMPRESSORA LIGADA abra o programa e selecione a opção WASTE INK PAD COUNTER e clique em OK conforme figura abaixo:


Após clicar em OK, marque as opções MAIN PAD COUNTER e clique no botão INITIALIZATION conforme figura abaixo:


Desligue a impressora e após isso clique no botão FINISH.