Leer Primero

Como se utiliza este blog?

lunes, 1 de enero de 2024

Dibujo de un arbol de navidad utilizando el módulo Python Turtle

Bienvenido a mi blog, hoy hablaremos un poco de Python turtle, el cual es un módulo de Python que permite crear gráficos vectoriales mediante el uso de comandos simples. Estos comandos controlan un cursor, conocido como tortuga (turtle), que se mueve por la pantalla y dibuja líneas y figuras geométricas y nos permite crear diseños personalizados. Es comúnmente utilizado en la enseñanza de la programación, ya que es fácil de entender y usar. Con Python turtle, los estudiantes pueden aprender conceptos básicos de programación como bucles, condicionales y funciones mientras crean sus propios gráficos. Algunos ejemplos de cómo utilizar la función turtle incluyen:

  • Mover el cursor hacia adelante utilizando el comando "forward()"
  • Girar el cursor utilizando el comando "left()" o "right()"
  • Cambiar el color de la línea utilizando el comando "pencolor()"
  • Escribir texto en la pantalla utilizando el comando "write()"
  • Mostrar o ocultar el cursor utilizando el comando "showturtle()" o "hideturtle()"

Para utilizar la función turtle, primero debemos importar el módulo en nuestro script. Luego, podemos crear una instancia de turtle y utilizar los comandos mencionados anteriormente para dibujar en la pantalla. Hoy aprenderemos a dibujar un sencillo arbol navideño con el modulo Python Turtle.

En el siguiente código Python utilizamos el módulo Turtle para dibujar un patrón que representa un árbol de Navidad, se utiliza la biblioteca Turtle para crear un patrón visual con círculos y cuadrados. La figura se forma mediante iteraciones y se utilizan diferentes colores para los círculos en ciertos puntos del patrón. Este código utiliza dos tortugas, una para dibujar cuadrados (representando los niveles del árbol) y otra para dibujar círculos (representando las bolas de Navidad). El patrón se crea mediante bucles y la posición de las tortugas se ajusta en cada iteración. Finalmente, se agrega un mensaje de texto y la ventana se cierra al hacer clic, aca tenemos el desglose del codigo comentado:
# -------------------------------------------------------------------------
# (| " christmastree.py                                                 "|)
# (| "                                                                  "|)
# (| " Este sencillo y corto código en Python, utiliza el módulo Turtle "|)
# (| " para dibujar un patrón que representa un árbol de Navidad, se    "|)
# (| " utiliza la biblioteca Turtle para crear un patrón visual con     "|)
# (| " círculos y cuadrados. La figura se forma mediante iteraciones y  "|)
# (| " se utilizan diferentes colores para los círculos en ciertos      "|)
# (| " puntos del patrón.                                               "|)
# (| "                                                                  "|)
# (| " Este código de ejemplo es de dominio público.                    "|)
# (| "                                                                  "|)
# (| " Developer: jorgechac© - Técnico Laboral en Programación UNAB     "|)
# (| " Visita  https://jorgechac.blogspot.com                           "|)
# (| "                                                                  "|)
# (| " Venta de accesorios Arduino/Raspberry Pi Pico/ESP32   	        "|)
# (| " Whatsapp y Ventas NEQUI +573177295861                            "|)
# (| " Bucaramanga - Colombia                                           "|)
# -------------------------------------------------------------------------

# Se importar la biblioteca turtle para graficos simples
import turtle

# Se configura la pantalla con dimensiones 800x600
screen = turtle.Screen()
screen.setup(800, 600)

# Se crea un objeto turtle llamado 'circle' para representar las bolas
# de adorno
circle = turtle.Turtle()
circle.shape('circle')
circle.color('red')
circle.speed('fastest')
circle.up()

# Se crea un objeto turtle llamado 'square' para representar los bloques
# cuadrados del árbol
square = turtle.Turtle()
square.shape('square')
square.color('green')
square.speed('fastest')
square.up()

# Posiciona el objeto 'circle' en la parte superior del árbol y lo marca
# como circulo inicial
circle.goto(0, 280)
circle.stamp()

# Inicializar variable de ajuste
k = 0

# Bucle para dibujar los bloques del árbol y las bolas de adorno, es decir
# se itera para crear el patrón
for i in range(1, 17):
    y = 30 * i
    for j in range(i - k):
        x = 30 * j
        # Posiciona y marca el bloque en la posición actual y su reflejo
        # simétrico
        square.goto(x, -y + 280)
        square.stamp()
        square.goto(-x, -y + 280)
        square.stamp()

# Añade bolas de adorno de color rojo y amarillo en ciertas filas del árbol
    if i % 4 == 0:
        x = 30 * (j + 1)
        circle.color('red')
        circle.goto(-x, -y + 280)
        circle.stamp()
        circle.goto(x, -y + 280)
        circle.stamp()
        k += 2

    if i % 4 == 3:
        x = 30 * (j + 1)
        circle.color('yellow')
        circle.goto(-x, -y + 280)
        circle.stamp()
        circle.goto(x, -y + 280)
        circle.stamp()

# Cambia el color del objeto 'square' a marrón para representar el tronco
# del árbol
square.color('brown')

# Bucle para dibujar el tronco del árbol, es decir añadir más filas al
# patrón
for i in range(17, 20):
    y = 30 * i
    for j in range(3):
        x = 30 * j
        # Posiciona y marca el bloque del tronco y su reflejo simétrico
        square.goto(x, -y + 280)
        square.stamp()
        square.goto(-x, -y + 280)
        square.stamp()

# Crea un objeto turtle llamado 'text_turtle' para mostrar un mensaje
text_turtle = turtle.Turtle()
text_turtle.hideturtle()
text_turtle.up()
text_turtle.color('blue')
text_turtle.goto(350, -280)
text_turtle.write("Christmas tree in Python by jorgechac", align='right', font=('Arial', 10, 'bold'))

# Esperamos a que el usuario haga clic en la ventana para cerrarla
turtle.exitonclick()

Finalmente después de ejecutar el código, se abrirá una ventana independiente y se comenzará a generar el Arbol de Navidad, asi:




Quieres aportar algo que complemente este articulo? crees que hay algo que se deba corregir? Escríbenos este blog es para todos.

Recuerda que en https://jorgechac.blogspot.com nos dedicamos a construir una electrónica mejor! y apoyamos el proyecto CTC GO! (Creative Technologies in the Classroom) que es un programa de educación steam personalizable.



Si te sirvió deja un comentario de agradecimiento, comparte el post en tus redes sociales o recomiéndale el blog a un amigo, eso me motiva a seguir realizando estos pequeños posts y espero que vuelvas a mi blog, publico nuevo material con base en los softwares y apps que utilizo y la experiencia que he adquirido. Por último si deseas colaborar voluntariamente y crees que mi trabajo y mi tiempo lo ameritan, considere hacer una pequeña donación a mi NEQUI +573177295861.




También te puede interesar:






martes, 26 de diciembre de 2023

ARBOL DE NAVIDAD EN PYTHON


Bienvenido a mi blog, hoy hablaremos un poco de como escribir codigo para realizar un sencillo arbol de navidad y visualizarlo en la consola de Python, utilizando para esto la herramienta Microsoft Visual Studio Code, para ello desglosare el codigo fuente y le ire añadiendo los comentarios para tratar de explicar lo que se esta haciendo paso a paso de la siguiente forma (sobra decir que tu visual studio code debe tener instalado la extension para trabajar con Python):



# -------------------------------------------------------------------------
# (| " Arbol.py                                                         "|)
# (| "                                                                  "|)
# (| " Este sencillo y corto código en Python, utiliza códigos de escape"|)
# (| " ANSI para imprimir en la consola colores y formato de texto;     "|)
# (| " Simulando la apariencia de un arbol de navidad en la consola.    "|)
# (| "                                                                  "|)
# (| " Este código de ejemplo es de dominio público.                    "|)
# (| "                                                                  "|)
# (| " Developer: jorgechac© - Técnico Laboral en Programación UNAB     "|)
# (| " Visita  https://jorgechac.blogspot.com                           "|)
# (| "                                                                  "|)
# (| " Venta de accesorios Arduino/Raspberry Pi Pico/ESP32   		"|)
# (| " Whatsapp y Ventas NEQUI +573177295861                            "|)
# (| " Bucaramanga - Colombia                                           "|)
# -------------------------------------------------------------------------

# Se define una clase llamada 'Color' que contiene algunos atributos que
# representan códigos de escape ANSI para cambiar el color del texto en la
# consola. Los atributos son:

# reset: Restablece el color a su valor por defecto.
# rojo: Establece el color del texto a rojo.
# verde: Establece el color del texto a verde.
# cafe: Establece el color del texto a un tono de café utilizando el formato
# de color RGB.

class Color:
    reset = "\033[0m"
    rojo = "\033[91m"
    verde = "\033[92m"
    cafe = "\033[38;2;139;69;19m"

# Se utiliza un bucle for para imprimir una serie de líneas que representan
# un árbol de Navidad. La forma del árbol está compuesta por caracteres '^'
# de diferentes longitudes. El color del árbol es verde (Color.verde), y las
# líneas se centran en un espacio de 40 caracteres.

for i in range(1, 30, 2):
    print((Color.verde + ('^' * i)).center(40))

# Se utiliza otro bucle for para imprimir tres líneas horizontales que
# representan las patas del árbol. Estas líneas son de color café (Color.cafe)
# y contienen el texto '|||'. Cada línea se centra en un espacio de 50 caracteres.
    
for leg in range(3):
    print((Color.cafe + '|||').center(50))

# Se imprimen líneas adicionales que representan el tronco del árbol. El tronco
# consiste en las líneas '\___/' de color café (Color.cafe). Estas líneas se centran
# en un espacio de 50 caracteres.
    
print((Color.cafe + '\___/').center(50))

# Se imprimen líneas horizontales de guiones rojos (Color.rojo) para decorar la
# parte superior e inferior del árbol. Estas líneas se centran en un espacio de
# 40 caracteres y tienen una longitud de 25 guiones.

print((Color.rojo + ('-' * 25)).center(40))

# Se imprime el mensaje '¡Feliz Navidad!' en el centro y con el color de texto
# restablecido (Color.reset). La línea se centra en un espacio de 40 caracteres.

print((Color.reset + '¡Feliz Navidad!').center(40))

print((Color.rojo + ('-' * 25)).center(40))

Los códigos de escape ANSI son secuencias de caracteres que se utilizan para controlar el formato y el color del texto en terminales compatibles con ANSI. Estas secuencias comienzan con el carácter de escape \033 seguido de parámetros y códigos de control. En este caso, se están utilizando para cambiar el color del texto en la consola.

En el código proporcionado tenemos:

\033[0m:  Restablece todos los estilos y colores a los valores predeterminados.

\033[91m: Establece el color del texto a rojo.

\033[92m: Establece el color del texto a verde.

\033[38;2;139;69;19m: Establece el color del texto a un tono de café mediante el formato de color RGB. El formato es \033[38;2;R;G;Bm.

Estos códigos de escape ANSI son específicos de las terminales que admiten ANSI, como la mayoría de las terminales en sistemas operativos Unix/Linux y también en Windows si se utiliza un emulador de terminal compatible.

Finalmente después de ejecutar el código, se abrirá la consola de python y se comenzará a generar el Arbol de Navidad, así:

Quieres aportar algo que complemente este articulo? crees que hay algo que se deba corregir? Escríbenos este blog es para todos.

Recuerda que en https://jorgechac.blogspot.com nos dedicamos a construir una electrónica mejor! y apoyamos el proyecto CTC GO! (Creative Technologies in the Classroom) que es un programa de educación steam personalizable.


Si te sirvió deja un comentario de agradecimiento, comparte el post en tus redes sociales o recomiéndale el blog a un amigo, eso me motiva a seguir realizando estos pequeños posts y espero que vuelvas a mi blog, publico nuevo material con base en los softwares y apps que utilizo y la experiencia que he adquirido. Por último si deseas colaborar voluntariamente y crees que mi trabajo y mi tiempo lo ameritan, considere hacer una pequeña donación a mi NEQUI +573177295861.



También te puede interesar:


Dibujando en Python utilizando la libreria Matplotlib y Numpy

Dibujando en Python utilizando el módulo Python Turtle

Dibujo del logotipo de Python utilizando el módulo Python Turtle


lunes, 6 de noviembre de 2023

YouTube bloquea los ad-blockers

Bienvenido a mi blog, hoy hablaremos un poco de la reciente ofensiva de YouTube contra los bloqueadores de publicidad, que ha desencadenado una oleada de cientos de miles de desinstalaciones de este tipo de extensiones de navegadores (como el famoso y útil adblock plus), los cuales sin duda son una de las funcionalidades más útiles y necesarias para disfrutar de una experiencia de navegación razonable y, sobre todo, segura.

Vamos a aprender el día de hoy como evadir dicha restricción.


De acuerdo con la imagen anterior, "los ad blockers no están permitidos en YouTube", ya que "los anuncios permiten que YouTube sea gratis para miles de millones de usuarios en todo el mundo". Y luego se muestran dos botones para tomar acciones ante el aviso: desactivar el bloqueador para permitir los anuncios, o probar YouTube Premium. Es curioso que esto pase poco más de un año después de que Google obligara a <YouTube Vanced> a cerrar por "razones legales". Con este hecho Google logró eliminar a la mejor alternativa de YouTube Premium, pero tal parece que no es suficiente y ahora va contra todos los softwares de bloqueo de anuncios en general.

Aunque hay otras formas de bloquear los anuncios, como, por ejemplo, permitiendo su carga, pero no mostrándolos. Bienvenidos a FadBlock: Friendly Adblock for Youtube™ (también disponible para Firefox, Opera, Edge y Safari) una extensión que permite que el propietario del vídeo siga cobrando, pero que tú no veas el vídeo, y que el anunciante no consiga su objetivo de molestarte. Y si Fadblock, por la razón que fuese, desapareciese, aparecerían otros. Es lo que tiene la tecnología de hoy en día: que no se puede parar.

Lo que sí se puede parar son los modelos de negocio que los usuarios no quieren. Los usuarios hemos dicho a gritos que no queremos ser molestados con anuncios intrusivos cuando queremos ver un vídeo, y se han instalado bloqueadores para evitar esos anuncios molestos por centenares de millones. Que ahora venga YouTube y demuestre que eso ya está provocando un problema a su modelo de negocio no quiere decir que eso sea malo en sí, sino que su modelo de negocio está mal planteado, y que tendrá que replanteárselo con otros parámetros o de otras formas.

Los anuncios de YouTube son infumables e insoportables. Los anunciantes que se promocionan en YouTube son compañías que saben perfectamente que la reacción que provocan sus anuncios es la de soltar un madrazo cada vez que te aparecen y acordarle de todos los muertos puestos en fila a la persona o empresa que decidió pagarlos, pero por la razón que sea, siguen creyendo de que «la publicidad que funciona es la que molesta». Pues no es así, si nos molesta y siempre encontraremos la forma de evitarla, no tenemos por qué aguantarla.

Finalmente, si hay cosas que no quieres ver, no las veas, nadie debería poder obligarte. Ese fue el principio "fundacional" de la internet, y así debería ser siempre: una red al servicio de los usuarios y de aquellos que quieren compartir información.





"La palabra 'YouTube', así como los logotipos oficiales, son marcas comerciales con copyright © de Google LLC. Todos los derechos de marca y autor están reservados por sus respectivos propietarios y licencias correspondientes."


Quieres aportar algo que complemente este articulo? crees que hay algo que se deba corregir? Escríbenos este blog es para todos.

Recuerda que en https://jorgechac.blogspot.com nos dedicamos a construir una electrónica mejor! y apoyamos el proyecto CTC GO! (Creative Technologies in the Classroom) que es un programa de educación steam personalizable.



Si te sirvió deja un comentario de agradecimiento, comparte el post en tus redes sociales o recomiéndale el blog a un amigo, eso me motiva a seguir realizando estos pequeños posts y espero que vuelvas a mi blog, publico nuevo material con base en los softwares y apps que utilizo y la experiencia que he adquirido. Por último, si deseas colaborar voluntariamente y crees que mi trabajo y mi tiempo lo ameritan, considere hacer una pequeña donación a mi NEQUI +573177295861.




También te puede interesar:


sábado, 29 de julio de 2023

Arduino UNO R4 WiFi

Bienvenido a mi blog, hoy hablaremos un poco de la placa Arduino UNO R4 WiFi, Arduino es una plataforma de creación de electrónica de código abierto, la cual está basada en hardware y software libre, flexible y fácil de utilizar para los creadores o desarrolladores, para hacerlo, utiliza el lenguaje de programación Arduino (basado en Wiring) y el Software Arduino IDE (basado en Processing, una herramienta basada en Java). Recordemos que Arduino es un proyecto, un ecosistema y no solo un modelo concreto de placa. Como todas las placas Arduino y compatibles, tiene semejanzas con otras de sus hermanas: es la evolución de Arduino UNO R3 y Arduino UNO WiFi Rev2. En este post podrás comprender todo lo que necesitas saber sobre esta placa y comenzar a desarrollar tus propios proyectos DIY con Arduino UNO R4 WiFi. Antes de iniciar quiero recordar que el nuevo Arduino IDE 2.0 esta ahora basado en el marco Eclipse Theia.

Theia se basa en el mismo código subyacente que el popular y ampliable "Visual Studio Code" de Microsoft, esto permite que Arduino avance a un editor más potente y moderno y no olvidemos que ahora el DARK MODE o Modo Oscuro, ya viene nativo.



Arduino UNO R4 WiFi combina la potencia de procesamiento y los emocionantes nuevos periféricos del microcontrolador RA4M1 de Renesas (32 bits) con la potencia de conectividad inalámbrica del ESP32-S3 de Espressif. Además de esto, el UNO R4 WiFi ofrece una matriz de LED de 12x8 integrada, un conector Qwiic, VRTC y un pin de apagado, lo que cubre todas las necesidades potenciales que tendrán los Makers para su próximo proyecto. Con Arduino UNO R4 WiFi, puede actualizar fácilmente su proyecto y agregar conectividad inalámbrica para ampliar el alcance de su configuración actual. Si este es tu primer proyecto, este tablero tiene todo lo que necesitas para despertar tu creatividad.

Exploremos lo que el Arduino UNO R4 WiFi tiene para ofrecernos:



  • Compatibilidad de hardware con factor de forma UNO: El UNO R4 WiFi mantiene el mismo factor de forma, pinout y voltaje operativo de 5 V que su predecesor, el UNO R3, lo que garantiza una transición perfecta para los escudos y proyectos existentes.
  • Memoria ampliada y reloj más rápido: el UNO R4 WiFi cuenta con mayor memoria y una velocidad de reloj más rápida, lo que permite cálculos más precisos y un manejo sin esfuerzo de proyectos complejos.
  • Periféricos integrados adicionales: el UNO R4 WiFi presenta una gama de periféricos integrados, incluidos un DAC de 12 bits, CAN BUS y OPAMP (Amplificador Operacional), que brindan capacidades ampliadas y flexibilidad de diseño.
  • Tolerancia extendida de 6-24 V: el UNO R4 WiFi admite un rango de voltaje de entrada más amplio, lo que permite una integración perfecta con motores, tiras de LED y otros actuadores utilizando una sola fuente de alimentación. Eso es especialmente interesante, ya que 24V es el voltaje estándar en la industria, especialmente en entornos con controladores PLC y es una opción diseñada para traernos altos beneficios e integrarnos más en aplicaciones industriales.
  • Compatibilidad con HID: con la compatibilidad con HID incorporada, el UNO R4 WiFi puede simular un mouse o un teclado cuando se conecta a una computadora a través de USB, lo que facilita el envío de pulsaciones de teclas y movimientos del mouse, similar a las caracteristicas encontradas en Arduino Leonardo o Sparkfun Pro Micro.
  • Wi-Fi® y Bluetooth®: El UNO R4 WiFi aloja un módulo ESP32-S3, lo que permite a los makers y entusiastas, agregar conectividad inalámbrica a sus proyectos. En combinación con Arduino IoT Cloud, los diseñadores pueden monitorear y controlar sus proyectos de forma remota. Se cuenta con Wi-Fi® 4, el cual trabaja a una banda de 2.4 GHz y es compatible con el estándar 802.11 b/g/n, ademas tambien posee soporte para Bluetooth® 5 LE.
  • Conector Qwiic: El UNO R4 WiFi cuenta con un conector Qwiic I2C, lo que permite una fácil conexión a los nodos del extenso ecosistema Qwiic. Los cables adaptadores también permiten la compatibilidad con sensores y actuadores basados ​​en otros conectores.
  • Compatibilidad con RTC alimentado por batería: el UNO R4 WiFi incluye pines adicionales, incluido un pin "OFF" para apagar la placa y un pin "VRTC" para mantener el reloj interno en tiempo real encendido y en funcionamiento.
  • Matriz LED: El UNO R4 WiFi incorpora una matriz LED roja brillante de 12x8 (96 puntos), ideal para proyectos creativos con animaciones o trazado de datos de sensores, eliminando la necesidad de hardware adicional y es completamente direccionable ya que utiliza Charlieplexing para controlar individualmente cada punto. Para comenzar, simplemente descargue el núcleo "Arduino UNO R4 boards". Esto le otorgará acceso a la API Arduino_LED_Matrix fácil de usar, lo que le permitirá programar y controlar la matriz LED. Podemos encontrar ayuda para LED Matrix gracias a una herramienta gráfica, diseñada específicamente para ayudar a los Makers a crear y exportar sus propias animaciones. De esta manera, podemos dar rienda suelta a nuestra creatividad y aprovechar al máximo esta emocionante característica. Encuentra más información de esta herramienta gráfica en el sitio web de Arduino Labs.
  • Diagnóstico de errores de tiempo de ejecución: el UNO R4 WiFi incluye un mecanismo de captura de errores que detecta fallas en el tiempo de ejecución y proporciona explicaciones detalladas y sugerencias sobre la línea de código que causa la falla.



Con todas estas características incluidas en el conocido factor de forma UNO, ahora es el momento perfecto para actualizar su proyecto o embarcarse en su viaje como Maker. El UNO R4 WiFi ofrece una versatilidad y posibilidades incomparables para creadores de todos los niveles.



Compatible con Arduino IoT en la nube:





Utilice su placa en la nube IoT de Arduino, una forma simple y rápida de garantizar una comunicación segura para todas sus cosas conectadas, pruebe la nube Arduino IoT gratis!


Especificaciones Técnicas:

Board     Nombre                             Arduino® UNO R4 Wi-Fi

            SKU                                     ABX00087

Microcontrolador    Renesas RA4M1 (Arm® Cortex®-M4)

USB     USB‑C®                            Puerto de programación

Pines     Pines de E/S Digitales                     14

Pines     Pines de entrada Analógica                     6

            DAC                                     1

            Pines PWM                           6

Comunicación     UART                                     Sí, 1x (pin D0, D1)

            I2C                                     Sí, 1x (pin A4, A5, SDA, SCL)

            SPI                                     Sí, 1x (pin D10-D13, ICSP header)

         CAN                                                     Sí 1 bus CAN (pin D4, D5, external                                                                                                                        transceiver is required)

Power     Voltaje de operación                     5 V (ESP32-S3 es 3,3 V)

            Voltaje de entrada (VIN)                     6-24 Vcc

            Corriente CC por pin de E/S                     8mA

Velocidad de reloj    Núcleo principal                             48 MHz

            ESP32-S3                                     hasta 240 MHz

Memoria                    RA4M1                             Flash de 256kB, RAM de 32 kB

            ESP32-S3                                     ROM de 384 kB, SRAM de 512 kB

                                    EEPROM                                                      8kB

Dimensiones            Ancho                             68,85mm

            Longitud                                     53,34 mm


Documentación:






¿Qué hay de nuevo en resumen en R4 a diferencia de R3?

  • Pasamos de tener 2 KB de RAM (UNO R3) a tener 32 KB de RAM (UNO R4) y de 32 KB de memoria Flash (UNO R3) a un total de 256 KB de memoria Flash (UNO R4).
  • La frecuencia del procesador también se triplica, pasando de los 16 MHz (UNO R3) a los 48 MHz (UNO R4).
  • Se agregan los puertos DAC, CAN BUS, OPAMP y SWD de 12 bits, permitiendo desarrollar proyectos más avanzados.
  • Se utiliza el conector USB-C para la conexión con el ordenador, adaptandose a los nuevos tiempos.
  • Dispositivo HID: permite hacer proyectos interactivos mucho más interesantes, creando interfaces sin apenas esfuerzo y tiempo.


Pinout for Arduino UNO R4 WiFi


¿Puedo usar hardware compatible con Arduino UNO R3 con Arduino UNO R4 WiFi?

Sí, Arduino UNO R4 WiFi fue diseñado específicamente para garantizar la compatibilidad con shields anteriores y hardware compatible desarrollado para Arduino UNO R3. El UNO R4 WiFi mantiene la misma compatibilidad mecánica y eléctrica, lo que le permite usar sin problemas sus escudos y hardware existentes con la nueva placa. Esto facilita la actualización al UNO R4 WiFi sin necesidad de cambios significativos o adaptaciones a sus proyectos.


¿Puedo usar hardware compatible con Arduino UNO WiFi Rev2 con Arduino UNO R4 WiFi?

Sí, Arduino UNO R4 WiFi es totalmente compatible con shields y hardware anteriores desarrollados para UNO WiFi Rev2. Ambas placas comparten el mismo factor de forma UNO y un voltaje operativo de 5 V. Sin embargo, es importante tener en cuenta que, según el diseño, puede haber cambios en los elementos de distribución de pines. Consulte la documentación y los diagramas de pines para obtener detalles específicos y consideraciones de compatibilidad.


¿Puedo usar mi boceto desarrollado para el Arduino UNO R3 en el UNO R4 WiFi?

Sí, si su boceto se desarrolló utilizando la API de Arduino. En caso de que esté utilizando instrucciones solo disponibles para la arquitectura AVR, es necesario realizar algunos cambios para garantizar la compatibilidad.


¿Todas las bibliotecas compatibles con UNO R3 también son compatibles con UNO R4 WiFi?

No, algunas bibliotecas de UNO R3 usan instrucciones de la arquitectura AVR que no son compatibles con la arquitectura de UNO R4 WiFi, sin embargo, hay bibliotecas que ya se han portado como parte del programa de primeros usuarios o se basan en la API de Arduino.




Si trabajas como yo con Fritzing, recuerda que ya se creo la librería 'Arduino UNO R4 Wi-Fi' para realizar nuestros esquemáticos.


Bibliografía https://www.arduino.cc/


"La palabra 'Arduino' y los logotipos oficiales son marcas comerciales con copyright © de Arduino AG. El software Arduino IDE es propiedad de sus respectivos autores. La licencia principal que rige los productos de Arduino es la Licencia Pública General de GNU (GPL) y la Licencia Pública General Menor de GNU (LGPL). Todos los derechos están reservados por sus respectivos propietarios y licencias correspondientes."




Quieres aportar algo que complemente este articulo? crees que hay algo que se deba corregir? Escríbenos este blog es para todos.

Recuerda que en https://jorgechac.blogspot.com nos dedicamos a construir una electrónica mejor! y apoyamos el proyecto CTC GO! (Creative Technologies in the Classroom) que es un programa de educación steam personalizable.


Si te sirvió deja un comentario de agradecimiento, comparte el post en tus redes sociales o recomiéndale el blog a un amigo, eso me motiva a seguir realizando estos pequeños posts y espero que vuelvas a mi blog, publico nuevo material con base en los softwares y apps que utilizo y la experiencia que he adquirido. Por último si deseas colaborar voluntariamente y crees que mi trabajo y mi tiempo lo ameritan, considere hacer una pequeña donación a mi NEQUI +573177295861.



También te puede interesar:


Arduino GIGA R1 Wi-Fi

SparkFun Pro Micro

Arduino Pro Mini

Simulador Wokwi - Generalidades

Nuevos Microcontroladores Raspberry Pi Pico W, H y WH

Las 10 formas más fáciles de averiar tu Arduino

FTDI como programador ISP

Arduino UNO Rev3

Arduino NANO v3

Arduino UNO WiFi Rev2

Nueva Placa Arduino Nano RP2040 Connect

Nuevo Microcontrolador Raspberry Pi Pico

Nueva Raspberry Pi 400

Convierte fácilmente una Fuente ATX de PC en una Fuente para alimentar tus proyectos Arduino y/o Raspberry Pi

Conociendo La Familia de los Módulos WiFi ESP8266

Cómo Detectar un Arduino Falsificado

miércoles, 5 de julio de 2023

Appteka

Bienvenido a mi blog, hoy hablaremos un poco de Appteka, una app desarrollada por el developer Ruso <Igor Solkin> en colaboración con <Poussinou> de F-Droid. Appteka es una biblioteca de app's, es decir, es una tienda alternativa para Android, algo un poco similar a la Play Store de Google. Appteka también puede extraer APK e instalarlos en su dispositivo Android.


Dentro de sus características básicas tenemos:


  • Rápida y fácil de usar: Se descarga, se instala y listo.
  • Extrae casi todas las aplicaciones, incluidas las aplicaciones del sistema.
  • No se requiere acceso ROOT: No necesita que tu dispositivo Android cuente con privilegios de superusuario.
  • Cargue Apk's en Appteka.store : Si desarrollas una app y no puedes publicarla en la Play Store por falta de dinero para pagar una cuenta de desarrollador o tu aplicación es rechazada por la MarketPlace, puedes publicarla de forma gratuita en Appteka.
  • Opción de búsqueda proporcionada para buscar aplicaciones: Digita el nombre de la app que buscas y verifica si se encuentra publicada en la Appteka Store.
  • Puede hacer una copia de seguridad e instalar Apk desde el almacenamiento interno de tu dispositivo móvil Android.
  • Instale aplicaciones gratuitas de appteka.store


¡Hable sobre aplicaciones y juegos con otros usuarios de appteka en el chat en tiempo real!



La pagina oficial de Appteka es https://appteka.store/ y el repositorio oficial de Appteka se encuentra en GitHub y puedes acceder a él mediante el siguiente hipervínculo:

https://github.com/solkin/appteka-android

En el repositorio de GitHub de Appteka, encontrarás la ultima versión de Appteka para descargar e instalar en tu dispositivo móvil, así como la documentación y otros recursos útiles relacionados con el proyecto.

En definitiva, Appteka es una excelente tienda alternativa para Android y su interfaz de usuario, además, es sencilla, cómoda y muy fácil de utilizar.

Quieres aportar algo que complemente este articulo? crees que hay algo que se deba corregir? Escríbenos este blog es para todos.


Finalmente recuerda que en https://jorgechac.blogspot.com nos dedicamos a construir una electrónica mejor! y apoyamos el proyecto CTC GO! (Creative Technologies in the Classroom) que es un programa de educación steam personalizable.


"La palabra 'Android', así como los logotipos oficiales, son marcas comerciales con copyright © de Google LLC. El lenguaje de programación Kotlin es propiedad de JetBrains y su comunidad de desarrolladores, y está sujeto a la Licencia Apache 2.0, una licencia de código abierto. Jetpack Compose, una biblioteca de interfaz de usuario para Android, es desarrollada y mantenida por Google y se rige por la misma Licencia Apache 2.0. Todos los derechos de marca y autor están reservados por sus respectivos propietarios y licencias correspondientes."




Si te sirvió deja un comentario de agradecimiento, comparte el post en tus redes sociales o recomiéndale el blog a un amigo, eso me motiva a seguir realizando estos pequeños posts y espero que vuelvas a mi blog, publico nuevo material con base en los softwares y apps que utilizo y la experiencia que he adquirido. Por último si deseas colaborar voluntariamente y crees que mi trabajo y mi tiempo lo ameritan, considere hacer una pequeña donación a mi NEQUI +573177295861.



También te puede interesar:


Magisk

BusyBox

Google Play Store le dirá adiós al formato APK y solo permitirá AAB desde agosto de 2021

Cómo borrar aplicaciones Preinstaladas de fabrica en móviles Android sin Root

Unroot

APKUpdater - Manten Actualizadas tus Aplicaciones Android

adAway - Bloqueo de Publicidad en Android

SatFinder

Spirit2 - Radio FM en tu Móvil

domingo, 18 de junio de 2023

Magisk

Bienvenido a mi blog, hoy hablaremos un poco de Magisk, la cual hoy en día es la única herramienta de root y modificación de Android que sigue activa, después de que el desarrollador Chainfire abandonara SuperSU. El developer de Magisk, John Wu, es originario de China y a diferencia de otras herramientas que sirven para una cosa y ya, Magisk incluye varias herramientas, desde systemless root hasta módulos, control de permisos de superusuario y un instalador que lo mantiene siempre actualizado. Si has oído hablar de Magisk pero no estás seguro de qué es o para qué sirve, aquí aprenderás sobre sus principales funciones.


Qué es Magisk y para qué sirve?


En Android un nombre que aparece pronto al hablar de modificaciones del sistema es Magisk, igual que hace unos años oiríamos más SuperSU, CWM o Xposed Framework. Esto es así pues es básicamente la única herramienta de root que sigue activa. Magisk recibe su nombre de la unión de Magic y Mask, pues uno de sus puntos fuertes es que ocultaba su modificación al sistema con Magisk Hide. Sin embargo, las últimas versiones de Magisk no incluyen Magisk Hide.

La ventaja que tenía Magisk Hide es que, a pesar de que el móvil estaba modificado y rooteado, seguía pasando test's de integridad como los de SafetyNet, el mismo test que impide que funcionen aplicaciones bancarias o juegos como Pokémon Go, cuando detectan que el móvil ha sido modificado. Si bien Magisk no incluye de serie MagiskHide, está abierto a que otros desarrolladores creen una funcionalidad similar mediante módulos.

En Magisk en lugar de hacer cambios en la partición del sistema, el desarrollador ha encontrado métodos de hacer los cambios en otras particiones, y de ahí que sea considerado systemless root, o root sin tocar la partición del sistema. Esto ayuda a que el móvil pase tests de integridad como SafetyNet. Además de permitirte gestionar el root y los permisos de superusuario, Magisk cuenta con módulos con una filosofía similar a la de Xposed Framework. Estos módulos se podían descargar antiguamente desde el propio Magisk, pero las últimas versiones ya no incluyen el repositorio, de modo que se deben descargar por separado.

Magisk se compone por un lado de su núcleo y por otro, de su aplicación de gestión Magisk Manager. Esta aplicación se usa para configurar Magisk, instalar módulos, revisar los permisos de superusuario y mantener actualizado Magisk.




Ha tener en cuenta que a partir de la versión 23 de Magisk, se eliminó la compatibilidad con Android 5 y versiones anteriores, esto significa que actualmente Magisk solo funciona en dispositivos con Marshmallow o Android 6 en adelante (API 23 y superiores).

Como podemos ver, Magisk es una completa herramienta para modificar móviles Android, con la que puedes ganar acceso root en un terminal, descargar e instalar módulos con modificaciones listas para usar y, en muchos casos, sin que salten las alarmas de las detecciones de modificaciones como SafetyNet. 

El repositorio oficial de Magisk se encuentra en GitHub y puedes acceder a él mediante el siguiente hypervinculo:

https://github.com/topjohnwu/Magisk

En el repositorio de GitHub de Magisk, encontrarás el código fuente, las versiones de Magisk para descargar y otra documentación relacionada. Este es el repositorio oficial mantenido por el desarrollador principal de Magisk, topjohnwu.

Un gran detalle a tener en cuenta es que el developer John Wu, fue fichado por Google para unirse a su equipo de seguridad, desde entonces anuncio que dejaba de desarrollar MagiskHide y que eliminaba el repositorio de módulos de Magisk Manager de la aplicación, asegurando no tener tiempo para su moderación. El autor de este blog no tiene conocimiento si aun el developer sigue trabajando para Google, ya que no publica nada sobre esto en sus redes sociales, aunque aun así, la aplicación sigue actualizándose al día de hoy.

Es importante tener en cuenta que el uso de Magisk puede violar los términos y condiciones de uso de algunas aplicaciones, así como la Política del Programa para Desarrolladores de Google Play Store, incluidos los requisitos de divulgación destacada y consentimiento. A día de hoy, la aplicación fue expulsada de la tienda y Google Play Protect la detecta como insegura y dañina. Además, utilizar esta aplicación puede ser ilegal en algunos países. Por lo tanto, es importante utilizarla con precaución y responsabilidad.


Porque el acceso root en android ha perdido tanta fuerza y ya casi nadie lo hace o habla sobre ello?


Inicialmente rooteabamos nuestros móviles porque por medio de ello podíamos intercambiar vía software (con la app link2sd) la memoria del teléfono por la memoria de la microSD, en esa época era común los móviles con solo 8 GB de memoria de almacenamiento interno y ya se encontraban memorias microSD con 16 GB o más, así ganábamos almacenamiento y podíamos instalar más aplicaciones, pero hoy en día es común encontrar móviles con 256 GB de almacenamiento interno o más, de esta forma ya no necesitamos del root, es más, los móviles a día de hoy como ya cuentan con un gran almacenamiento, ya ni siquiera traen socket para insertar una tarjeta microSD.

Otra gran causa son los fabricantes, ya que marcas como Huawei por ejemplo, ya no permiten el desbloqueo del bootloader, así que prácticamente es casi imposible poder rootear los modelos nuevos y otros fabricantes no liberan herramientas o firmwares con los cuales tener un respaldo o poder modificarlos.

Aunque por otra parte, hay grandes ventajas que las personas más nuevas desconocen o no les interesa, pero que pudieron y pueden marcar la diferencia aun al día de hoy y están son algunas de ellas:


  • Al rootear tu móvil podrás desinstalar todo el bloatware que viene preinstalado, Bloatware es la combinación de bloat (inflado) y ware, el bloatware no es un tipo de malware, son simplemente apps que vienen con el móvil de las cuales no te puedes librar fácilmente. Teniendo en cuenta lo anterior, la forma en la que afecta a tu móvil el bloatware es acaparando recursos, cuando ni siquiera es una app que te interesa o que vayas a utilizar, además si la app  se ejecuta por si sola, también usará memoria RAM y potencia de la CPU.
  • Al rootear tu móvil puedes instalar aplicaciones como <AdAway> la cual bloquea toda tipo de publicidad molesta y estorbosa, modificando directamente el archivo host del sistema Android.
  • Al rootear tu móvil puedes utilizar aplicaciones como <DiskDiggerPro_v1.0-pro> en su versión 2023-01-09 para recuperar todo tipo de archivos borrados.
  • Al rootear tu móvil puedes utilizar aplicaciones como <Lucky Patcher> que permite eliminar verificación de licencias y emular compras in app dentro de las aplicaciones, es decir, emular una compra dentro de la aplicación sin dinero real, sin colocar tu tarjeta bancaria.
  • Al rootear tu móvil puedes seguir utilizando <YouTube Vanced>, que es como YouTube premium sin publicidad y en 2do plano, aunque el mismo Google acabo con YouTube Vanced, la aplicación sigue funcionando al menos a día de hoy.
  • Al rootear tu móvil puedes acceder a todas las carpetas del sistema operativo y ver por ejemplo las claves del wifi. Te ha pasado que vas a un hotel y el dueño te pide el móvil y te dice: "venga yo le digito la clave", si tu móvil esta rooteado podrás saber fácilmente la clave que se tecleo simplemente verificando un archivo del sistema en una ruta especifica.
  • Al rootear tu móvil puedes utilizar aplicaciones como <ZIPme> que permite crear fácilmente zip flasheables de cualquier aplicación aunque esto ya es para usuarios mas avanzados.

Como ves las posibilidades son muy variadas, pero siempre te encontraras con algo nuevo y de lo cual aprenderás más acerca del mundo Android.


"La palabra 'Android', así como los logotipos oficiales, son marcas comerciales con copyright © de Google LLC. El lenguaje de programación Kotlin es propiedad de JetBrains y su comunidad de desarrolladores, y está sujeto a la Licencia Apache 2.0, una licencia de código abierto. Jetpack Compose, una biblioteca de interfaz de usuario para Android, es desarrollada y mantenida por Google y se rige por la misma Licencia Apache 2.0. Todos los derechos de marca y autor están reservados por sus respectivos propietarios y licencias correspondientes."




Quieres aportar algo que complemente este articulo? crees que hay algo que se deba corregir? Escríbenos este blog es para todos.

Finalmente recuerda que en https://jorgechac.blogspot.com nos dedicamos a construir una electrónica mejor! y apoyamos el proyecto CTC GO! (Creative Technologies in the Classroom) que es un programa de educación steam personalizable.


Si te sirvió deja un comentario de agradecimiento, comparte el post en tus redes sociales o recomiéndale el blog a un amigo, eso me motiva a seguir realizando estos pequeños posts y espero que vuelvas a mi blog, publico nuevo material con base en los softwares y apps que utilizo y la experiencia que he adquirido. Por último si deseas colaborar voluntariamente y crees que mi trabajo y mi tiempo lo ameritan, considere hacer una pequeña donación a mi NEQUI +573177295861.



También te puede interesar:


BusyBox

Google Play Store le dirá adiós al formato APK y solo permitirá AAB desde agosto de 2021

Cómo borrar aplicaciones Preinstaladas de fabrica en móviles Android sin Root

Unroot

adAway - Bloqueo de Publicidad en Android

SatFinder

Spirit2 - Radio FM en tu Móvil