Mostrando entradas con la etiqueta Fedora. Mostrar todas las entradas
Mostrando entradas con la etiqueta Fedora. Mostrar todas las entradas

martes, 23 de agosto de 2016

Definiendo pines para GAL16V22 de Lattice

Esta prueba la hice desde una box Fedora, instalando el software de Lattice para programar sus dispositivos Lógicos.

En ABEL, la definición de los pines a utilizar cuando se programa una GAL, se hace desde el inicio, sin embargo, en VHDL la cosa no está tan simple, leyendo varios foros, encontre que habria que usar unas sentencias pero no se indica de forma muy genérica.

El código que se presenta a continuación, es un divisor de frecuencias, que tiene dos entradas y una salida, nótese que en este caso, se asigna al pin 6 la entrada de reset para el reloj, y que la declaración de los atributos LOC se hace en el ámbito del instanciamiento de la Entidad que se crea.

Esto solo lo he probado con Lattice y una GAL22V10 simulada en Proteus.

-------------------------------------------------------------------------------
--
-- Company :
-- Engineer: miguel
--
-- Create Date:    04/11/2015 04:50:28
-- Project Name:   clk381Hz
-- Module Name:    clk381Hz.vhd
-- Description:
--
-- Additional Comments:
--
-------------------------------------------------------------------------------

library IEEE;
use IEEE.std_logic_1164.all;  -- Para std_logic
use IEEE.numeric_std.all;     -- Para unsigned

entity clk381Hz is
    Port (
        entrada: in  STD_LOGIC;
        reset  : in  STD_LOGIC;
        salida : out STD_LOGIC
    );

attribute LOC: string;
attribute LOC of reset : signal is "6";


end clk381Hz;



architecture arq1 of clk381Hz is
    signal temporal: STD_LOGIC;
    signal contador: integer range 0 to 250 := 0;
begin
    divisor_frecuencia: process (reset, entrada) begin
        if (reset = '0') then
            temporal <= '0';
            contador <= 0;
        elsif (entrada 'event and entrada = '1') then
            if (contador = 250) then
                temporal <= NOT(temporal);
                contador <= 0;
            else
                contador <= contador+1;
            end if;
        end if;
    end process;
    
    salida <= temporal;
end arq1;

sábado, 13 de agosto de 2016

Fritzing Versión 0.9.3no inicia en Fedora 23, 24 y 25 (Actualizado)

Al desempaquetar la nueva versión de Fritzing en Fedora 23, y ejecutar el binario, me indica el siguiente error

Fritzing: error while loading shared libraries: libcrypto.so.1.0.0: cannot open shared object file: No such file or directory

Este error sale si, no tienes instaladas las openssl-devel en tu sistema, sin embargo si lo tengo instalado, el problema surge como indicación de Bug en https://github.com/fritzing/fritzing-app/issues/3245, donde se indica que hay una librería que debe ser borrada de la carpeta lib, en mi caso tuve lo siguiente

lib]$ ls libg*
libgit2.so  libgit2.so.0.23.4  libgit2.so.23

Procedi a borrar todo lo indicado en la pagina de issues de github
lib]$ rm libgit2.so*

finalmente, revisar si tenia instalado, ademas de openssl-devel, libgit2-devel
realizado esto, Fritzing vuelve a correr.
***************************************************************************
En Fedora 25 Fritzing requiere de libgit2.so.23 y la Fedora contiene libgit2.so.24 por lo cual no responde de forma adecuada marcando el siguiente error


./Fritzing: error while loading shared libraries: libgit2.so.23: cannot open shared object file: No such file or directory

Para arreglarlo se tiene que crear un enlace simbólico, de este modo Fritzing vuelve a funcionar


$sudo ln -s /lib64/libgit2.so.0.24.6 libgit2.so.23

La fuente original la puedes consultar en:
https://github.com/fritzing/fritzing-app/issues/3289

viernes, 14 de agosto de 2015

USB blaster clon en Fedora 22 como usuario normal

Ya con mi máquina funcionando de nuevo veo con agrado que Fedora ha mejorado mucho desde que la deje, po cuestiones de problemas con los paquetes y las actualizaciones.

Ahora expongo el caso de tener el programador USB blaster funcionando muy bien en mi box con Fedora 22

Primero, experimenté un poco con el script que hice para hacer andar mi usb blaster en Manjaro, y funcionó muy bien, sin embargo me pregunte si habría otra forma mas sencilla de hacer funcionar mi programador para la CPLD que voy a usar para dar mis clases de electrónica digital, sin verme en la necesidad de voltaer hacia la ventana.

Pues, siempre si la encontré en un post viejito que tenia para hacer andar mi programdor para AVR, el USBASP y para el USB blaster en Manjaro, pero que requería de añadir mi usuario al grupo plugdev, así como al grupo users.

Sin embargo, no me encontré al dichoso grupo en la nueva Fedora, entonces después de googlear un poco, encontré este link, donde ví un archivo similar al de mi post para AVR, pero para el USB blaster de Altera.

# USB-Blaster
SUBSYSTEM=="usb", ATTR{idVendor}=="09fb", ATTR{idProduct}=="6001", MODE="0666"
SUBSYSTEM=="usb", ATTR{idVendor}=="09fb", ATTR{idProduct}=="6002", MODE="0666"
SUBSYSTEM=="usb", ATTR{idVendor}=="09fb", ATTR{idProduct}=="6003", MODE="0666"
SUBSYSTEM=="usb", ATTR{idVendor}=="09fb", ATTR{idProduct}=="6010", MODE="0666"
SUBSYSTEM=="usb", ATTR{idVendor}=="09fb", ATTR{idProduct}=="6810", MODE="0666"

Bien, solo abrí el editor pluma con sudo y se guardo con el nombre

sudo pluma /etc/udev/rules.d/51-usbblaster.rules

Y pues, escrito así, sin la directiva GROUP de los post anteriores, el programador funciona correctamente.

miércoles, 12 de agosto de 2015

Escribiendo desde Fedora 22

Muy bien, pues ya instale Fedora 22 en mi pc, y pues ahi va jalando de a pocos; como principal ventaja, es que ya la habia manejado con anterioridad y que, algunos de los programas instalados con Manjaro, aqui están, funcionando de nuevo.

Definitivamente, la herramienta Yum extender con dnf se tarda mucho, para mi gusto.

Seguiré probando.

miércoles, 2 de octubre de 2013

nmap para detectar OS de una LAN

Bueno esta es una entrada muy corta, se trata de poner el comando para Linux donde se usa nmap: [miguel@dhcppc6 ~]$ sudo nmap -O --osscan-guess --fuzzy 192.168.1.67 Starting Nmap 6.40 ( http://nmap.org ) at 2013-10-02 22:01 CDT Nmap scan report for 192.168.1.67 Host is up (0.010s latency). All 1000 scanned ports on 192.168.1.67 are closed MAC Address: A0:4E:04:9C:29:91 (Nokia) Too many fingerprints match this host to give specific OS details Network Distance: 1 hop OS detection performed. Please report any incorrect results at http://nmap.org/submit/ . Nmap done: 1 IP address (1 host up) scanned in 8.79 seconds En este caso lo use para ver cual era el SO que está conectado a mi router, es un celular Nokia (de mi hermana) En cuanto a nmap -O se usa para habilitar la detección de SO --osscan-guess --fuzzy Se usa para aproximar los resultados del SO cuando el SO que se ve en tu red Local

sábado, 21 de septiembre de 2013

Mi archivo 41-microchip.rules Fedora 19 x64

El siguiente es mi archivo 41-microchip.rules, el uso de este archivo es con el fin de conectar los siguientes programadores y ser accedidos como usuario normal a través del software Piklab (http://piklab.sourceforge.net/) :
  1. Pickit2 clon con firmware  2.x
  2. ICD2 clon
  3. Pinguino PIC18F2550  
Aquí mi archivo que está ubicado en /etc/udev/rules.d

# sudo cp 41-microchip.rules /etc/udev/rules.d/
# sudo usermod -a -G plugdev $USER
#
# Pinguino8 (PIC18F)
ATTR{idVendor}=="04d8", ATTR{idProduct}=="feaa", MODE="0660",GROUP="plugdev"
#
# Pinguino32 (PIC32MX)
ATTR{idVendor}=="04d8", ATTR{idProduct}=="003c", MODE="0660",GROUP="plugdev"
#
# Pickit 2
ATTR{idVendor}=="04d8", ATTR{idProduct}=="0033", MODE="0660",GROUP="plugdev"
#
# Pickit 3
ATTR{idVendor}=="04d8", ATTR{idProduct}=="900a", MODE="0660",GROUP="plugdev"
# ICD2
ATTR{idVendor}=="04d8", ATTR{idProduct}=="8000", MODE="0660",GROUP="plugdev"
# ICD21
ATTR{idVendor}=="04d8", ATTR{idProduct}=="8001", MODE="0660",GROUP="plugdev"

sábado, 17 de agosto de 2013

Error al compilar programas con puerto serial en Pinguino X.4

En el programa X.4 viene muchos programas de ejemplo, uno de ellos dentro de la carpeta examples/08.interrupt/Counter.pde.

En este código se usa el contador 3 del microcontrolador pic18F2550, una señal aplicada al pin 10, incrementará el valor del registro 3. y enviara por los pines del puerto serial, el numero que contiene el registro.

Sin embargo, al tratar de compilar este archivo, el X.4 enviará un mensaje de error, donde indica que existe un bit denominado RC1IF que no está definido. El problema está en la línea 98 del archivo x.4/p8/pinguino/core/serial.c

//PIR1bits.RC1IF = 0; // Clear interrupt flag

de acuerdo al datasheet en la página 147 del microcontrolador pic18F2550 el bit del registro PIR1, se denomina RCIF, por lo que es conveniente cambiar esta línea por lo siguiente:

PIR1bits.RCIF = 0; //17 de Agosto de 2013

de acuerdo al data del 2550 Este es el resultado que se obtiene

File: /home/miguel/opt/x.4/examples/08.Interrupt/Counter.pde
compiling... Compilacion completada
code size: 10626 / 24575 bytes (43% used)
1.3107790947 segundos (Tiempo de proceso)
Pinguino not found Is your device connected and/or in bootloader mode ? Pinguino found Bootloader v2.12
Writing ...
Counter.hex successfully uploaded

miércoles, 10 de julio de 2013

Problema scilab ./scilab-bin: error while loading shared libraries: libscilab.so.0:

En Fedora 19 de 32bits, viene por defecto en los repositorios SCILAB 5.4.1, sin embargo, si se desea instalar desde el paquete rpm que viene en la pagina web de Scilab. Solo se debe descargar y descomprimir en una carpeta en específico (en mi caso, cree un directorio denominado opt dentro de mi $HOME) El binario ejecutable está en la ruta /home/miguel/opt/scilab-5.4.1/bin sin embargo al tratar de ejecutar el binario, se marca el siguiente error (solo es visible cuando se ejecuta desde consola)
./scilab-bin 
./scilab-bin: error while loading shared libraries: libscilab.so.0: cannot open shared object file: No such file or directory

de acuerdo a la página https://bugs.launchpad.net/ubuntu/+source/scilab/+bug/560283
se debe verificar que /usr/bin/scilab contiene
 
LD_LIBRARY_PATH=/usr/lib/scilab/:/usr/lib64/scilab/:$LD_LIBRARY_PATH

Para modificar el valor de la variable de entorno (Para saber mas: http://landerpfc.wordpress.com/2010/09/28/variables-de-entorno-en-gnulinux/)
Se debe dar la ruta a la librería donde se encuentra el archivo libscilab.so.0, que está en:
$HOME/opt/scilab-5.4.1/lib/scilab/

Entonces ahora se teclea la siguiente instrucción:
[miguel@MalillaReturns bin]$ export LD_LIBRARY_PATH=/home/miguel/opt/scilab-5.4.1/lib/scilab/
[miguel@MalillaReturns bin]$ echo $LD_LIBRARY_PATH
/home/miguel/opt/scilab-5.4.1/lib/scilab/
Sin embargo al tratar de ejecutar el entorno se tiene el siguiente error:
[miguel@MalillaReturns bin]$ ./scilab-bin 
./scilab-bin: error while loading shared libraries: libhdf5.so.6: cannot open shared object file: No such file or directory

Este archivo se puede localizar con el comando find, de la siguiente forma
[miguel@MalillaReturns ~]$ find -iname libhdf5.so.6
./opt/scilab-5.4.1/lib/thirdparty/libhdf5.so.6
Con esta dirección, podemos agregar un dato mas a la variable de entorno
[miguel@MalillaReturns bin]$ export LD_LIBRARY_PATH=$HOME/opt/scilab-5.4.1/lib/thirdparty/:$LD_LIBRARY_PATH
[miguel@MalillaReturns bin]$ echo $LD_LIBRARY_PATH
/home/miguel/opt/scilab-5.4.1/lib/thirdparty/:/home/miguel/opt/scilab-5.4.1/lib/scilab/
Pero de nueva cuenta se tiene un error.
[miguel@MalillaReturns bin]$ ./scilab-bin 
./scilab-bin: error while loading shared libraries: libjava.so: cannot open shared object file: No such file or directory
De igual forma la libreria libjvm.so. Mediante el comando find, se encuentra la ruta de la librería solicitada por el programa
[miguel@MalillaReturns ~]$ find -iname libjava.so
./opt/scilab-5.4.1/thirdparty/java/lib/i386/libjava.so
La libreria libjvm.so se encuentra en:
[miguel@MalillaReturns ~]$ find -iname libjvm.so
./opt/scilab-5.4.1/thirdparty/java/lib/i386/server/libjvm.so
./opt/scilab-5.4.1/thirdparty/java/lib/i386/client/libjvm.so

En consecuencia, se debe agregar esta nueva ruta al LD_LIBRARY_PATH
[miguel@MalillaReturns bin]$ export LD_LIBRARY_PATH=$HOME/opt/scilab-5.4.1/thirdparty/java/lib/i386/:$HOME/opt/scilab-5.4.1/thirdparty/java/lib/i386/client/libjvm.so:$LD_LIBRARY_PATH
En resumen, se puede decir que la definición de la variable de entorno
[miguel@MalillaReturns bin]$ export LD_LIBRARY_PATH=$HOME/opt/scilab-5.4.1/lib/scilab/:$HOME/opt/scilab-5.4.1/lib/thirdparty/:$HOME/opt/scilab-5.4.1/thirdparty/java/lib/i386/client/:$HOME/opt/scilab-5.4.1/thirdparty/java/lib/i386/
Pero esto, nos deja ver el siguiente error
[miguel@MalillaReturns bin]$ ./scilab-bin 
SCI environment variable not defined.
Ahora se debe definir la variable de entorno SCI
[miguel@MalillaReturns bin]$ export SCI=/home/miguel/opt/scilab-5.4.1/share/scilab
de esta forma ya debe funcionar la instalación de SCILAB
Nota. LA Libreria de lógica difusa que se ve se instala mediante ATOMS.

jueves, 4 de julio de 2013

Instalando moderncv con Lyx 2.0 en Fedora 18

Después de un rato de estar tratando de elaborar un CV con Lyx, en Fedora 18, por fin lo logré, pero no solo conviene instalar lyx con yum, sino que habrá que agregar unos paquetes extras, la información para la elaboración del CV la retomé de los siguientes blogs
Saint blog de Cristián Maureira Fredes, en http://saint.archlinux.cl/2008/10/moderncv-curriculum-vitae-con-latex/
jcGeorge's Blog de Jorge Valverve Rebaza, en http://jc-info.blogspot.mx/2009/04/curriculum-elegante-con-latex.html
y finalmente no podrìa faltar la apreciable fuente de
Blog de un bioinformatiquillo de Francisco Dubouis, en https://bioinformatiquillo.wordpress.com/manual-latex-con-lyx/clases-de-documento/
Bien la cosa es que la clase moderncv, que es la que se usa para generar el CV en Lyx, no se encuentra disponible de primera instancia.
indicando que faltan los archivos moderncv.cls y suffix.sty para compilarse de forma adecuada
para instalar la clase moderncv, primero se va a ejecutar la orden
# cd /usr/share/texmf/tex/latex

y ahora una vez ahi se va a ejecutar el siguiente codigo
wget http://tug.ctan.org/tex-archive/macros/latex/contrib/moderncv.zip

ahora se descomprime mediante el comando
#unzip moderncv.zip

y ahora para intergrarse a lyx se ejecuta el comando
#texhash

Para instalar la clase suffix.sty, ahora se debe descargar el archivo bigfoot
# wget http://tug.ctan.org/tex-archive/macros/latex/contrib/bigfoot.zip

entonces se descomprime
#unzip bigfoot.zip

con este archivo hay que hacer un paso mas
meterse dentro de la carpeta creada al realizar el unzip
#cd bigfoot
#latex bigfoot.ins
#texhash
esto es por que de acuerdo al manual de Personalizacion en Lyx 2.0, los paquetes disponibles en CTAN, los archivos .sty estan comprimidos en el archivo .ins.
ya con esto, es posible compilar el ejemplo de moderncv que viene en el Lyx.
Saludos

jueves, 20 de junio de 2013

Uso de pragma config en SDCC 3.3 Fedora 18 x86_64

Bien en F18 las actualizaciones me han dejado fuera a SDCC, ya que la version 3.2 que tiene, no me permite programar los bits de configuración.

#include 
#define FOSC 48000000
#include "simple_delay.h"
#include "fLCD3bSDCC.h"
#include "cabecera.h"

/**
 * 20/jun/2013
 * Actualizacion a SDCC 3.3 donde se definen los bits de configuracion
 * mediante la directiva pragma, debido a que la version existente en
 * F18 no permite compilar PIC16 con pragma ni con __code char __at ...
 */
#pragma config PLLDIV = 5, CPUDIV = OSC1_PLL2, USBDIV = 2
#pragma config FOSC = HSPLL_HS, FCMEN = ON, IESO = ON
#pragma config PWRT = ON, BOR = ON, BORV = 0, VREGEN = OFF
#pragma config WDT = OFF, MCLRE = ON, LPT1OSC = ON
#pragma config PBADEN = OFF, CCP2MX = ON
#pragma config STVREN = ON, LVP = OFF
#pragma config XINST = OFF, DEBUG = OFF

/*
__code char __at __CONFIG1L CONFIG1L = _PLLDIV_DIVIDE_BY_5__20MHZ_INPUT__1L & _CPUDIV__OSC1_OSC2_SRC___1__96MHZ_PLL_SRC___2__1L & _USBPLL_CLOCK_SRC_FROM_96MHZ_PLL_2_1L;
__code char __at __CONFIG1H CONFIG1H = _OSC_HS__HS_PLL__USB_HS_1H & _FCMEN_ON_1H & _IESO_ON_1H;
__code char __at __CONFIG2L CONFIG2L = _PUT_ON_2L & _BODEN_ON_2L & _BODENV_4_2V_2L & _VREGEN_ON_2L;
__code char __at __CONFIG2H CONFIG2H = _WDT_DISABLED_CONTROLLED_2H & _WDTPS_1_32768_2H;
__code char __at __CONFIG3H CONFIG3H = _CCP2MUX_RC1_3H & _PBADEN_PORTB_4_0__CONFIGURED_AS_DIGITAL_I_O_ON_RESET_3H & _LPT1OSC_ON_3H & _MCLRE_MCLR_ON_RE3_OFF_3H;
__code char __at __CONFIG4L CONFIG4L = _STVR_ON_4L & _LVP_OFF_4L & _ENHCPU_OFF_4L & _BACKBUG_OFF_4L;
__code char __at __CONFIG5L CONFIG5L = _CP_0_OFF_5L & _CP_1_OFF_5L & _CP_2_OFF_5L & _CP_3_OFF_5L;
__code char __at __CONFIG5H CONFIG5H = _CPB_OFF_5H;
__code char __at __CONFIG6L CONFIG6L = _WRT_0_OFF_6L & _WRT_1_OFF_6L & _WRT_2_OFF_6L & _WRT_3_OFF_6L;
__code char __at __CONFIG6H CONFIG6H = _WRTC_OFF_6H & _WRTB_OFF_6H;
__code char __at __CONFIG7L CONFIG7L = _EBTR_0_OFF_7L & _EBTR_1_OFF_7L & _EBTR_2_OFF_7L & _EBTR_3_OFF_7L;
__code char __at __CONFIG7H CONFIG7H = _EBTRB_OFF_7H;
*/
Como se verá en el código se encuentra comentada la forma obsoleta que se utilizaba antes de SDCC 3.2 y la actual.

viernes, 17 de mayo de 2013

Instalando WebISE Pack 14 en Fedora 18

A estas alturas ya debe haber salido una nueva version del software de Xilinx, pero como dispongo de esta versión y es muy pesado el software (7G aprox) entonces posteriormente bajaré una nueva versión:
como primer paso habrá que darle permisos de ejecución a los archivos xsetup y xinfo del primer directorio al descomprimir el archivo .tar.tgz

entras al sub directorio bin y de ahi, dependiendo del sistema que tengas eliges una carpeta, en mi caso fue lin64

ahora ahí ejecutas el comando chmod a+x * para dar permisos de ejecución a todos los scripts que ahí se encuentran.

regresas al directorio raíz del archivo descomprimido y ejecutas
sudo  ./xsetup
Es importante ejecutar con sudo ya que el software solicita instalarse en el directorio /opt/xilinx, y un usuario normal en ese punto del sistema de archivos no tiene acceso.

Por otra parte también puedes instalar en otra ubicación en tu home.



a continuación se muestran las capturas de pantalla de la instalación:











al dar clic en install se inicia propiamente la instalación

Casi por terminar, el software solicita la instalación de una licencia, la cual puedes adquirir de forma gratuita para el web ise pack desde el sitio de xilinx.
los pasos son los que a continuación se muestran






ya con esto tenemos la instalación de la licencia gratuita y se continua con la instalación


Y finalmente, después de unos minutos, nos aparece la pantalla siguiente:


martes, 14 de mayo de 2013

Mexican Teensyduino USB en Fedora 18

El siguiente post es para hacer funcionar el clon de Arduino que encontré en la siguiente página en Fedora18
www.comunidadatmel.com
Este clon cuenta con la ventaja de ser un micro con modulo USB integrado, ya que tiene el atmega32u4, el cual de acuerdo al vendedor puede ser programado con sketchs arduino o mediante avr-gcc como un micro normal, pero cuenta con la ventaja de tener un bootloader, el cual le permite grabar al microcontrolador sin necesidad de un programador externo.
Para trabajarlo en modo arduino en Windows, se requiere del software de Arduino, el plug in de Teensyduino y finalmente de Flip. Pero como tengo unas cajas Linux, entonces vamos a echarlo a andar aquí. En otro post les comentaré mi motivación.
Se van a requerir que se descarguen software de los links que a continuación expongo:
http://arduino.cc/en/Main/Software
http://www.pjrc.com/teensy/td_download.html
https://sourceforge.net/projects/dfu-programmer/files/latest/download?source=files

(al final se trabajará con línea de comandos- problemas de dependencias en Fedora18)

No eran problemas de dependencias solo hay que cambiar un poco el archivo .pro, quedando de la siguiente manera

#-------------------------------------------------
#
# Project created by QtCreator 2011-05-31T09:58:34
#
#-------------------------------------------------

QT       += core gui

TARGET = easydfu
TEMPLATE = app


SOURCES += main.cpp\
        easydfu.cpp

HEADERS  += easydfu.h

FORMS    += easydfu.ui

RESOURCES += \
    icons.qrc

INCLUDEPATH += "/usr/include/QxtCore/"
LIBS += -lQxtCore -lQxtGui

La linea que se cambio fue
INCLUDEPATH+="/usr/include/qxt/QxtCore"
y en el archivo easydfu.h la línea 31 que dice

#include qxt/QxtGui/QxtGlobalShortcut

se cambia por
#include QxtGui/QxtGlobalShortcut

no pongo los signos de mayor que y menor que por que me edita el blogspot ;P

y finalmente el archivo easydfu.cpp se modifican la línea 30 para que el código quede así:
  ui->setupUi(this);
//modificado para que lo encuentre el root
    programPath = "/usr/local/bin/dfu-programmer";



En Ubuntu (12.04) mi otra box, pude instalar el siguiente paquete
https://sourceforge.net/projects/dfu-programmer/?source=dlp
Que es un cargador gráfico del .hex generado hacia el micro, mas o menos tipo Flip (ya tambien en Fedora18)
  1. Se descargan los paquetes de acuerdo al tipo de sistema que tengamos ya sea de 32 o 64 bits.
  2. Se descomprime el archivo arduino-X.X.X-linuxXX.tgz
  3. El archivo teensyduino.64bit se le dan permisos de ejecución, solo da clic derecho sobre el icono, selecciona propiedades, da clic en la pestaña Permisos y sobre la casilla "es ejecutable" coloca una paloma mediante un clic.
  4.  Da un doble clic para instalar y saldrá la siguiente pantalla
  5. Da clic en Next y elige el lugar donde descomprimiste el software de arduino.



  6. Escoge las librerias que te interesa instalar (yo seleccioné todas y di clic en siguiente)
  7. al dar siguiente, ya nos permitirá instalar el software de Teensy
  8. Una vez instalado nos aparece la ventana que indica que ya ha terminado la instalación.
  9. Da clic en el botón Done.
  10. Ahora ejecuta el software de arduino.
  11. Y elige la tarjeta Teensy 2.0 del menu Herramientas -> Board ->Teensyduino 2.0
  12. De esta forma ya podremos generar sketch's para la tarjeta, el siguiente paso consiste en instalar DFU, que es el software a utilizar en lugar de Flip de atmel (Esto es por que flip aun no es compatible con Linux)
  13. Se descomprime el archivo dfu-programmer-0.6.0
  14. ingresamos en la carpeta descomprimida
  15. abrimos una terminal ahi y tecleamos el comando $./bootstrap.sh
  16. luego $./configure
  17. $make
  18. $sudo make install
  19. La instalacion la realiza en /usr/local/bin, por lo que hay que tener cuidado ya que su no ve este directorio así que para invocar como superusuario debera hacer esto
  20. $ sudo /usr/local/bin/dfu-programmer atmega32u4 erase por ejemplo
  21. para programar un sketch realizado
  22. $sudo /usr/local/bin/dfu-programmer atmega32u4 flash /home/miguel/sketchbook/sketch_may15a/sketch_may15a.cpp.hex
  23. y para que funcione
  24. $sudo /usr/local/bin/dfu-programmer atmega32u4 start
  25. Para la instalación del entorno gráfico (si compila pero no carga correctamente al dfu-programmer :( )
  26. Se descomprime easydfu_1.0_src.tar.gz
  27. Entramos a la carpeta
  28. ejecutamos la orden qmake de la siguiente manera
  29. qmake-qt4 EasyDFU.pro (recuerda las modificaciones indicadas al inicio del post)
  30. y luego make
  31. se debe usar como root o mediante el comando sudo
  32.  asa
    sas
  33. Esta es una prueba de que está corriendo el software :)
    a
    sas


Cargar Teensy version mexicana en caja Fedora... por maigke

Trabajando con pinguinoKit 1.1 sobre Fedora 18 AMD64

Bueno de nuevo escribiendo mientras los bebes duermen un rato ;) PinguinoKit es un proyecto liberado por Yeison fuerte colaborador del proyecto pinguino, pues bien, este software es de corte didáctico para trabajar con la tarjeta pinguino, y que en esta versión que nos presenta basada en el ide x.4. Es muy fácil de aprender, y rápido si se cuenta con una tarjeta OSH Pinguino. les dejo con código de ejemplo Espero que descarguen y comenten :) Saludos

miércoles, 1 de mayo de 2013

contador con Pinguino pic18F2550 en Fedora con CDC

Aqui se muestra el esquema de conexionado para usar una LCD con Pinguino y envio de datos por CDC en una máquina Fedora 18 Y aqui el video donde se muestra como se importa el modulo de pinguino (de JP Mandon) para Fritzing Fotografia del pinguino funcionando
ImportandoModulo Pinguino en Fritzing por maigke
/*----------------------------------------------------- 
Author:  --<>
Date: Wed Apr 24 00:00:18 2013
Description:

-----------------------------------------------------*/
    u8 n=0;
    unsigned char contador=0;
    unsigned char buttonstate=0;
    
void setup() {
    //run once:
    //lcd(8, 9, 1, 2, 3, 4, 0, 0, 0, 0);//modo 4 bits-relacion pines usados 
    /*
    Manejo de LCD con Pingino
    lcd.pins(pinRS, pinE, pinD4, pinD5, pinD6, pinD7, 0, 0, 0, 0);
        */
    
    lcd.pins(8,9,4,5,6,7,0,0,0,0);
    
    //Numero de columnas = 16 y renglones 2
    lcd.begin(16, 2);
    pinMode(12,INPUT);
    }

void loop() {



    digitalWrite(13, HIGH);
    delay(100);
    digitalWrite(13,LOW);
    delay(100);
    lcd.setCursor(1,1);
    lcd.print("Rally Meca");
    buttonstate = digitalRead(12);
    if(buttonstate == LOW)
    {
        digitalWrite(13,LOW); //para pruebas
        delay(500);
        contador++;
        lcd.setCursor(14,0);
        lcd.printf("%d",contador);
        if(contador < 7)
        {
                switch(contador)
                {
                    case 1:
                        lcd.setCursor(5,0);
                        lcd.print("a"); 
                        CDC.print("a");
                        break;
                   
                    case 2:
                        lcd.setCursor(5,0);
                        lcd.print("b");  
                        CDC.print("b");
                        break;
                    case 3:
                        lcd.setCursor(5,0);
                        lcd.print("c");  
                        CDC.print("c");
                        break;
                    case 4:
                        lcd.setCursor(5,0);
                        lcd.print("d");  
                        CDC.print("d");
                        break;
                    case 5:
                        lcd.setCursor(5,0);
                        lcd.print("e");  
                        CDC.print("e");
                        break;
                    case 6:
                        lcd.setCursor(5,0);
                        lcd.print("f");  
                        CDC.print("f");
                        break;
                    default:
                        lcd.clear();
                        //contador=0;
                }
               digitalWrite(13,HIGH);
               lcd.setCursor(14,0);
               lcd.printf("%d",contador);
               delay(500);
         }
         else
            {contador = 0;}       
    }
    
    }

viernes, 12 de abril de 2013

Problema con eñes y acentos en archivo zip y rar

Revisando trabajos de mis alumnos, en unos ip y archivos rar que me han dado, al ser comprimidos con el software de Redmon, al tratar de descomprimirlo, me causaba error al tratar de leer los archivos descomprimidos. Todo era culpa de la codificación. ya que en win2, se usa ISO-8859-1, y en Linux utf-8 En consecuencia, de acuerdo a las siuientes páginas : http://ecoslackware.wordpress.com/tag/convmv/ http://elblogdeelsant0.blogspot.mx/2011/02/solucion-al-problema-codificacion-no.html La solución es utilizar convmv, que es un software que transforma la codificación de un archivo en otra.
[miguel@dhcppc6 Unidad5]$ convmv -r -f ISO-8859-1 -t UTF-8 * --notest
Skipping, already UTF-8: ./DÍAZ AGUSTÍN FRANCISCO JAVIER UNIDAD 4-5.rar
mv "Portafolio de evidencias Alejandro P�rez Micros unidad 4 y 5/CONFIGURACI�N Y CARACTER�STICAS EL�CTRICAS DE LOS PUERTOS E.docx"    "Portafolio de evidencias Alejandro P�rez Micros unidad 4 y 5/CONFIGURACIÓN Y CARACTERÍSTICAS ELÉCTRICAS DE LOS PUERTOS E.docx"
mv "./Portafolio de evidencias Alejandro P�rez Micros unidad 4 y 5"     "./Portafolio de evidencias Alejandro Pérez Micros unidad 4 y 5"
mv "PORTAFOLIO DE EVIDENCIAS PREZA PE�A CARLOS DE JESUS/UNIDAD 5/ACTIVIDADES/Configuraci�n y caracter�sticas el�ctricas de los puertos EYS.pdf"       "PORTAFOLIO DE EVIDENCIAS PREZA PE�A CARLOS DE JESUS/UNIDAD 5/ACTIVIDADES/Configuración y características eléctricas de los puertos EYS.pdf"
mv "./PORTAFOLIO DE EVIDENCIAS PREZA PE�A CARLOS DE JESUS"      "./PORTAFOLIO DE EVIDENCIAS PREZA PEÑA CARLOS DE JESUS"
Skipping, already UTF-8: ./PORTAFOLIO DE EVIDENCIAS PREZA PEÑA CARLOS DE JESUS.zip
Skipping, already UTF-8: SERVO/Servomotor - ¿Como funciona un servo_.mp3
Skipping, already UTF-8: SERVO/Servomotor - ¿Como funciona un servo_.mp4
Ready!
Como veran, en esta carpeta, teno tanto archivos en utf-8 como el iso-8859-1, a los primeros no los modifica.

miércoles, 10 de abril de 2013

Programador USBAsp en fedora 18 como usuario normal

Bueno me canse de estar entrando como root para programar mis micros en Fedora, y pues cosa de no buscarle mucho encontré una solución que al menos para mí sirvio, y esta consistió en agregar una nueva regla al udev, par ello como root, se tiene que logear y teclear los siguiente:


[root@dhcppc6 ~]# nano /etc/udev/rules.d/99-usbasp.rules
Lo cual va a abrir el editor nano y se debe agregar el siguiente texto
ATTR{idVendor}=="16c0", ATTR{idProduct}=="05dc", MODE="0666" , GROUP="plugdev"
ahora agregamos a nuestro usuario al grupo plugdev con el siguiente comando
usermod -a -G plugdev miguel
reiniciamos nuestro equipo y ahora desde una terminal tecleamos
[miguel@dhcppc6 ~]$ avrdude -c usbasp -p m48 -P usb

avrdude: error: programm enable: target doesn't answer. 1 
avrdude: initialization failed, rc=-1
         Double check connections and try again, or use -F to override
         this check.


avrdude done.  Thank you.

[miguel@dhcppc6 ~]$ 
el error indicado sale por que de momento no tengo ningun micro conectado al programador USBasp finalmente lo anterior aplica a la programación con eclipse.

viernes, 5 de abril de 2013

Instalando MySQL en fedora 18

Los pasos salieron de: http://www.if-not-true-then-false.com/2010/install-mysql-on-fedora-centos-red-hat-rhel/ el primer paso es acceder como superusuario
[miguel@dhcppc6 ~]$ sudo -i
[sudo] password for miguel:
A continuación se dan de alta los repositorios de rpmfusion
[root@dhcppc6 ~]# rpm -Uvh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm 
[root@dhcppc6 ~]# rpm -Uvh http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm
Ahora se van a habilitar los repositorios y ver las versiones disponibles de MySQL
[root@dhcppc6 ~]# yum --enablerepo=remi list mysql mysql-server
Ahora a instalar MySQL desde los repositorios
[root@dhcppc6 ~]# yum --enablerepo=remi install mysql mysql-server
Iniciando el servicio MySQL e instalando para su arranque automático con cada inicio de sesión
[root@dhcppc6 ~]# systemctl start mysqld.service
[root@dhcppc6 ~]# systemctl enable mysqld.service
ln -s '/usr/lib/systemd/system/mysqld.service' '/etc/systemd/system/multi-user.target.wants/mysqld.service'
[root@dhcppc6 ~]# 

Ahora se continúa con el "hardening" de la instalación de MySQL, 1. Instalación (cambio de la contraseña de root) 2. Retirar acceso a usuarios anónimos 3. Deshabilitar el acceso remoto como root 4. Remover la Base de datos de prueba y su acceso 5. Renovar la tabla de privilegios iniciar la instalación segura mediante el siguiente comando
[root@dhcppc6 ~]# /usr/bin/mysql_secure_installation
Al pulsar enter solicita la nueva contraseña de root
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!


In order to log into MySQL to secure it, we'll need the current
password for the root user.  If you've just installed MySQL, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none): 
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MySQL
root user without the proper authorisation.

Set root password? [Y/n] y
New password: 
Re-enter new password: 
Password updated successfully!
Reloading privilege tables..
 ... Success!


By default, a MySQL installation has an anonymous user, allowing anyone
to log into MySQL without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] 
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] Y
 ... Success!

By default, MySQL comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] Y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] Y
 ... Success!

Cleaning up...



All done!  If you've completed all of the above steps, your MySQL
installation should now be secure.

Thanks for using MySQL!

conectarse a la base de datos
[root@dhcppc6 ~]# mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 23
Server version: 5.5.30 MySQL Community Server (GPL) by Remi

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 

Creación de una base de datos, un usuario y la habilitación de conexiones remotas a una base datos MySQL Los parámetros que se proponen son:

  • DB_NAME = webdb 
  • USER_NAME = webdb_user 
  • REMOTE_IP = 10.0.15.25 
  • PASSWORD = password123 
  • PERMISIONS = ALL

## CREATE DATABASE ##
mysql> CREATE DATABASE webdb;
 
## CREATE USER ##
mysql> CREATE USER 'webdb_user'@'10.0.15.25' IDENTIFIED BY 'password123';
 
## GRANT PERMISSIONS ##
mysql> GRANT ALL ON webdb.* TO 'webdb_user'@'10.0.15.25';
 
##  FLUSH PRIVILEGES, Tell the server TO reload the GRANT TABLES  ##
mysql> FLUSH PRIVILEGES;
 
ahora, el acceso en mi caso solo lo podía hacer por medio de root, con la orden sudo, sin embargo, con mi usuario habitual, aunque colocaba correctamente el password de root de mysql no podia acceder, ni de consola ni por phpMyAdmin, entonces para corregir esto:
 1. agregar a mi usuario al grupo mysql, en KDE, Inicio-; Aplicaciones - Administración - usuarios y grupos (requiere contraseña de administrador)

2. Ya en el entorno, quitar el check, de la opción "Ocultar grupos del sistema" en Preferencias del menú Editar

3. ir a la pestaña grupos, dar clic sobre mysql y clic en el botón Propiedades.

4. Selecciona a tu usuario habitual o normal, o como lo quieras llamar.

5. Cerrar el sistema y probar desde una consola Si nuevamente obtienes error de acceso, entonces gracias a la siguiente página vi la luz http://my.opera.com/FastTigerBlog/blog/solucion-al-problema-mysql-u-root-p
*******************************************************************************
1. Detener el servicio mysql, recuerda que estoy en fedora18 usando mysql del repo rpmfusion (http://www.if-not-true-then-false.com/2010/install-mysql-on-fedora-centos-red-hat-rhel/)
systemctl stop mysqld.service
2. brincarnos el passwd de root
/usr/bin/mysqld_safe --user=mysql --skip-grant-tables
3. Abre otra terminal y teclea en ella
[miguel@dhcppc6 ~]$ mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.5.30 MySQL Community Server (GPL) by Remi

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>
4. ahora hacemos uso de la tabla mysql use mysql; 5. Se realiza la actualización del passwd de root de mysql
mysql> update user set Password=PASSWORD('xxxxxxxx') where user='root';
Query OK, 3 rows affected (0.00 sec)
Rows matched: 3  Changed: 3  Warnings: 0
6. salimos exit; 7. Detenemos la consola de modo seguro (cierra la consola) 8. Re arranca el servicio mysql
[miguel@dhcppc6 ~]$ sudo -i
[sudo] password for miguel: 
[root@dhcppc6 ~]# systemctl start mysqld.service
[root@dhcppc6 ~]# exit
logout

9. Reinicia la sesion nueva de mysql con la contraseña nueva de root
[miguel@dhcppc6 ~]$ mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.5.30 MySQL Community Server (GPL) by Remi

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 

sábado, 30 de marzo de 2013

Instalar fuentes en Fedora

Buscando una forma de poner interfaces en LCD, y que estas se encuentren documentadas, me dí a la tare de buscar fuentes tipo LCD, por el momento solo encontré unas fuentes en el siguiente link:

http://www.dafont.com/liquid-crystal.font

ahora para instalar las fuentes y hacer uso de ellas con el programa Pencil. leí el documento que se encuentra expuesto en el siguiente blog
http://otroblogdegnu-linux.blogspot.mx/2013/03/instalar-fuentes-de-fedora-facilmente.html

donde se describe paso a paso la instalación de fuentes en fedora, en el cual piden instalr gnome-font-viewer, el cual afortunadamente lo tenía instalado.

solo se descomprime el archivo descargado y los archivos de fuente se abren con la aplicación antes mencionada.

En la parte inferior tiene el botón de instalar y cuando éste se presiona, nos da dos opciones:
  • instalar solo para usuario
  • instalar para sistema
La primera supongo que no solicita contraseña, pero la segunda, si lo hace


De esta forma, el resultado es el que en la figura anterior se muestra

domingo, 24 de marzo de 2013

pk2cmd en Fedora 18 64bits

Primero hay que tener instalado la libreria de comunicaciones usb
[root@dhcppc6 rules]# yum install libusb-devel.x86_64
Luego hay que descargar el pk2cmd desde aquí
http://ww1.microchip.com/downloads/en/DeviceDoc/pk2cmdv1.20LinuxMacSource.tar.gz
Ahora se descomprime la carpeta y se entra en ella, puedes usar el entorno gráfico para esta actividad.
entras a la carpeta con una consola
y ya en la consola tecleas el comando

$make linux

Si toda va bien no saldrá ningún error

ahora con el comando sudo se realiza la instalación
[miguel@dhcppc6 pk2cmdv1.20LinuxMacSource]$ sudo make install
[sudo] password for miguel:
mkdir -p /usr/share/pk2
cp pk2cmd /usr/local/bin
chmod u+s /usr/local/bin/pk2cmd
cp PK2DeviceFile.dat /usr/share/pk2/PK2DeviceFile.dat

Ahora el usuario debe modificar sua archivo bashrc de la siguiente manera
 $ nano /home/miguel/.bashrc

y añade las siguientes lineas
# User specific aliases and functions
export PATH=$PATH:/usr/share/pk2

y para que las modificaciones sean aceptadas
$ source /home/miguel/.bashrc

ahora solo resta probar

En mi caso con pickit2 clon conectado y grabando el bootloader del Pinguino X.4 me dan los siguientes resultados:
[miguel@dhcppc6 8bit]$ pk2cmd -P -M -F bootloaderV3.00_PIC18Fx550.hex
Auto-Detect: Found part PIC18F2550.

PICkit 2 Program Report
24-3-2013, 13:05:21
Device Type: PIC18F2550

Program Succeeded.

Operation Succeeded
[miguel@dhcppc6 8bit]$