<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="es">
    <title>Nezzontli - Project</title>
    <subtitle>Bitácora personal de Alejandro B.E.: tecnología, física, sistemas resilientes y fotografía analógica.</subtitle>
    <link rel="self" type="application/atom+xml" href="https://nezzontli.xyz/es/tags/project/atom.xml"/>
    <link rel="alternate" type="text/html" href="https://nezzontli.xyz"/>
    <generator uri="https://www.getzola.org/">Zola</generator>
    <updated>2026-07-16T00:00:00+00:00</updated>
    <id>https://nezzontli.xyz/es/tags/project/atom.xml</id>
    <entry xml:lang="es">
        <title>Servidor personal: Debian + Docker, no FreeBSD</title>
        <published>2026-07-16T00:00:00+00:00</published>
        <updated>2026-07-16T00:00:00+00:00</updated>
        
        <author>
          <name>
            B.E. Alejandro
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://nezzontli.xyz/es/blog/servidor/"/>
        <id>https://nezzontli.xyz/es/blog/servidor/</id>
        
        <content type="html" xml:base="https://nezzontli.xyz/es/blog/servidor/">&lt;h2 id=&quot;contexto&quot;&gt;Contexto&lt;&#x2F;h2&gt;
&lt;p&gt;Este post reemplaza una entrada anterior que describía el plan original: FreeBSD, jails, bastilleBSD. Ese plan no se ejecutó así. Lo que terminó corriendo en la máquina reusada (hostname &lt;code&gt;pcale&lt;&#x2F;code&gt;) es &lt;strong&gt;Debian 13 (Trixie)&lt;&#x2F;strong&gt; con todo containerizado en &lt;strong&gt;Docker&lt;&#x2F;strong&gt;, un stack por servicio en &lt;code&gt;docker-compose.yml&lt;&#x2F;code&gt; separados, sin hypervisor ni jails.&lt;&#x2F;p&gt;
&lt;p&gt;La razón del cambio fue práctica: Docker Compose me da aislamiento por servicio sin la curva de aprendizaje adicional de jails&#x2F;bhyve, y el ecosistema de imágenes ya resueltas (linuxserver, imágenes oficiales) redujo tiempo de instalación a casi cero comparado con compilar todo desde ports.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;infraestructura-base&quot;&gt;Infraestructura base&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;SO:&lt;&#x2F;strong&gt; Debian 13 (Trixie), kernel 6.12.x&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Actualizaciones:&lt;&#x2F;strong&gt; &lt;code&gt;unattended-upgrades&lt;&#x2F;code&gt; para parches de seguridad automáticos&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Todo lo demás vive en contenedores&lt;&#x2F;strong&gt; — cada servicio tiene su propio &lt;code&gt;docker-compose.yml&lt;&#x2F;code&gt; bajo &lt;code&gt;&#x2F;home&#x2F;ale&#x2F;&amp;lt;servicio&amp;gt;&#x2F;&lt;&#x2F;code&gt;, así config, volúmenes y upgrades quedan aislados por app&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;acceso-y-red&quot;&gt;Acceso y red&lt;&#x2F;h2&gt;
&lt;p&gt;No hay puertos abiertos al público en el router. El acceso normal es vía &lt;strong&gt;Tailscale&lt;&#x2F;strong&gt;: cada servicio interno se publica con un hostname propio y HTTPS real usando Tailscale Services:&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; class=&quot;language-bash z-code&quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span class=&quot;z-source z-shell z-bash&quot;&gt;&lt;span class=&quot;z-meta z-function-call z-shell&quot;&gt;&lt;span class=&quot;z-variable z-function z-shell&quot;&gt;tailscale&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-shell&quot;&gt; serve&lt;span class=&quot;z-variable z-parameter z-option z-shell&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-parameter z-shell&quot;&gt; --&lt;&#x2F;span&gt;service&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword z-operator z-assignment z-option z-shell&quot;&gt;=&lt;&#x2F;span&gt;svc:&lt;span class=&quot;z-keyword z-operator z-assignment z-redirection z-shell&quot;&gt;&amp;lt;&lt;&#x2F;span&gt;nombre&lt;span class=&quot;z-keyword z-operator z-assignment z-redirection z-shell&quot;&gt;&amp;gt;&lt;&#x2F;span&gt; &lt;span class=&quot;z-punctuation z-terminator z-file-descriptor z-shell&quot;&gt;-&lt;&#x2F;span&gt;-bg&lt;span class=&quot;z-variable z-parameter z-option z-shell&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-parameter z-shell&quot;&gt; --&lt;&#x2F;span&gt;https&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword z-operator z-assignment z-option z-shell&quot;&gt;=&lt;&#x2F;span&gt;443 http:&#x2F;&#x2F;localhost:&lt;span class=&quot;z-keyword z-operator z-assignment z-redirection z-shell&quot;&gt;&amp;lt;&lt;&#x2F;span&gt;puerto&lt;span class=&quot;z-keyword z-operator z-assignment z-redirection z-shell&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-shell z-bash&quot;&gt;&lt;span class=&quot;z-meta z-function-call z-shell&quot;&gt;&lt;span class=&quot;z-variable z-function z-shell&quot;&gt;tailscale&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-shell&quot;&gt; serve&lt;span class=&quot;z-variable z-parameter z-option z-shell&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-parameter z-shell&quot;&gt; --&lt;&#x2F;span&gt;service&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword z-operator z-assignment z-option z-shell&quot;&gt;=&lt;&#x2F;span&gt;svc:&lt;span class=&quot;z-keyword z-operator z-assignment z-redirection z-shell&quot;&gt;&amp;lt;&lt;&#x2F;span&gt;nombre&lt;span class=&quot;z-keyword z-operator z-assignment z-redirection z-shell&quot;&gt;&amp;gt;&lt;&#x2F;span&gt; &lt;span class=&quot;z-punctuation z-terminator z-file-descriptor z-shell&quot;&gt;-&lt;&#x2F;span&gt;-bg&lt;span class=&quot;z-variable z-parameter z-option z-shell&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-parameter z-shell&quot;&gt; --&lt;&#x2F;span&gt;http&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword z-operator z-assignment z-option z-shell&quot;&gt;=&lt;&#x2F;span&gt;80 http:&#x2F;&#x2F;localhost:&lt;span class=&quot;z-keyword z-operator z-assignment z-redirection z-shell&quot;&gt;&amp;lt;&lt;&#x2F;span&gt;puerto&lt;span class=&quot;z-keyword z-operator z-assignment z-redirection z-shell&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Esto da URLs como &lt;code&gt;https:&#x2F;&#x2F;nextcloud.tail32b955.ts.net&lt;&#x2F;code&gt;, con certificado válido, sin recordar puertos. Un par de servicios sí salen a internet público, pero vía &lt;strong&gt;Cloudflare Tunnel&lt;&#x2F;strong&gt; (&lt;code&gt;cloudflared&lt;&#x2F;code&gt;, conexión saliente únicamente, nada expuesto en el router) — el caso principal es PeerTube en &lt;code&gt;tube.richard69.lat&lt;&#x2F;code&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Perímetro:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;SSH solo con clave, llave de seguridad física (YubiKey), &lt;code&gt;X11Forwarding&lt;&#x2F;code&gt; desactivado&lt;&#x2F;li&gt;
&lt;li&gt;&lt;code&gt;ufw&lt;&#x2F;code&gt; en default-deny, la mayoría de servicios restringidos a LAN (&lt;code&gt;192.168.68.0&#x2F;24&lt;&#x2F;code&gt;) + Tailscale (&lt;code&gt;100.0.0.0&#x2F;8&lt;&#x2F;code&gt;)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;code&gt;fail2ban&lt;&#x2F;code&gt; en el jail de SSH (maxretry 3, ban 24h)&lt;&#x2F;li&gt;
&lt;li&gt;Vaultwarden llegó a tener un hostname público en el tunnel; se sacó por completo y ahora es Tailscale-only&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;servicios-corriendo&quot;&gt;Servicios corriendo&lt;&#x2F;h2&gt;
&lt;p&gt;&lt;strong&gt;Nube y datos personales&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Nextcloud&lt;&#x2F;strong&gt; — almacenamiento personal, también sirve como fuente de la biblioteca de Calibre-web (apunta directo a &lt;code&gt;Documents&#x2F;Libros&lt;&#x2F;code&gt; sin duplicar archivos)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Immich&lt;&#x2F;strong&gt; — fotos&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Vaultwarden&lt;&#x2F;strong&gt; — gestor de contraseñas (servidor compatible con Bitwarden), solo por Tailscale&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Calibre-web&lt;&#x2F;strong&gt; — lector&#x2F;biblioteca de ebooks&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;&lt;strong&gt;Media&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Jellyfin&lt;&#x2F;strong&gt; — servidor de medios (películas, series, música)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;qBittorrent + Radarr + Sonarr + Prowlarr&lt;&#x2F;strong&gt; — el stack *arr completo: indexers → búsqueda → descarga → importación, aterrizando directo en la biblioteca de Jellyfin, que se refresca sola al importar&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Navidrome&lt;&#x2F;strong&gt; — streaming de música&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;spotiflac&lt;&#x2F;strong&gt;, &lt;strong&gt;AudioMuse AI&lt;&#x2F;strong&gt; — utilidades de música&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;PeerTube&lt;&#x2F;strong&gt; — instancia propia y federada de video (&lt;code&gt;tube.richard69.lat&lt;&#x2F;code&gt;), con una imagen parcheada a mano (ver abajo)&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Todo el lado de descargas (qBittorrent, Radarr, Sonarr, Prowlarr, spotiflac) corre con &lt;code&gt;network_mode: container:mullvad-exit-vpn&lt;&#x2F;code&gt;, compartiendo el namespace de red de un único contenedor &lt;a href=&quot;https:&#x2F;&#x2F;github.com&#x2F;qdm12&#x2F;gluetun&quot;&gt;gluetun&lt;&#x2F;a&gt;, así ese tráfico —y solo ese— sale por un exit de Mullvad vía WireGuard.&lt;&#x2F;p&gt;
&lt;p&gt;Un extra que armé sobre esto: un script que convierte un canal de PeerTube seguido en una biblioteca de Jellyfin de archivos &lt;code&gt;.strm&lt;&#x2F;code&gt; (punteros a la URL del HLS del video original). Jellyfin los reproduce en directo desde la instancia origen sin que el archivo toque el disco del servidor.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Utilidades&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Glance&lt;&#x2F;strong&gt; — dashboard único: bookmarks, RSS, clima, chequeos de salud de cada servicio, buscador&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;4get&lt;&#x2F;strong&gt; — metabuscador privado, también el buscador embebido en Glance&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;ntfy&lt;&#x2F;strong&gt; — notificaciones push self-hosted (alertas del servidor, watchdog de la VPN, etc.)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Uptime Kuma &#x2F; Beszel&lt;&#x2F;strong&gt; — monitoreo, con umbrales de alerta mandando a ntfy&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Prosody&lt;&#x2F;strong&gt; — mensajería XMPP&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Forgejo&lt;&#x2F;strong&gt; — Git self-hosted (donde vive este mismo blog)&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;problemas-encontrados-y-soluciones&quot;&gt;Problemas encontrados (y soluciones)&lt;&#x2F;h2&gt;
&lt;p&gt;&lt;strong&gt;&lt;code&gt;network_mode: container:X&lt;&#x2F;code&gt; no se re-resuelve solo.&lt;&#x2F;strong&gt; Docker fija esa referencia a un &lt;em&gt;container ID&lt;&#x2F;em&gt; en el momento de crear el contenedor. Si gluetun se recrea (&lt;code&gt;docker compose up --force-recreate&lt;&#x2F;code&gt;, o cualquier reinicio del stack), todo lo que comparte su netns (qBittorrent, Radarr, Sonarr, Prowlarr, spotiflac) queda apuntando a un namespace huérfano. El síntoma es engañoso: el contenedor se ve &lt;code&gt;Up (healthy)&lt;&#x2F;code&gt; y su proceso interno escucha bien desde adentro, pero nada llega desde afuera. Fix: force-recreate de cada contenedor afectado, no alcanza con &lt;code&gt;docker restart&lt;&#x2F;code&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;*&lt;em&gt;La ruta de descarga de un &lt;em&gt;arr no puede ser su propia root folder.&lt;&#x2F;em&gt;&lt;&#x2F;em&gt; Si la categoría de qBittorrent apunta al mismo path que el root folder de Radarr&#x2F;Sonarr, la app no puede distinguir “todavía bajando” de “ya importado” y tira &lt;code&gt;DownloadClientRootFolderCheck&lt;&#x2F;code&gt;. Solución: carpetas de staging separadas (&lt;code&gt;&#x2F;media&#x2F;downloads&#x2F;movies&lt;&#x2F;code&gt;, &lt;code&gt;&#x2F;media&#x2F;downloads&#x2F;shows&lt;&#x2F;code&gt;), Radarr&#x2F;Sonarr importan por hardlink desde ahí al root folder real.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;ntfy en iOS necesita un &lt;code&gt;base-url&lt;&#x2F;code&gt; alcanzable.&lt;&#x2F;strong&gt; iOS no puede recibir contenido completo en el push directamente (limitación de APNs) — el teléfono hace polling al &lt;code&gt;base-url&lt;&#x2F;code&gt; del propio servidor después de recibir un push genérico de “new message”. Si ese &lt;code&gt;base-url&lt;&#x2F;code&gt; apunta a un dominio muerto, la notificación queda vacía sin ningún error visible en ningún lado.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;PeerTube solo acepta thumbnails remotos en JPEG.&lt;&#x2F;strong&gt; El validador de videos federados de PeerTube rechaza en silencio cualquier video cuyo thumbnail remoto sea PNG o WebP. Lo resolví con un parche chico horneado en una imagen Docker custom — hay que reconstruirla (no solo &lt;code&gt;docker compose pull&lt;&#x2F;code&gt;) en cada actualización de PeerTube o el parche desaparece sin avisar.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;que-falta-por-hacer&quot;&gt;Qué falta por hacer&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Cloudflare Access delante de Uptime Kuma si algún día se tunelea al público&lt;&#x2F;li&gt;
&lt;li&gt;Reglas de &lt;code&gt;ufw&lt;&#x2F;code&gt; para un par de servicios más nuevos (4get, AudioMuse) que hoy solo responden desde localhost&lt;&#x2F;li&gt;
&lt;li&gt;Un manual real de recuperación ante desastres — por ahora ese conocimiento vive en mis notas, no en un documento&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;idea-central&quot;&gt;Idea central&lt;&#x2F;h2&gt;
&lt;p&gt;El objetivo cambió de “aprender FreeBSD a fondo” a “tener servicios propios corriendo de forma confiable, con el mínimo de superficie expuesta al público”. Docker Compose y Tailscale resultaron el camino más corto ahí. FreeBSD y jails siguen siendo un proyecto que me interesa, pero para otro momento — ver el post de &lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;web&#x2F;&quot;&gt;OpenBSD&lt;&#x2F;a&gt; para la versión de “control total” aplicada a algo más chico (el hospedaje de este mismo sitio).&lt;&#x2F;p&gt;
&lt;h2 id=&quot;referencias&quot;&gt;Referencias&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;tailscale.com&#x2F;kb&#x2F;&quot;&gt;Documentación de Tailscale&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;github.com&#x2F;qdm12&#x2F;gluetun&quot;&gt;gluetun&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;github.com&#x2F;glanceapp&#x2F;glance&quot;&gt;Glance&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;wiki.servarr.com&#x2F;&quot;&gt;Servarr Wiki&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;docs.joinpeertube.org&#x2F;&quot;&gt;Documentación de PeerTube&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Uso de OpenBSD para hospedaje de página web</title>
        <published>2026-02-03T00:00:00+00:00</published>
        <updated>2026-02-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            B.E. Alejandro
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://nezzontli.xyz/es/blog/web/"/>
        <id>https://nezzontli.xyz/es/blog/web/</id>
        
        <content type="html" xml:base="https://nezzontli.xyz/es/blog/web/">&lt;h2 id=&quot;contexto-y-motivacion&quot;&gt;Contexto y motivación&lt;&#x2F;h2&gt;
&lt;p&gt;Decidí migrar el hospedaje de mi página web a OpenBSD como un ejercicio deliberado de control, simplicidad y seguridad.&lt;br &#x2F;&gt;
No fue una decisión basada en rendimiento, escalabilidad comercial ni automatización extrema, sino en comprensión total del sistema.&lt;&#x2F;p&gt;
&lt;p&gt;OpenBSD obliga a entender cada archivo de configuración, cada servicio activo y cada permiso. No oculta complejidad: la expone. Ese fue el motivo central de esta migración.&lt;&#x2F;p&gt;
&lt;p&gt;El objetivo era claro: un servidor auditable, predecible y mínimo.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;infraestructura-y-vm&quot;&gt;Infraestructura y VM&lt;&#x2F;h2&gt;
&lt;p&gt;El servidor corre en una máquina virtual alquilada (VPS) de bajo costo, suficiente para contenido estático y servicios mínimos.&lt;&#x2F;p&gt;
&lt;p&gt;Características generales de la VM:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;1 vCPU&lt;&#x2F;li&gt;
&lt;li&gt;1–2 GB de RAM&lt;&#x2F;li&gt;
&lt;li&gt;Almacenamiento SSD&lt;&#x2F;li&gt;
&lt;li&gt;IP pública dedicada&lt;&#x2F;li&gt;
&lt;li&gt;Acceso root inicial para bootstrap&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;El proveedor no es relevante: OpenBSD no depende de features del host. El sistema se mantiene portable y reproducible.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;eleccion-del-stack&quot;&gt;Elección del stack&lt;&#x2F;h2&gt;
&lt;p&gt;El stack fue elegido conscientemente para reducir superficie de ataque:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Sistema operativo: OpenBSD&lt;&#x2F;li&gt;
&lt;li&gt;Servidor web: httpd (nativo)&lt;&#x2F;li&gt;
&lt;li&gt;HTTPS: acme-client (Let’s Encrypt)&lt;&#x2F;li&gt;
&lt;li&gt;Generador estático: Zola&lt;&#x2F;li&gt;
&lt;li&gt;Tema: Duckquill (modificado)&lt;&#x2F;li&gt;
&lt;li&gt;Repositorio: Git + GitHub&lt;&#x2F;li&gt;
&lt;li&gt;Acceso remoto: SSH con YubiKey (OpenPGP)&lt;&#x2F;li&gt;
&lt;li&gt;Servicio oculto: Tor (mirror .onion)&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;No hay nginx, no hay docker, no hay paneles web, no hay Node en producción. Solo binarios del sistema base y archivos de texto.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;migracion-a-openbsd&quot;&gt;Migración a OpenBSD&lt;&#x2F;h2&gt;
&lt;p&gt;La migración incluyó:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Instalación limpia de OpenBSD&lt;&#x2F;li&gt;
&lt;li&gt;Configuración manual de red y DNS&lt;&#x2F;li&gt;
&lt;li&gt;Creación explícita de usuarios&lt;&#x2F;li&gt;
&lt;li&gt;Uso exclusivo de doas (sin sudo)&lt;&#x2F;li&gt;
&lt;li&gt;Servicios deshabilitados por defecto&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Separación clara entre: sistema (&#x2F;etc), contenido (&#x2F;var&#x2F;www), claves (&#x2F;etc&#x2F;ssl, &#x2F;etc&#x2F;acme). Nada se dejó “por default” sin entenderlo.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;servidor-web-con-httpd&quot;&gt;Servidor web con httpd&lt;&#x2F;h2&gt;
&lt;p&gt;El servidor web se configuró usando httpd nativo, sin módulos externos.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Configuración base simplificada:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;pre class=&quot;z-code&quot;&gt;&lt;code&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;server &amp;quot;nezzontli.xyz&amp;quot; {
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;    listen on * port 80
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;    root &amp;quot;&#x2F;htdocs&amp;quot;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;    location &amp;quot;&#x2F;.well-known&#x2F;acme-challenge&#x2F;*&amp;quot; {
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;        root &amp;quot;&#x2F;acme&amp;quot;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;        request strip 2
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;    }
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;}
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;server &amp;quot;nezzontli.xyz&amp;quot; {
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;    listen on * tls port 443
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;    root &amp;quot;&#x2F;htdocs&amp;quot;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;    tls {
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;        certificate &amp;quot;&#x2F;etc&#x2F;ssl&#x2F;nezzontli.xyz.fullchain.pem&amp;quot;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;        key &amp;quot;&#x2F;etc&#x2F;ssl&#x2F;private&#x2F;nezzontli.xyz.key&amp;quot;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;    }
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;}
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;https-con-acme-client&quot;&gt;HTTPS con acme-client&lt;&#x2F;h2&gt;
&lt;p&gt;OpenBSD incluye acme-client en base, lo que elimina dependencias externas.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Flujo real:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ol&gt;
&lt;li&gt;Configurar httpd solo en HTTP&lt;&#x2F;li&gt;
&lt;li&gt;Resolver DNS correctamente (A records apuntando a la VM)&lt;&#x2F;li&gt;
&lt;li&gt;Ejecutar: &lt;code&gt;doas acme-client -v nezzontli.xyz&lt;&#x2F;code&gt;&lt;&#x2F;li&gt;
&lt;li&gt;Verificar creación de certificados en &#x2F;etc&#x2F;ssl&lt;&#x2F;li&gt;
&lt;li&gt;Habilitar TLS en httpd&lt;&#x2F;li&gt;
&lt;li&gt;Reiniciar servicio&lt;&#x2F;li&gt;
&lt;&#x2F;ol&gt;
&lt;p&gt;No se usan scripts externos. La renovación se maneja vía cron del sistema.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;problemas-encontrados-y-soluciones&quot;&gt;Problemas encontrados (y soluciones)&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;1-error-404-en-acme-challenge&quot;&gt;1. Error 404 en ACME challenge&lt;&#x2F;h3&gt;
&lt;p&gt;&lt;strong&gt;Causa:&lt;&#x2F;strong&gt; httpd no estaba sirviendo correctamente &#x2F;var&#x2F;www&#x2F;acme.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Solución:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; class=&quot;language-bash z-code&quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span class=&quot;z-source z-shell z-bash&quot;&gt;&lt;span class=&quot;z-meta z-function-call z-shell&quot;&gt;&lt;span class=&quot;z-variable z-function z-shell&quot;&gt;doas&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-shell&quot;&gt; mkdir&lt;span class=&quot;z-variable z-parameter z-option z-shell&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-parameter z-shell&quot;&gt; -&lt;&#x2F;span&gt;p&lt;&#x2F;span&gt; &#x2F;var&#x2F;www&#x2F;acme&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-shell z-bash&quot;&gt;&lt;span class=&quot;z-meta z-function-call z-shell&quot;&gt;&lt;span class=&quot;z-variable z-function z-shell&quot;&gt;doas&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-shell&quot;&gt; chown&lt;span class=&quot;z-variable z-parameter z-option z-shell&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-parameter z-shell&quot;&gt; -&lt;&#x2F;span&gt;R&lt;&#x2F;span&gt; web:web &#x2F;var&#x2F;www&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h3 id=&quot;2-dns-no-propagado&quot;&gt;2. DNS no propagado&lt;&#x2F;h3&gt;
&lt;p&gt;Durante el primer intento, el dominio resolvía a múltiples IPs antiguas: &lt;code&gt;dig nezzontli.xyz +short&lt;&#x2F;code&gt;&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Solución:&lt;&#x2F;strong&gt; Esperar propagación completa y eliminar registros conflictivos.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;3-confusion-con-dnssec&quot;&gt;3. Confusión con DNSSEC&lt;&#x2F;h3&gt;
&lt;p&gt;DNSSEC no es requisito para Let’s Encrypt HTTP-01. DNSSEC es independiente de TLS. No se activó en esta etapa.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;generacion-del-sitio-con-zola&quot;&gt;Generación del sitio con Zola&lt;&#x2F;h2&gt;
&lt;p&gt;El sitio es 100% estático.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Flujo básico:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; class=&quot;language-bash z-code&quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span class=&quot;z-source z-shell z-bash&quot;&gt;&lt;span class=&quot;z-meta z-function-call z-shell&quot;&gt;&lt;span class=&quot;z-variable z-function z-shell&quot;&gt;zola&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-shell&quot;&gt; build&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-shell z-bash&quot;&gt;&lt;span class=&quot;z-meta z-function-call z-shell&quot;&gt;&lt;span class=&quot;z-variable z-function z-shell&quot;&gt;doas&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-shell&quot;&gt; rsync&lt;span class=&quot;z-variable z-parameter z-option z-shell&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-parameter z-shell&quot;&gt; -&lt;&#x2F;span&gt;a&lt;&#x2F;span&gt;&lt;span class=&quot;z-variable z-parameter z-option z-shell&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-parameter z-shell&quot;&gt; --&lt;&#x2F;span&gt;delete&lt;&#x2F;span&gt; public&#x2F; &#x2F;var&#x2F;www&#x2F;htdocs&#x2F;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;No hay generación en runtime. No hay escritura desde el servidor web.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;mirror-tor-onion&quot;&gt;Mirror Tor (.onion)&lt;&#x2F;h2&gt;
&lt;p&gt;Se configuró un Hidden Service de Tor como mirror del sitio.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&#x2F;etc&#x2F;tor&#x2F;torrc:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;pre class=&quot;z-code&quot;&gt;&lt;code&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;HiddenServiceDir &#x2F;var&#x2F;tor&#x2F;hidden_service&#x2F;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;HiddenServicePort 80 127.0.0.1:80
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;strong&gt;httpd escucha solo en localhost para Tor:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;pre class=&quot;z-code&quot;&gt;&lt;code&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;server &amp;quot;*&amp;quot; {
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;    listen on 127.0.0.1 port 80
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;    root &amp;quot;&#x2F;tor&amp;quot;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;}
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;strong&gt;Build específico para Tor:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; class=&quot;language-bash z-code&quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span class=&quot;z-source z-shell z-bash&quot;&gt;&lt;span class=&quot;z-meta z-function-call z-shell&quot;&gt;&lt;span class=&quot;z-variable z-function z-shell&quot;&gt;zola&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-shell&quot;&gt; build&lt;span class=&quot;z-variable z-parameter z-option z-shell&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-parameter z-shell&quot;&gt; --&lt;&#x2F;span&gt;base-url&lt;&#x2F;span&gt; http:&#x2F;&#x2F;&lt;span class=&quot;z-keyword z-operator z-assignment z-redirection z-shell&quot;&gt;&amp;lt;&lt;&#x2F;span&gt;onion&lt;span class=&quot;z-keyword z-operator z-assignment z-redirection z-shell&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;.onion&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-shell z-bash&quot;&gt;&lt;span class=&quot;z-meta z-function-call z-shell&quot;&gt;&lt;span class=&quot;z-variable z-function z-shell&quot;&gt;doas&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-shell&quot;&gt; rsync&lt;span class=&quot;z-variable z-parameter z-option z-shell&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-parameter z-shell&quot;&gt; -&lt;&#x2F;span&gt;a&lt;&#x2F;span&gt;&lt;span class=&quot;z-variable z-parameter z-option z-shell&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-parameter z-shell&quot;&gt; --&lt;&#x2F;span&gt;delete&lt;&#x2F;span&gt; public&#x2F; &#x2F;var&#x2F;www&#x2F;tor&#x2F;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;strong&gt;Integración Tor Browser (Onion-Location):&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;html&quot; class=&quot;language-html z-code&quot;&gt;&lt;code class=&quot;language-html&quot; data-lang=&quot;html&quot;&gt;&lt;span class=&quot;z-text z-html z-basic&quot;&gt;&lt;span class=&quot;z-meta z-tag z-inline z-any z-html&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-tag z-begin z-html&quot;&gt;&amp;lt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-entity z-name z-tag z-inline z-any z-html&quot;&gt;meta&lt;&#x2F;span&gt; &lt;span class=&quot;z-meta z-attribute-with-value z-html&quot;&gt;&lt;span class=&quot;z-entity z-other z-attribute-name z-html&quot;&gt;http-equiv&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-separator z-key-value z-html&quot;&gt;=&lt;&#x2F;span&gt;&lt;span class=&quot;z-string z-quoted z-double z-html&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-string z-begin z-html&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;onion-location&lt;span class=&quot;z-punctuation z-definition z-string z-end z-html&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt; &lt;span class=&quot;z-meta z-attribute-with-value z-html&quot;&gt;&lt;span class=&quot;z-entity z-other z-attribute-name z-html&quot;&gt;content&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-separator z-key-value z-html&quot;&gt;=&lt;&#x2F;span&gt;&lt;span class=&quot;z-string z-quoted z-double z-html&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-string z-begin z-html&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;http:&#x2F;&#x2F;&amp;lt;onion&amp;gt;.onion&lt;span class=&quot;z-punctuation z-definition z-string z-end z-html&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-tag z-end z-html&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;automatizacion-del-despliegue&quot;&gt;Automatización del despliegue&lt;&#x2F;h2&gt;
&lt;p&gt;Script único para clearnet + Tor:&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;bash&quot; class=&quot;language-bash z-code&quot;&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span class=&quot;z-source z-shell z-bash&quot;&gt;&lt;span class=&quot;z-comment z-line z-number-sign z-shell&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-comment z-begin z-shell&quot;&gt;#&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-comment z-line z-number-sign z-shell&quot;&gt;!&#x2F;bin&#x2F;sh&lt;&#x2F;span&gt;&lt;span class=&quot;z-comment z-line z-number-sign z-shell&quot;&gt;
&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-shell z-bash&quot;&gt;&lt;span class=&quot;z-meta z-function-call z-shell&quot;&gt;&lt;span class=&quot;z-support z-function z-set z-shell&quot;&gt;set&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-shell&quot;&gt; &lt;span class=&quot;z-variable z-parameter z-option z-shell&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-parameter z-shell&quot;&gt;-&lt;&#x2F;span&gt;e&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-shell z-bash&quot;&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-shell z-bash&quot;&gt;&lt;span class=&quot;z-variable z-other z-readwrite z-assignment z-shell&quot;&gt;ONION_URL&lt;&#x2F;span&gt;&lt;span class=&quot;z-keyword z-operator z-assignment z-shell&quot;&gt;=&lt;&#x2F;span&gt;&lt;span class=&quot;z-string z-unquoted z-shell&quot;&gt;&lt;span class=&quot;z-string z-quoted z-double z-shell&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-string z-begin z-shell&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;http:&#x2F;&#x2F;&amp;lt;onion&amp;gt;.onion&lt;span class=&quot;z-punctuation z-definition z-string z-end z-shell&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-shell z-bash&quot;&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-shell z-bash&quot;&gt;&lt;span class=&quot;z-meta z-function-call z-shell&quot;&gt;&lt;span class=&quot;z-variable z-function z-shell&quot;&gt;git&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-shell&quot;&gt; pull&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-shell z-bash&quot;&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-shell z-bash&quot;&gt;&lt;span class=&quot;z-meta z-function-call z-shell&quot;&gt;&lt;span class=&quot;z-variable z-function z-shell&quot;&gt;zola&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-shell&quot;&gt; build&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-shell z-bash&quot;&gt;&lt;span class=&quot;z-meta z-function-call z-shell&quot;&gt;&lt;span class=&quot;z-variable z-function z-shell&quot;&gt;doas&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-shell&quot;&gt; rsync&lt;span class=&quot;z-variable z-parameter z-option z-shell&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-parameter z-shell&quot;&gt; -&lt;&#x2F;span&gt;a&lt;&#x2F;span&gt;&lt;span class=&quot;z-variable z-parameter z-option z-shell&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-parameter z-shell&quot;&gt; --&lt;&#x2F;span&gt;delete&lt;&#x2F;span&gt; public&#x2F; &#x2F;var&#x2F;www&#x2F;htdocs&#x2F;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-shell z-bash&quot;&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-shell z-bash&quot;&gt;&lt;span class=&quot;z-meta z-function-call z-shell&quot;&gt;&lt;span class=&quot;z-variable z-function z-shell&quot;&gt;zola&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-shell&quot;&gt; build&lt;span class=&quot;z-variable z-parameter z-option z-shell&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-parameter z-shell&quot;&gt; --&lt;&#x2F;span&gt;base-url&lt;&#x2F;span&gt; &lt;span class=&quot;z-string z-quoted z-double z-shell&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-string z-begin z-shell&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-group z-expansion z-parameter z-shell&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-variable z-shell&quot;&gt;$&lt;&#x2F;span&gt;&lt;span class=&quot;z-variable z-other z-readwrite z-shell&quot;&gt;ONION_URL&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-definition z-string z-end z-shell&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-shell z-bash&quot;&gt;&lt;span class=&quot;z-meta z-function-call z-shell&quot;&gt;&lt;span class=&quot;z-variable z-function z-shell&quot;&gt;doas&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-shell&quot;&gt; rsync&lt;span class=&quot;z-variable z-parameter z-option z-shell&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-parameter z-shell&quot;&gt; -&lt;&#x2F;span&gt;a&lt;&#x2F;span&gt;&lt;span class=&quot;z-variable z-parameter z-option z-shell&quot;&gt;&lt;span class=&quot;z-punctuation z-definition z-parameter z-shell&quot;&gt; --&lt;&#x2F;span&gt;delete&lt;&#x2F;span&gt; public&#x2F; &#x2F;var&#x2F;www&#x2F;tor&#x2F;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Instalado en: &lt;code&gt;&#x2F;usr&#x2F;local&#x2F;bin&#x2F;update-site&lt;&#x2F;code&gt;&lt;&#x2F;p&gt;
&lt;h2 id=&quot;control-de-acceso-ssh-yubikey&quot;&gt;Control de acceso: SSH + YubiKey&lt;&#x2F;h2&gt;
&lt;p&gt;Acceso remoto sin contraseñas persistentes:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Clave OpenPGP en YubiKey&lt;&#x2F;li&gt;
&lt;li&gt;PIN + touch físico&lt;&#x2F;li&gt;
&lt;li&gt;gpg-agent como SSH agent&lt;&#x2F;li&gt;
&lt;li&gt;ssh-ed25519&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;La clave privada nunca toca el disco.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;control-de-versiones-y-firmas&quot;&gt;Control de versiones y firmas&lt;&#x2F;h2&gt;
&lt;p&gt;Repositorio alojado en GitHub:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Git puro&lt;&#x2F;li&gt;
&lt;li&gt;Commits firmados&lt;&#x2F;li&gt;
&lt;li&gt;Modelo de confianza por defecto&lt;&#x2F;li&gt;
&lt;li&gt;Sin CI obligatorio&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;El servidor no compila desde hooks remotos: el despliegue es consciente y manual.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;estructura-del-proyecto&quot;&gt;Estructura del proyecto&lt;&#x2F;h2&gt;
&lt;pre class=&quot;z-code&quot;&gt;&lt;code&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;site&#x2F;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;├── config.toml
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;├── content&#x2F;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;├── templates&#x2F;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;├── static&#x2F;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;├── public&#x2F;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;└── scripts&#x2F;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;strong&gt;En servidor:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;pre class=&quot;z-code&quot;&gt;&lt;code&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;&#x2F;var&#x2F;www&#x2F;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;├── htdocs&#x2F;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;├── tor&#x2F;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-text z-plain&quot;&gt;└── acme&#x2F;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;que-falta-por-hacer&quot;&gt;Qué falta por hacer&lt;&#x2F;h2&gt;
&lt;p&gt;&lt;strong&gt;Pendientes reales:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Hardening adicional de httpd&lt;&#x2F;li&gt;
&lt;li&gt;Documentar bootstrap completo desde cero&lt;&#x2F;li&gt;
&lt;li&gt;Monitoreo mínimo (sin agentes invasivos)&lt;&#x2F;li&gt;
&lt;li&gt;Publicar configs como referencia reproducible&lt;&#x2F;li&gt;
&lt;li&gt;Auditoría de headers de seguridad&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;idea-central&quot;&gt;Idea central&lt;&#x2F;h2&gt;
&lt;p&gt;Este proyecto no busca conveniencia ni velocidad de desarrollo.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Busca:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Comprensión&lt;&#x2F;li&gt;
&lt;li&gt;Control&lt;&#x2F;li&gt;
&lt;li&gt;Auditabilidad&lt;&#x2F;li&gt;
&lt;li&gt;Reducción de estados implícitos&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;OpenBSD no acelera el trabajo. Elimina errores silenciosos. Ese es el valor.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Detección de inundaciones</title>
        <published>2025-11-02T00:00:00+00:00</published>
        <updated>2025-11-02T00:00:00+00:00</updated>
        
        <author>
          <name>
            B.E. Alejandro
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://nezzontli.xyz/es/blog/proyecto1/"/>
        <id>https://nezzontli.xyz/es/blog/proyecto1/</id>
        
        <content type="html" xml:base="https://nezzontli.xyz/es/blog/proyecto1/">&lt;h2 id=&quot;introduccion-y-justificacion&quot;&gt;Introducción y Justificación&lt;&#x2F;h2&gt;
&lt;p&gt;El estado de &lt;strong&gt;Hidalgo&lt;&#x2F;strong&gt; enfrenta una problemática crítica y recurrente de riesgo hídrico, manifestada en inundaciones por desbordamiento de ríos y presas. Esta situación se agrava por la falta de sistemas de monitoreo constante y la ausencia de un &lt;strong&gt;Sistema de Alerta Temprana (SAT)&lt;&#x2F;strong&gt; robusto y accesible para la población en las zonas de riesgo.&lt;&#x2F;p&gt;
&lt;p&gt;Cada temporada de lluvias intensas, miles de familias mexicanas, particularmente en Hidalgo, son afectadas por estos desbordamientos, resultando en la pérdida de vidas y bienes materiales. Un ejemplo trágico y emblemático fue la &lt;strong&gt;inundación del río Tula en septiembre de 2021&lt;&#x2F;strong&gt;, donde el desbordamiento alcanzó hasta &lt;strong&gt;dos metros de altura&lt;&#x2F;strong&gt;, afectando a más de &lt;strong&gt;2,500 viviendas&lt;&#x2F;strong&gt; y cobrando la vida de &lt;strong&gt;17 personas&lt;&#x2F;strong&gt; en el Hospital General de Zona (HGZ) No. 5 del IMSS en Tula de Allende &lt;a href=&quot;https:&#x2F;&#x2F;corrientealterna.unam.mx&#x2F;cronica&#x2F;a-un-ano-de-la-inundacion-en-tula-las-damnificadas-enfrentan-danos-emocionales-y-falta-de-apoyo&#x2F;&quot;&gt;1&lt;&#x2F;a&gt;, &lt;a href=&quot;https:&#x2F;&#x2F;www.uaeh.edu.mx&#x2F;gaceta&#x2F;3&#x2F;numero32&#x2F;octubre&#x2F;inundaciones-valle-mezquital.html&quot;&gt;2&lt;&#x2F;a&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;Los municipios identificados con mayor vulnerabilidad a este tipo de fenómenos incluyen &lt;strong&gt;Tula de Allende&lt;&#x2F;strong&gt;, &lt;strong&gt;Huehuetla&lt;&#x2F;strong&gt;, &lt;strong&gt;Tianguistengo&lt;&#x2F;strong&gt;, y otras zonas de la Huasteca y la Sierra Hidalguense &lt;a href=&quot;https:&#x2F;&#x2F;www.milenio.com&#x2F;politica&#x2F;comunidad&#x2F;temporada-de-lluvias-en-hidalgo-2025-municipios-riesgo-inundacion&quot;&gt;3&lt;&#x2F;a&gt;, &lt;a href=&quot;https:&#x2F;&#x2F;www.jornada.com.mx&#x2F;noticia&#x2F;2025&#x2F;10&#x2F;10&#x2F;estados&#x2F;lluvias-desbordan-rios-en-hidalgo-causando-graves-inundaciones-en-7-municipios&quot;&gt;4&lt;&#x2F;a&gt;. Además, la gestión de embalses como la &lt;strong&gt;Presa La Esperanza&lt;&#x2F;strong&gt; (que ha alcanzado el 100% de su capacidad) y la &lt;strong&gt;Presa Tejocotal&lt;&#x2F;strong&gt; (con riesgo de desbordamiento en temporadas de alta precipitación) subraya la necesidad urgente de un monitoreo en tiempo real &lt;a href=&quot;https:&#x2F;&#x2F;es-us.noticias.yahoo.com&#x2F;hidalgo-mantiene-alerta-intensas-lluvias-134942535.html&quot;&gt;5&lt;&#x2F;a&gt;.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;propuesta-de-solucion-sistema-de-deteccion-de-inundaciones-basado-en-meshtastic-lora&quot;&gt;Propuesta de Solución: Sistema de Detección de Inundaciones Basado en Meshtastic&#x2F;LoRa&lt;&#x2F;h2&gt;
&lt;p&gt;Se propone la implementación de un &lt;strong&gt;Sistema de Detección y Alerta Temprana de Inundaciones (SAT-I)&lt;&#x2F;strong&gt; utilizando la tecnología de red mallada &lt;strong&gt;Meshtastic&lt;&#x2F;strong&gt; sobre la infraestructura de radio de largo alcance y baja potencia (&lt;strong&gt;LoRa&lt;&#x2F;strong&gt;). Este sistema está diseñado para operar de manera autónoma y resiliente, incluso ante la caída de las redes de comunicación convencionales (telefonía móvil o Wi-Fi) &lt;a href=&quot;https:&#x2F;&#x2F;www.zonaindustrial.cl&#x2F;meshtastic&quot;&gt;6&lt;&#x2F;a&gt;.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;componentes-y-funcionamiento&quot;&gt;Componentes y Funcionamiento&lt;&#x2F;h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Detección de Nivel de Agua:&lt;&#x2F;strong&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ol&gt;
&lt;ul&gt;
&lt;li&gt;Se emplearán &lt;strong&gt;sensores ultrasónicosicos de grado industrial&lt;&#x2F;strong&gt; con una precisión de hasta &lt;strong&gt;±1 cm&lt;&#x2F;strong&gt; para la medición constante del nivel del agua en ríos o presas.&lt;&#x2F;li&gt;
&lt;li&gt;Estos sensores se integrarán en una &lt;strong&gt;cápsula hermética&lt;&#x2F;strong&gt; de protección, asegurando su resistencia a la corrosión y a las condiciones ambientales extremas.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;ol start=&quot;2&quot;&gt;
&lt;li&gt;&lt;strong&gt;Comunicación Autónoma (Meshtastic&#x2F;LoRa):&lt;&#x2F;strong&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ol&gt;
&lt;ul&gt;
&lt;li&gt;Los datos de los sensores serán transmitidos a través de módulos &lt;strong&gt;LoRa&lt;&#x2F;strong&gt; que ejecutan el &lt;em&gt;firmware&lt;&#x2F;em&gt; &lt;strong&gt;Meshtastic&lt;&#x2F;strong&gt;. Esta tecnología utiliza ondas de radio de largo alcance y bajo consumo, permitiendo la comunicación &lt;em&gt;off-grid&lt;&#x2F;em&gt; (fuera de la red eléctrica o de telecomunicaciones) a distancias de varios kilómetros.&lt;&#x2F;li&gt;
&lt;li&gt;La naturaleza de &lt;strong&gt;red mallada (mesh)&lt;&#x2F;strong&gt; de Meshtastic permite que cada nodo actúe como repetidor, extendiendo el alcance y la redundancia del sistema. En caso de que un nodo falle, la información puede ser retransmitida por otros nodos en la red.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;ol start=&quot;3&quot;&gt;
&lt;li&gt;&lt;strong&gt;Alerta Temprana y Aplicaciones Adicionales:&lt;&#x2F;strong&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ol&gt;
&lt;ul&gt;
&lt;li&gt;El sistema no solo detectará desbordamientos inminentes, sino que también puede ser adaptado para &lt;strong&gt;detectar sequías&lt;&#x2F;strong&gt; mediante el monitoreo de niveles mínimos, facilitando la gestión hídrica en presas o zonas rurales.&lt;&#x2F;li&gt;
&lt;li&gt;La alerta se puede emitir a dispositivos portátiles (como &lt;em&gt;smartphones&lt;&#x2F;em&gt; con la aplicación Meshtastic) o a sistemas de alarma locales, garantizando una &lt;strong&gt;evacuación temprana&lt;&#x2F;strong&gt; de la población.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;requerimientos-minimos-para-el-prototipo&quot;&gt;Requerimientos Mínimos para el Prototipo&lt;&#x2F;h3&gt;
&lt;p&gt;Para la implementación inicial de un nodo de monitoreo y su repetidor se requiere:&lt;&#x2F;p&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th style=&quot;text-align: left&quot;&gt;Componente&lt;&#x2F;th&gt;&lt;th style=&quot;text-align: left&quot;&gt;Cantidad&lt;&#x2F;th&gt;&lt;th style=&quot;text-align: left&quot;&gt;Función&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: left&quot;&gt;&lt;strong&gt;Módulos LoRa&#x2F;Meshtastic&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td style=&quot;text-align: left&quot;&gt;2&lt;&#x2F;td&gt;&lt;td style=&quot;text-align: left&quot;&gt;Nodos de comunicación autónoma (uno para el sensor, otro como receptor&#x2F;gateway).&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: left&quot;&gt;&lt;strong&gt;Sensores Ultrasónicos&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td style=&quot;text-align: left&quot;&gt;2&lt;&#x2F;td&gt;&lt;td style=&quot;text-align: left&quot;&gt;Medición precisa (±1 cm) del nivel del agua.&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: left&quot;&gt;&lt;strong&gt;Retransmisor Autónomo&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td style=&quot;text-align: left&quot;&gt;1&lt;&#x2F;td&gt;&lt;td style=&quot;text-align: left&quot;&gt;Nodo adicional con alimentación solar para extender el alcance de la red mallada.&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;h3 id=&quot;consideraciones-de-despliegue&quot;&gt;Consideraciones de Despliegue&lt;&#x2F;h3&gt;
&lt;p&gt;El despliegue del sistema debe ir precedido por un &lt;strong&gt;estudio topográfico&lt;&#x2F;strong&gt; detallado. Este estudio es crucial para:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Determinar la ubicación óptima de los nodos y retransmisores para maximizar el alcance de la red LoRa.&lt;&#x2F;li&gt;
&lt;li&gt;Establecer los umbrales de alerta basados en la topografía de la zona y los niveles históricos de desbordamiento.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Todos los retransmisores deben ser &lt;strong&gt;autónomos&lt;&#x2F;strong&gt; y alimentados por &lt;strong&gt;paneles solares&lt;&#x2F;strong&gt;, aprovechando la eficiencia energética y el bajo consumo de la tecnología LoRa.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;escalabilidad-y-aplicaciones-adicionales-beneficios-para-la-agricultura&quot;&gt;Escalabilidad y Aplicaciones Adicionales: Beneficios para la Agricultura&lt;&#x2F;h2&gt;
&lt;p&gt;La arquitectura modular y resiliente del sistema SAT-I basado en Meshtastic&#x2F;LoRa permite una escalabilidad inmediata para integrar otros sensores y fuentes de datos, ampliando su utilidad más allá de la prevención de inundaciones. Dado que &lt;strong&gt;Hidalgo es un estado con una importante vocación agrícola&lt;&#x2F;strong&gt;, esta escalabilidad ofrece beneficios directos para el sector primario.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;integracion-de-sistemas-meteorologicos-para-prediccion-de-lluvias&quot;&gt;Integración de Sistemas Meteorológicos para Predicción de Lluvias&lt;&#x2F;h3&gt;
&lt;p&gt;Se propone la integración de &lt;strong&gt;estaciones meteorológicas autónomas&lt;&#x2F;strong&gt; (alimentadas por energía solar y equipadas con sensores de precipitación, temperatura y humedad) que también utilicen la red Meshtastic&#x2F;LoRa para la transmisión de datos.&lt;&#x2F;p&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th style=&quot;text-align: left&quot;&gt;Dato Adicional&lt;&#x2F;th&gt;&lt;th style=&quot;text-align: left&quot;&gt;Beneficio para la Prevención de Inundaciones&lt;&#x2F;th&gt;&lt;th style=&quot;text-align: left&quot;&gt;Beneficio para la Agricultura&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: left&quot;&gt;&lt;strong&gt;Precipitación Acumulada&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td style=&quot;text-align: left&quot;&gt;Permite modelar la saturación del suelo y predecir el caudal de los ríos con mayor precisión, mejorando la anticipación de la alerta.&lt;&#x2F;td&gt;&lt;td style=&quot;text-align: left&quot;&gt;Ayuda a los agricultores a optimizar el riego y a planificar la siembra y cosecha en función de la disponibilidad hídrica.&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: left&quot;&gt;&lt;strong&gt;Temperatura y Humedad&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td style=&quot;text-align: left&quot;&gt;Ofrece contexto para la predicción de tormentas intensas y fenómenos hidrometeorológicos.&lt;&#x2F;td&gt;&lt;td style=&quot;text-align: left&quot;&gt;Facilita la gestión de plagas y enfermedades, y optimiza las condiciones de cultivo para especies específicas.&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;p&gt;Al enviar estos datos a través de la red mesh, se crea un sistema de información ambiental &lt;strong&gt;descentralizado y robusto&lt;&#x2F;strong&gt;. La combinación de la &lt;strong&gt;predicción meteorológica&lt;&#x2F;strong&gt; (datos de lluvia) con el &lt;strong&gt;monitoreo hidrológico en tiempo real&lt;&#x2F;strong&gt; (nivel de agua) proporciona una herramienta de análisis mucho más completa para la prevención de desastres.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;conclusion&quot;&gt;Conclusión&lt;&#x2F;h2&gt;
&lt;p&gt;La integración de sensores de precisión con la red de comunicación resiliente Meshtastic&#x2F;LoRa ofrece una solución &lt;strong&gt;autónoma y autosuficiente&lt;&#x2F;strong&gt; para la detección temprana de riesgos hídricos en Hidalgo. Este enfoque no solo aborda la vulnerabilidad de las redes convencionales, sino que proporciona una herramienta vital para la &lt;strong&gt;salvaguarda de la población&lt;&#x2F;strong&gt; y la protección de sus bienes ante un desbordamiento inminente.&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;referencias-bibliografia&quot;&gt;Referencias (Bibliografía)&lt;&#x2F;h2&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;corrientealterna.unam.mx&#x2F;cronica&#x2F;a-un-ano-de-la-inundacion-en-tula-las-damnificadas-enfrentan-danos-emocionales-y-falta-de-apoyo&#x2F;&quot;&gt;Redacción. (2022, 7 septiembre). &lt;em&gt;A un año de la inundación en Tula: las damnificadas enfrentan daños emocionales y falta de apoyo&lt;&#x2F;em&gt;. Corriente Alterna UNAM.&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;www.uaeh.edu.mx&#x2F;gaceta&#x2F;3&#x2F;numero32&#x2F;octubre&#x2F;inundaciones-valle-mezquital.html&quot;&gt;Gaceta UAEH. (s.f.). &lt;em&gt;Inundaciones en el Valle del Mezquital, una tragedia anunciada&lt;&#x2F;em&gt;. Universidad Autónoma del Estado de Hidalgo.&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;www.milenio.com&#x2F;politica&#x2F;comunidad&#x2F;temporada-de-lluvias-en-hidalgo-2025-municipios-riesgo-inundacion&quot;&gt;Milenio Digital. (2025, 12 mayo). &lt;em&gt;Estos son los municipios de Hidalgo con mayor riesgo de inundaciones&lt;&#x2F;em&gt;. Milenio.&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;www.jornada.com.mx&#x2F;noticia&#x2F;2025&#x2F;10&#x2F;10&#x2F;estados&#x2F;lluvias-desbordan-rios-en-hidalgo-causando-graves-inundaciones-en-7-municipios&quot;&gt;La Jornada. (2025, 10 octubre). &lt;em&gt;Lluvias desbordan ríos en Hidalgo causando graves inundaciones en 7 municipios&lt;&#x2F;em&gt;.&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;es-us.noticias.yahoo.com&#x2F;hidalgo-mantiene-alerta-intensas-lluvias-134942535.html&quot;&gt;Yahoo Noticias. (2025, 30 junio). &lt;em&gt;Hidalgo se mantiene en alerta por intensas lluvias y presas al límite&lt;&#x2F;em&gt;.&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;www.zonaindustrial.cl&#x2F;meshtastic&quot;&gt;Zona Industrial. (s.f.). &lt;em&gt;Meshtastic - Guía para tu Red Mesh&lt;&#x2F;em&gt;.&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;www.amazon.com&#x2F;-&#x2F;es&#x2F;YoLink-LoRa-inteligente-inundaciones-notificaciones&#x2F;dp&#x2F;B083Z5Z9HM&quot;&gt;YoLink. (s.f.). &lt;em&gt;YoLink LoRa - Sensor de fugas de agua de hasta 1&#x2F;4 de milla&lt;&#x2F;em&gt;.&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ol&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Smart Mushroom Cultivation</title>
        <published>2025-06-14T00:00:00+00:00</published>
        <updated>2025-06-14T00:00:00+00:00</updated>
        
        <author>
          <name>
            B.E. Alejandro
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://nezzontli.xyz/es/blog/hongos/"/>
        <id>https://nezzontli.xyz/es/blog/hongos/</id>
        
        <content type="html" xml:base="https://nezzontli.xyz/es/blog/hongos/">&lt;h2 id=&quot;project-summary&quot;&gt;Project Summary&lt;&#x2F;h2&gt;
&lt;p&gt;This project involves the development of a modular, intelligent, and fully automated system for cultivating edible and medicinal mushrooms. Each unit functions as an independent ecosystem, automatically monitored and adjusted by artificial intelligence, with full control from a mobile application or web dashboard.&lt;&#x2F;p&gt;
&lt;p&gt;The system is designed to optimize the growing conditions for different mushroom species, maximizing production while minimizing human intervention.&lt;&#x2F;p&gt;
&lt;p&gt;#Mushrooms #Automation #IoT #Cultivation #AI #RaspberryPi #ESP32&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;main-features&quot;&gt;Main Features&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;modular-design&quot;&gt;Modular Design&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;Vertical structure with independent cubes of different sizes&lt;&#x2F;li&gt;
&lt;li&gt;Each module has its own environmental control system&lt;&#x2F;li&gt;
&lt;li&gt;Ability to grow different species simultaneously&lt;&#x2F;li&gt;
&lt;li&gt;Scalability according to production needs&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;intelligent-environmental-control&quot;&gt;Intelligent Environmental Control&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;Real-time monitoring of critical parameters&lt;&#x2F;li&gt;
&lt;li&gt;Automatic adjustment according to the selected species&lt;&#x2F;li&gt;
&lt;li&gt;Alerts and notifications for anomalous conditions&lt;&#x2F;li&gt;
&lt;li&gt;Historical data logging for analysis and optimization&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;visual-analysis-with-ai&quot;&gt;Visual Analysis with AI&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;Growth status detection using computer vision&lt;&#x2F;li&gt;
&lt;li&gt;Prediction of the optimal harvest time&lt;&#x2F;li&gt;
&lt;li&gt;Early identification of contamination or problems&lt;&#x2F;li&gt;
&lt;li&gt;Continuous learning to improve results&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;system-components&quot;&gt;System Components&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;infrastructure-and-design&quot;&gt;Infrastructure and Design&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Modular structure:&lt;&#x2F;strong&gt; Vertical shelf with cubes of different sizes&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;hongos&#x2F;cubos&#x2F;&quot;&gt;Cubes&lt;&#x2F;a&gt;:&lt;&#x2F;strong&gt; Each cube has its own environmental control system&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Substrate material:&lt;&#x2F;strong&gt; Varies by species (straw, sawdust, coffee, etc.)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Thermal insulation:&lt;&#x2F;strong&gt; To maintain stable conditions regardless of the external environment&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;automated-environmental-control&quot;&gt;Automated Environmental Control&lt;&#x2F;h3&gt;
&lt;p&gt;Each cube will have sensors and actuators to maintain an autonomous microclimate, adjusted according to the type of mushroom entered via the app.&lt;&#x2F;p&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Sensors&lt;&#x2F;th&gt;&lt;th&gt;Actuators&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;Temperature&lt;&#x2F;td&gt;&lt;td&gt;Humidifiers &#x2F; Dehumidifiers&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Humidity&lt;&#x2F;td&gt;&lt;td&gt;Fans &#x2F; Air extractors&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;CO₂&lt;&#x2F;td&gt;&lt;td&gt;Water pumps (automated irrigation)&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Light&lt;&#x2F;td&gt;&lt;td&gt;Programmable LED lighting&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;p&gt;&lt;em&gt;Each cube automatically adjusts these parameters based on the selected mushroom species.&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;h3 id=&quot;ai-for-monitoring-and-management&quot;&gt;AI for Monitoring and Management&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;Database with ideal parameters for each species&lt;&#x2F;li&gt;
&lt;li&gt;Computer vision to monitor and predict harvest time&lt;&#x2F;li&gt;
&lt;li&gt;Learning algorithms for continuous optimization&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Component&lt;&#x2F;th&gt;&lt;th&gt;Technology&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;Cameras&lt;&#x2F;td&gt;&lt;td&gt;One per cube to capture periodic images&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Machine Learning&lt;&#x2F;td&gt;&lt;td&gt;Models with &lt;strong&gt;YOLOv8&lt;&#x2F;strong&gt;, &lt;strong&gt;TensorFlow&lt;&#x2F;strong&gt;, or &lt;strong&gt;PyTorch&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Analysis&lt;&#x2F;td&gt;&lt;td&gt;Automatic detection of growth and maturity&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Adaptation&lt;&#x2F;td&gt;&lt;td&gt;Environmental adjustment based on visual analysis of the mushroom&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;h3 id=&quot;automation-and-communication&quot;&gt;Automation and Communication&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;Central management platform for all cubes&lt;&#x2F;li&gt;
&lt;li&gt;Microcontrollers like &lt;strong&gt;ESP32 &#x2F; ESP8266&lt;&#x2F;strong&gt; or &lt;strong&gt;Raspberry Pi&lt;&#x2F;strong&gt; in each cube&lt;&#x2F;li&gt;
&lt;li&gt;Communication based on &lt;strong&gt;MQTT + Python&lt;&#x2F;strong&gt;&lt;&#x2F;li&gt;
&lt;li&gt;Automation with &lt;strong&gt;Node-RED&lt;&#x2F;strong&gt; or &lt;strong&gt;Home Assistant&lt;&#x2F;strong&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;user-interface&quot;&gt;User Interface&lt;&#x2F;h3&gt;
&lt;p&gt;A web or app platform to control, visualize, and receive notifications.&lt;&#x2F;p&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Functionalities&lt;&#x2F;th&gt;&lt;th&gt;Technologies&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;Mushroom type selection per cube&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;Backend:&lt;&#x2F;strong&gt; Flask, Django, or FastAPI (Python)&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Real-time data visualization&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;Frontend:&lt;&#x2F;strong&gt; Grafana (visualization)&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Harvest notifications&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;Interface:&lt;&#x2F;strong&gt; Home Assistant (intuitive control)&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Manual parameter control&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;Mobile:&lt;&#x2F;strong&gt; PWA or native app&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;required-hardware&quot;&gt;Required Hardware&lt;&#x2F;h2&gt;
&lt;p&gt;For complete details on hardware components, see &lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;hongos&#x2F;hardware&#x2F;&quot;&gt;Hardware&lt;&#x2F;a&gt;.&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Processing unit:&lt;&#x2F;strong&gt; Raspberry Pi 4 &#x2F; Jetson Nano&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Local controllers:&lt;&#x2F;strong&gt; ESP32 &#x2F; ESP8266&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Sensors:&lt;&#x2F;strong&gt; Temperature, humidity, CO₂, light&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Cameras:&lt;&#x2F;strong&gt; HD per cube for visual monitoring&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Actuators:&lt;&#x2F;strong&gt; Fans, humidifiers, heaters, pumps&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;operation-flow&quot;&gt;Operation Flow&lt;&#x2F;h2&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Initial setup:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;The user inserts the cube into the shelf&lt;&#x2F;li&gt;
&lt;li&gt;Selects the mushroom type from the interface&lt;&#x2F;li&gt;
&lt;li&gt;The system automatically configures the ideal parameters&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Cultivation cycle:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Constant monitoring of environmental conditions&lt;&#x2F;li&gt;
&lt;li&gt;Real-time automatic adjustments&lt;&#x2F;li&gt;
&lt;li&gt;Visual analysis of growth&lt;&#x2F;li&gt;
&lt;li&gt;Data logging for optimization&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Harvest:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Detection of the optimal moment by AI&lt;&#x2F;li&gt;
&lt;li&gt;Notification to the user&lt;&#x2F;li&gt;
&lt;li&gt;Recording of results to improve future cycles&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ol&gt;
&lt;blockquote class=&quot;markdown-alert-note&quot;&gt;
	&lt;p&gt;For a visual representation of the complete process, see &lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;hongos&#x2F;diseno&#x2F;&quot;&gt;Flowchart&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;

&lt;&#x2F;blockquote&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;next-steps&quot;&gt;Next Steps&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;phase-1-prototype&quot;&gt;Phase 1: Prototype&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Construction of a test module&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Implementation of the basic sensor system&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Development of the preliminary control interface&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;phase-2-ai-development&quot;&gt;Phase 2: AI Development&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Collection of growth data&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Training of computer vision models&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Harvest prediction tests&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;phase-3-scaling&quot;&gt;Phase 3: Scaling&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Optimization of the modular design&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Improvement of energy efficiency&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Implementation of a complete multi-module system&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;references-and-resources&quot;&gt;References and Resources&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;web.archive.org&#x2F;web&#x2F;20240000000000*&#x2F;https:&#x2F;&#x2F;fungi.com&#x2F;blogs&#x2F;articles&#x2F;the-parameters-of-mushroom-cultivation&quot;&gt;Optimal cultivation parameters by species (Archived)&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;web.archive.org&#x2F;web&#x2F;20240000000000*&#x2F;https:&#x2F;&#x2F;www.mdpi.com&#x2F;2073-4395&#x2F;10&#x2F;5&#x2F;728&quot;&gt;Implementation of computer vision in agriculture (Archived)&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;web.archive.org&#x2F;web&#x2F;20240000000000*&#x2F;https:&#x2F;&#x2F;www.sciencedirect.com&#x2F;science&#x2F;article&#x2F;pii&#x2F;S2214317320300360&quot;&gt;IoT systems for controlled cultivation (Archived)&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;&lt;strong&gt;For more details, see:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;hongos&#x2F;cubos&#x2F;&quot;&gt;Cubes&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;hongos&#x2F;diseno&#x2F;&quot;&gt;Design&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;hongos&#x2F;estante&#x2F;&quot;&gt;Shelf&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;hongos&#x2F;hardware&#x2F;&quot;&gt;Hardware&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;hongos&#x2F;investigacion&#x2F;&quot;&gt;Research and Planning&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;hongos&#x2F;metodologia&#x2F;&quot;&gt;Metodología&lt;&#x2F;a&gt;.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;hongos&#x2F;laboratorio&#x2F;&quot;&gt;Laboratory&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Cubes</title>
        <published>2025-06-14T00:00:00+00:00</published>
        <updated>2025-06-14T00:00:00+00:00</updated>
        
        <author>
          <name>
            B.E. Alejandro
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://nezzontli.xyz/es/blog/hongos/cubos/"/>
        <id>https://nezzontli.xyz/es/blog/hongos/cubos/</id>
        
        <content type="html" xml:base="https://nezzontli.xyz/es/blog/hongos/cubos/">&lt;p&gt;This system is composed of &lt;strong&gt;autonomous modular cubes&lt;&#x2F;strong&gt;, a &lt;strong&gt;centralized intelligent shelf&lt;&#x2F;strong&gt;, and a &lt;strong&gt;control interface via app&lt;&#x2F;strong&gt; that allows for easy scaling of the cultivation laboratory.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;1-package-cube-design&quot;&gt;1. 📦 Cube Design&lt;&#x2F;h2&gt;
&lt;p&gt;Each cube will be a fully autonomous “modular package” that integrates sensors, actuators, and connectivity.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;ice-cube-physical-structure&quot;&gt;🧊 Physical Structure:&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Containment Box:&lt;&#x2F;strong&gt;
&lt;ul&gt;
&lt;li&gt;Material: Plastic or acrylic with thermal insulation&lt;&#x2F;li&gt;
&lt;li&gt;Modular and ventilated design&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;satellite-internal-components&quot;&gt;📡 Internal Components:&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;🌫 Humidity Sensor:&lt;&#x2F;strong&gt; To automatically control the humidifier&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;🧪 CO₂ Sensor:&lt;&#x2F;strong&gt; Ensures an optimal gaseous environment&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;🔥 Heating System:&lt;&#x2F;strong&gt; Controlled by a temperature sensor&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;💨 Fans:&lt;&#x2F;strong&gt; Facilitate air circulation and gas control&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;📷 Integrated Camera:&lt;&#x2F;strong&gt; For visual monitoring with AI analysis&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;🔌 Power Connection:&lt;&#x2F;strong&gt; Each cube has its own power source or adapter&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;📶 Communication Port:&lt;&#x2F;strong&gt; Data transmission via Wi-Fi, MQTT, or another protocol&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;2-file-cabinet-intelligent-vertical-shelf&quot;&gt;2. 🗄️ Intelligent Vertical Shelf&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;jigsaw-physical-support&quot;&gt;🧩 Physical Support:&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Mounting Rails:&lt;&#x2F;strong&gt; Allow for easy insertion&#x2F;removal of cubes&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Central Management Platform:&lt;&#x2F;strong&gt;
&lt;ul&gt;
&lt;li&gt;Processing, automation, and power distribution&lt;&#x2F;li&gt;
&lt;li&gt;Possible use of a Raspberry Pi or other microcontroller as the system’s brain&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;zap-backup-power&quot;&gt;⚡ Backup Power:&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;UPS System (batteries):&lt;&#x2F;strong&gt; Maintains operation during power outages&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;3-iphone-interface-and-automation&quot;&gt;3. 📱 Interface and Automation&lt;&#x2F;h2&gt;
&lt;p&gt;A mobile&#x2F;web application will be the main interface for controlling the ecosystem:&lt;&#x2F;p&gt;
&lt;h3 id=&quot;bust-in-silhouette-configuration-by-species&quot;&gt;👤 Configuration by Species:&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;When adding a cube, the user selects the mushroom (e.g., &lt;em&gt;Sinocubila&lt;&#x2F;em&gt;, &lt;em&gt;Cordyceps&lt;&#x2F;em&gt;, &lt;em&gt;Lion’s Mane&lt;&#x2F;em&gt;)&lt;&#x2F;li&gt;
&lt;li&gt;The AI automatically adjusts the optimal parameters for its growth&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;chart-with-upwards-trend-real-time-visualization&quot;&gt;📈 Real-Time Visualization:&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;Temperature, humidity, and CO₂ graphs&lt;&#x2F;li&gt;
&lt;li&gt;Automatic notifications about harvest, abnormal status, etc.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;seedling-ready-harvest-detection&quot;&gt;🌱 Ready Harvest Detection:&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;Computer vision and machine learning detect the growth and maturity status of the crop&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;4-jigsaw-modularity-and-scalability&quot;&gt;4. 🧩 Modularity and Scalability&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;rocket-basic-start&quot;&gt;🚀 Basic Start:&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;The system will start with &lt;strong&gt;5 modular cubes&lt;&#x2F;strong&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;arrows-counterclockwise-frictionless-expansion&quot;&gt;🔄 Frictionless Expansion:&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;Only requires adding additional cubes and configuring them in the app to scale the system&lt;&#x2F;li&gt;
&lt;li&gt;All control remains centralized and automated&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;hr &#x2F;&gt;
&lt;blockquote&gt;
&lt;p&gt;🔧 The design is intended to combine technology, efficiency, and ease of use, allowing for a highly professional and automated home cultivation.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;h2 id=&quot;related-links&quot;&gt;Related Links&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;hongos&#x2F;hardware&#x2F;&quot;&gt;Hardware&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;hongos&#x2F;diseno&#x2F;&quot;&gt;Design&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;hongos&#x2F;estante&#x2F;&quot;&gt;Shelf&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;hr &#x2F;&gt;
&lt;blockquote class=&quot;markdown-alert-important&quot;&gt;
	&lt;p&gt;For back to the main blog click here &lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;hongos&#x2F;&quot;&gt;Automated Mushroom Cultivation System&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;

&lt;&#x2F;blockquote&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Design</title>
        <published>2025-06-14T00:00:00+00:00</published>
        <updated>2025-06-14T00:00:00+00:00</updated>
        
        <author>
          <name>
            B.E. Alejandro
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://nezzontli.xyz/es/blog/hongos/diseno/"/>
        <id>https://nezzontli.xyz/es/blog/hongos/diseno/</id>
        
        <content type="html" xml:base="https://nezzontli.xyz/es/blog/hongos/diseno/">&lt;p&gt;This system is composed of &lt;strong&gt;autonomous modular cubes&lt;&#x2F;strong&gt;, a &lt;strong&gt;centralized intelligent shelf&lt;&#x2F;strong&gt;, and a &lt;strong&gt;control interface via app&lt;&#x2F;strong&gt; that allows for easy scaling of the cultivation laboratory.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;1-package-cube-design&quot;&gt;1. 📦 &lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;hongos&#x2F;hardware&#x2F;&quot;&gt;Cube Design&lt;&#x2F;a&gt;&lt;&#x2F;h2&gt;
&lt;p&gt;Each cube will be a &lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;hongos&#x2F;cubos&#x2F;&quot;&gt;modular package&lt;&#x2F;a&gt; that integrates sensors, actuators, and connectivity.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;ice-cube-physical-structure&quot;&gt;🧊 Physical structure:&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Containment box:&lt;&#x2F;strong&gt;
&lt;ul&gt;
&lt;li&gt;Material: Plastic or acrylic with thermal insulation.&lt;&#x2F;li&gt;
&lt;li&gt;Modular and ventilated design.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;satellite-internal-components&quot;&gt;📡 Internal components:&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;🌫 Humidity sensor:&lt;&#x2F;strong&gt; To automatically control the humidifier.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;🧪 CO₂ sensor:&lt;&#x2F;strong&gt; Ensures an optimal gaseous environment.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;🔥 Heating system:&lt;&#x2F;strong&gt; Controlled by a temperature sensor.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;💨 Fans:&lt;&#x2F;strong&gt; Facilitate air circulation and gas control.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;📷 Integrated camera:&lt;&#x2F;strong&gt; For visual monitoring with AI analysis.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;🔌 Power connection:&lt;&#x2F;strong&gt; Each cube has its own power source or adapter.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;📶 Communication port:&lt;&#x2F;strong&gt; Data transmission via Wi-Fi, MQTT, or another protocol.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;2-file-cabinet-intelligent-vertical-shelf&quot;&gt;2. 🗄️ &lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;hongos&#x2F;estante&#x2F;&quot;&gt;Intelligent Vertical Shelf&lt;&#x2F;a&gt;&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;jigsaw-physical-support&quot;&gt;🧩 Physical support:&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Mounting rails:&lt;&#x2F;strong&gt; Allow for easy insertion&#x2F;removal of cubes.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Central management platform:&lt;&#x2F;strong&gt;
&lt;ul&gt;
&lt;li&gt;Processing, automation, and power distribution.&lt;&#x2F;li&gt;
&lt;li&gt;Possible use of a Raspberry Pi or other microcontroller as the system’s brain.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;zap-backup-power&quot;&gt;⚡ Backup power:&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;UPS system (batteries):&lt;&#x2F;strong&gt; Maintains operation during power outages.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;3-iphone-interface-and-automation&quot;&gt;3. 📱 Interface and Automation&lt;&#x2F;h2&gt;
&lt;p&gt;A mobile&#x2F;web application will be the main interface for controlling the ecosystem:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;👤 Configuration by species:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;When adding a cube, the user selects the mushroom (e.g., &lt;em&gt;Sinocubila&lt;&#x2F;em&gt;, &lt;em&gt;Cordyceps&lt;&#x2F;em&gt;, &lt;em&gt;Lion’s Mane&lt;&#x2F;em&gt;).&lt;&#x2F;li&gt;
&lt;li&gt;The AI automatically adjusts the optimal parameters for its growth.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;📈 Real-time visualization:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Temperature, humidity, and CO₂ graphs.&lt;&#x2F;li&gt;
&lt;li&gt;Automatic notifications about harvest, abnormal status, etc.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;🌱 Ready harvest detection:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Computer vision and machine learning detect the growth and maturity status of the crop.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;4-jigsaw-modularity-and-scalability&quot;&gt;4. 🧩 Modularity and Scalability&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;🚀 Basic start:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;The system will start with &lt;strong&gt;5 modular cubes&lt;&#x2F;strong&gt;.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;🔄 Frictionless expansion:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Only requires adding additional cubes and configuring them in the app to scale the system.&lt;&#x2F;li&gt;
&lt;li&gt;All control remains centralized and automated.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;blockquote&gt;
&lt;p&gt;🔧 The design is intended to combine technology, efficiency, and ease of use, allowing for a highly professional and automated home cultivation.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;blockquote class=&quot;markdown-alert-important&quot;&gt;
	&lt;p&gt;For back to the main blog click here &lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;hongos&#x2F;&quot;&gt;Automated Mushroom Cultivation System&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;

&lt;&#x2F;blockquote&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Shelf</title>
        <published>2025-06-14T00:00:00+00:00</published>
        <updated>2025-06-14T00:00:00+00:00</updated>
        
        <author>
          <name>
            B.E. Alejandro
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://nezzontli.xyz/es/blog/hongos/estante/"/>
        <id>https://nezzontli.xyz/es/blog/hongos/estante/</id>
        
        <content type="html" xml:base="https://nezzontli.xyz/es/blog/hongos/estante/">&lt;p&gt;The vertical shelf is the structural and intelligent support of the cultivation system. It acts as the physical and digital axis for the connection of the modular cubes.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;1-straight-ruler-vertical-rails&quot;&gt;1. 📏 Vertical Rails&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;📦 Modular design:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;The shelf will have &lt;strong&gt;vertical rails&lt;&#x2F;strong&gt; that allow cubes to be easily inserted or removed.&lt;&#x2F;li&gt;
&lt;li&gt;Each rail is designed to support multiple cubes without compromising stability or accessibility.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;🔁 Individual configuration per cube:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Through the app, each cube can be &lt;strong&gt;configured independently&lt;&#x2F;strong&gt; according to the mushroom species being cultivated.&lt;&#x2F;li&gt;
&lt;li&gt;This allows for maintaining different microclimates on the same shelf.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;2-brain-central-processing-platform&quot;&gt;2. 🧠 Central Processing Platform&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;🧩 Main system control:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Receives and processes data on temperature, humidity, CO₂, crop status, etc., from all connected cubes.&lt;&#x2F;li&gt;
&lt;li&gt;Executes the AI logic that automatically adjusts the internal conditions of each module.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;⚡ Power distribution:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Manages the &lt;strong&gt;electrical power&lt;&#x2F;strong&gt; of all cubes through connections integrated into the rails.&lt;&#x2F;li&gt;
&lt;li&gt;Includes a &lt;strong&gt;backup system (UPS)&lt;&#x2F;strong&gt; to maintain operation during power outages.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;📡 Communication with the local network&#x2F;internet:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Connects to the network to allow remote monitoring, notifications, and system updates.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;blockquote&gt;
&lt;p&gt;🧬 The shelf not only physically organizes the cubes, but also functions as the brain and backbone of the cultivation laboratory.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;blockquote class=&quot;markdown-alert-important&quot;&gt;
	&lt;p&gt;For back to the main blog click here &lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;hongos&#x2F;&quot;&gt;Automated Mushroom Cultivation System&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;

&lt;&#x2F;blockquote&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Hardware</title>
        <published>2025-06-14T00:00:00+00:00</published>
        <updated>2025-06-14T00:00:00+00:00</updated>
        
        <author>
          <name>
            B.E. Alejandro
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://nezzontli.xyz/es/blog/hongos/hardware/"/>
        <id>https://nezzontli.xyz/es/blog/hongos/hardware/</id>
        
        <content type="html" xml:base="https://nezzontli.xyz/es/blog/hongos/hardware/">&lt;p&gt;Each modular cube is an autonomous unit designed to provide a controlled and optimal environment for mushroom cultivation. Its key elements are described below:&lt;&#x2F;p&gt;
&lt;h2 id=&quot;1-bricks-cube-structure&quot;&gt;1. 🧱 Cube Structure&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;🔧 Material&lt;&#x2F;strong&gt;:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Resistant plastic or acrylic (lightweight, durable, and insulating).&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;📐 Estimated Size&lt;&#x2F;strong&gt;:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Between &lt;strong&gt;30 and 40 cm per side&lt;&#x2F;strong&gt;.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;🧊 Thermal Insulation&lt;&#x2F;strong&gt;:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;The cube will have a double wall with &lt;strong&gt;insulating material&lt;&#x2F;strong&gt; (trunk type) to conserve the internal temperature, especially useful if heating or cooling systems are integrated.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;2-electric-plug-internal-components&quot;&gt;2. 🔌 Internal Components&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;mag-sensors&quot;&gt;🔍 Sensors&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;💧 Humidity Sensor&lt;&#x2F;strong&gt; (DHT22 or similar):
&lt;ul&gt;
&lt;li&gt;Measures and regulates humidity by controlling the humidifier.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;🌡️ Temperature Sensor&lt;&#x2F;strong&gt; (DHT22 or DS18B20):
&lt;ul&gt;
&lt;li&gt;Detects thermal changes and activates heating if necessary.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;🫁 CO₂ Sensor&lt;&#x2F;strong&gt; (MH-Z19 or similar):
&lt;ul&gt;
&lt;li&gt;Monitors carbon dioxide levels to ensure proper aeration.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;gear-actuators&quot;&gt;⚙️ Actuators&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;💨 Compact Humidifier&lt;&#x2F;strong&gt;:
&lt;ul&gt;
&lt;li&gt;Small, quiet, and automatic according to humidity sensor data.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;🔥 Heating Element (resistor or heating mat)&lt;&#x2F;strong&gt;:
&lt;ul&gt;
&lt;li&gt;Heats the interior if the temperature drops below the defined threshold.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;🌬️ Low-Consumption Fan&lt;&#x2F;strong&gt;:
&lt;ul&gt;
&lt;li&gt;Promotes air exchange and prevents stagnant humidity zones.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;movie-camera-camera-optional&quot;&gt;🎥 Camera (optional)&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Infrared Vision Camera&lt;&#x2F;strong&gt;:
&lt;ul&gt;
&lt;li&gt;Connected to an AI system that analyzes the growth, color, and size of the mushroom using &lt;em&gt;machine learning&lt;&#x2F;em&gt; models to predict the optimal harvest time.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;3-globe-with-meridians-connectivity-and-power&quot;&gt;3. 🌐 Connectivity and Power&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;satellite-network-connection&quot;&gt;📡 Network Connection&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Wi-Fi Module (ESP32 or similar)&lt;&#x2F;strong&gt;:
&lt;ul&gt;
&lt;li&gt;To send sensor data to the central unit via &lt;strong&gt;MQTT&lt;&#x2F;strong&gt;, &lt;strong&gt;HTTP&lt;&#x2F;strong&gt;, or &lt;strong&gt;WebSockets&lt;&#x2F;strong&gt;.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;battery-power&quot;&gt;🔋 Power&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Individual Power Port&lt;&#x2F;strong&gt;:
&lt;ul&gt;
&lt;li&gt;Each cube connects to the shelf for power and energy backup.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Regulated Source&lt;&#x2F;strong&gt;:
&lt;ul&gt;
&lt;li&gt;Adapter with thermal and overload protection.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;4-jigsaw-accessibility-and-modularity&quot;&gt;4. 🧩 Accessibility and Modularity&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;tools-mounting-system&quot;&gt;🛠️ Mounting System&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Guides or Rails&lt;&#x2F;strong&gt;:
&lt;ul&gt;
&lt;li&gt;So that the cubes can easily slide in and out of the vertical shelf.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;link-quick-connectivity&quot;&gt;🔗 Quick Connectivity&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Standard Connection Port&lt;&#x2F;strong&gt; (USB or magnetic pins):
&lt;ul&gt;
&lt;li&gt;Allows for quick integration of power and communication with the central system.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;blockquote&gt;
&lt;p&gt;✅ A modular and standardized design will facilitate the scalability of the system and the maintenance of each unit.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;blockquote class=&quot;markdown-alert-important&quot;&gt;
	&lt;p&gt;For back to the main blog click here &lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;hongos&#x2F;&quot;&gt;Automated Mushroom Cultivation System&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;

&lt;&#x2F;blockquote&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Research</title>
        <published>2025-06-14T00:00:00+00:00</published>
        <updated>2025-06-14T00:00:00+00:00</updated>
        
        <author>
          <name>
            B.E. Alejandro
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://nezzontli.xyz/es/blog/hongos/investigacion/"/>
        <id>https://nezzontli.xyz/es/blog/hongos/investigacion/</id>
        
        <content type="html" xml:base="https://nezzontli.xyz/es/blog/hongos/investigacion/">&lt;p&gt;Before starting with the design and construction of the cultivation system, it is essential to carry out detailed research that allows you to understand the environment and the specific needs of each mushroom species. Here are the key steps you should cover:&lt;&#x2F;p&gt;
&lt;h2 id=&quot;1-dna-research-of-mushroom-species&quot;&gt;1. 🧬 Research of mushroom species&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;📚 &lt;strong&gt;Target species&lt;&#x2F;strong&gt;: Sinocubila, Codycrps, Lion’s Mane, among others.&lt;&#x2F;li&gt;
&lt;li&gt;🌡️ &lt;strong&gt;Key parameters&lt;&#x2F;strong&gt;: Research ideal temperature, humidity levels, CO₂ needs, photoperiod (if applicable), and growth cycles.&lt;&#x2F;li&gt;
&lt;li&gt;🧠 &lt;strong&gt;Recommendation&lt;&#x2F;strong&gt;: Make a technical sheet for each mushroom with its requirements to facilitate automation.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;2-gear-study-of-environmental-control-systems&quot;&gt;2. ⚙️ Study of environmental control systems&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;🌡️ &lt;strong&gt;Control systems&lt;&#x2F;strong&gt;: Learn how to control temperature, humidity, and CO₂ in closed or indoor crops.&lt;&#x2F;li&gt;
&lt;li&gt;📦 &lt;strong&gt;Suitable materials&lt;&#x2F;strong&gt;: Evaluate options such as resistant plastic, acrylic, polycarbonate, or bioplastics.&lt;&#x2F;li&gt;
&lt;li&gt;📡 &lt;strong&gt;Sensors and modules&lt;&#x2F;strong&gt;: Research which sensors are more accurate and compatible with microcontrollers such as ESP32 or Raspberry Pi (e.g., DHT22, MH-Z19, etc.).&lt;&#x2F;li&gt;
&lt;li&gt;🧪 &lt;strong&gt;Heating and humidification&lt;&#x2F;strong&gt;: Explore methods such as PTC resistors, ultrasonic humidifiers, and silent fans.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;3-triangular-ruler-definition-of-project-parameters&quot;&gt;3. 📐 Definition of project parameters&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;📏 &lt;strong&gt;Modular design&lt;&#x2F;strong&gt;: Establish a standard size and shape for the cube (e.g., 20x20x20 cm) to facilitate scalability.&lt;&#x2F;li&gt;
&lt;li&gt;🔩 &lt;strong&gt;Key components&lt;&#x2F;strong&gt;: Define the list of sensors, actuators, and modules (ventilation, heating, humidification, lighting, camera, etc.).&lt;&#x2F;li&gt;
&lt;li&gt;🧠 &lt;strong&gt;Control AI&lt;&#x2F;strong&gt;: Specify which parameters the AI will control, whether supervised learning will be used, and how it will be integrated with the monitoring app.&lt;&#x2F;li&gt;
&lt;li&gt;💡 &lt;strong&gt;Energy efficiency&lt;&#x2F;strong&gt;: Consider which energy sources you will use (USB-C, batteries, solar panels, etc.).&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;blockquote&gt;
&lt;p&gt;🧭 Good research now will save costly mistakes and unnecessary redesigns later. Use this stage to lay the solid foundations of your automated ecosystem.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;blockquote class=&quot;markdown-alert-important&quot;&gt;
	&lt;p&gt;For back to the main blog click here &lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;hongos&#x2F;&quot;&gt;Automated Mushroom Cultivation System&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;

&lt;&#x2F;blockquote&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Laboratory</title>
        <published>2025-06-14T00:00:00+00:00</published>
        <updated>2025-06-14T00:00:00+00:00</updated>
        
        <author>
          <name>
            B.E. Alejandro
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://nezzontli.xyz/es/blog/hongos/laboratorio/"/>
        <id>https://nezzontli.xyz/es/blog/hongos/laboratorio/</id>
        
        <content type="html" xml:base="https://nezzontli.xyz/es/blog/hongos/laboratorio/">&lt;p&gt;To have a small mushroom cultivation laboratory at home and ensure that the products are safe for consumption, I recommend the following:&lt;&#x2F;p&gt;
&lt;h2 id=&quot;1-adequate-space&quot;&gt;1. &lt;strong&gt;Adequate space:&lt;&#x2F;strong&gt;&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;A clean and well-ventilated area, free of contaminants.&lt;&#x2F;li&gt;
&lt;li&gt;It can be a room or a dedicated space within your modular greenhouse.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;2-basic-equipment&quot;&gt;2. &lt;strong&gt;Basic equipment:&lt;&#x2F;strong&gt;&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Modular shelving (like the ones you mentioned in your project) to accommodate the cubes.&lt;&#x2F;li&gt;
&lt;li&gt;Thermometers and hygrometers to monitor temperature and humidity.&lt;&#x2F;li&gt;
&lt;li&gt;LED grow lights that emit light of adequate spectrum for mushroom growth.&lt;&#x2F;li&gt;
&lt;li&gt;HEPA filters to keep the air clean and free of contaminants.&lt;&#x2F;li&gt;
&lt;li&gt;Microwave or sterilizer to sterilize substrates before inoculating them.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;3-substrates-and-cultivation-tools&quot;&gt;3. &lt;strong&gt;Substrates and cultivation tools:&lt;&#x2F;strong&gt;&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Specific substrates such as straw, sawdust, or grains, suitable for each type of mushroom.&lt;&#x2F;li&gt;
&lt;li&gt;Spores or mycelium of the mushrooms you wish to cultivate.&lt;&#x2F;li&gt;
&lt;li&gt;Sterile syringes to inoculate the spores into the substrate.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;4-cultivation-conditions&quot;&gt;4. &lt;strong&gt;Cultivation conditions:&lt;&#x2F;strong&gt;&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Temperature and humidity control adequate for the type of mushroom.&lt;&#x2F;li&gt;
&lt;li&gt;Aeration control to prevent the growth of mold or bacteria.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;5-equipment-for-pill-production&quot;&gt;5. &lt;strong&gt;Equipment for pill production:&lt;&#x2F;strong&gt;&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Pressing machine to compact the dried mushroom into pill form.&lt;&#x2F;li&gt;
&lt;li&gt;Dehydrator to dry the mushrooms before processing them.&lt;&#x2F;li&gt;
&lt;li&gt;Mortar and pestle or grinder to pulverize the dried mushrooms.&lt;&#x2F;li&gt;
&lt;li&gt;Tinctures or extracts (if you decide to create concentrated extracts) with safe solvents like alcohol.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;6-safety-precautions&quot;&gt;6. &lt;strong&gt;Safety precautions:&lt;&#x2F;strong&gt;&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Clear labeling of each cultivation batch and pill produced.&lt;&#x2F;li&gt;
&lt;li&gt;Quality control: It is important to verify that the mushrooms are edible and free of contaminants such as molds or bacteria.&lt;&#x2F;li&gt;
&lt;li&gt;Research edible species: Make sure the mushrooms you cultivate are safe and edible, such as button mushrooms (&lt;em&gt;Agaricus bisporus&lt;&#x2F;em&gt;) or shiitake (&lt;em&gt;Lentinula edodes&lt;&#x2F;em&gt;).&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;7-documentation-and-study&quot;&gt;7. &lt;strong&gt;Documentation and study:&lt;&#x2F;strong&gt;&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Keep a detailed record of each cultivation to study the process and optimize production.&lt;&#x2F;li&gt;
&lt;li&gt;👉 &lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;hongos&#x2F;&quot;&gt;See also: Automated Mushroom Cultivation System&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;blockquote class=&quot;markdown-alert-important&quot;&gt;
	&lt;p&gt;For back to the main blog click here &lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;hongos&#x2F;&quot;&gt;Automated Mushroom Cultivation System&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;

&lt;&#x2F;blockquote&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Methodology</title>
        <published>2025-06-14T00:00:00+00:00</published>
        <updated>2025-06-14T00:00:00+00:00</updated>
        
        <author>
          <name>
            B.E. Alejandro
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://nezzontli.xyz/es/blog/hongos/metodologia/"/>
        <id>https://nezzontli.xyz/es/blog/hongos/metodologia/</id>
        
        <content type="html" xml:base="https://nezzontli.xyz/es/blog/hongos/metodologia/">&lt;p&gt;A step-by-step plan to design, build, and implement a modular and intelligent system for automated mushroom cultivation.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;mag-1-research-and-planning&quot;&gt;🔍 &lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;hongos&#x2F;investigacion&#x2F;&quot;&gt;1. Research and Planning&lt;&#x2F;a&gt;&lt;&#x2F;h2&gt;
&lt;p&gt;Before building, it is vital to research and plan:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Species to cultivate:&lt;&#x2F;strong&gt; Sinocubila, Codycrps, Lion’s Mane, etc.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Ideal parameters:&lt;&#x2F;strong&gt; Temperature, humidity, CO₂ for each mushroom.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Materials and components:&lt;&#x2F;strong&gt; Research options for cubes, sensors, heating, ventilation, and humidification.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;bricks-2-modular-cube-prototype-design&quot;&gt;🧱 2. Modular Cube Prototype Design&lt;&#x2F;h2&gt;
&lt;p&gt;Once the requirements are defined, start with the initial design:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Structural sketch:&lt;&#x2F;strong&gt; Define the external and internal structure.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Recommended materials:&lt;&#x2F;strong&gt; Acrylic, resistant plastic, etc.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Component location:&lt;&#x2F;strong&gt; Distribution of sensors, actuators, and space for the mushroom.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;electric-plug-3-electronic-components-prototype&quot;&gt;🔌 3. Electronic Components Prototype&lt;&#x2F;h2&gt;
&lt;p&gt;Before assembling the cube, test each component separately:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Ventilation and heating:&lt;&#x2F;strong&gt; Ensure a stable environment without overheating.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Sensors:&lt;&#x2F;strong&gt;
&lt;ul&gt;
&lt;li&gt;Temperature and humidity in a controlled space.&lt;&#x2F;li&gt;
&lt;li&gt;CO₂, validating its accuracy.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Ultrasonic humidifier:&lt;&#x2F;strong&gt; That it works without affecting other components.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Camera:&lt;&#x2F;strong&gt; Verify that it captures well in low light.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;toolbox-4-first-modular-cube-construction&quot;&gt;🧰 4. First Modular Cube Construction&lt;&#x2F;h2&gt;
&lt;p&gt;With the materials and tests ready, assemble the first cube:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Physical assembly:&lt;&#x2F;strong&gt; Ensure enough space for the mushroom and components.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Sensor&#x2F;actuator installation:&lt;&#x2F;strong&gt; In the space between the inner and outer cube.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Power system:&lt;&#x2F;strong&gt; Stable source and quick connection system for the shelf.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;brain-5-system-programming-and-integration&quot;&gt;🧠 5. System Programming and Integration&lt;&#x2F;h2&gt;
&lt;p&gt;With the cube built, integrate the software:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;AI for environmental control:&lt;&#x2F;strong&gt; Training with TensorFlow or PyTorch.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Control app:&lt;&#x2F;strong&gt; Web&#x2F;mobile app to enter the mushroom, view data, and receive notifications.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Wi-Fi (ESP32):&lt;&#x2F;strong&gt; To connect the cube with the AI.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Integrated tests:&lt;&#x2F;strong&gt; Everything connected, verifying the response to the entered mushroom.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;test-tube-6-prototype-testing-and-adjustments&quot;&gt;🧪 6. Prototype Testing and Adjustments&lt;&#x2F;h2&gt;
&lt;p&gt;Perform complete tests with the operational cube:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Environmental control:&lt;&#x2F;strong&gt; Automatic adjustments from the AI.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Growth monitoring:&lt;&#x2F;strong&gt; Camera and AI detecting maturity.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Sensor calibration:&lt;&#x2F;strong&gt; Ensures reliable readings, adjust if necessary.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;dividers-7-vertical-shelf-fabrication-and-scalability&quot;&gt;🗂️ 7. Vertical Shelf Fabrication and Scalability&lt;&#x2F;h2&gt;
&lt;p&gt;Once the prototype is validated:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Shelf design with rails:&lt;&#x2F;strong&gt; To easily insert and remove cubes.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Multiple cube tests:&lt;&#x2F;strong&gt; Verify integration with the central power and processing system.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;bar-chart-8-monitoring-and-final-adjustments&quot;&gt;📊 8. Monitoring and Final Adjustments&lt;&#x2F;h2&gt;
&lt;p&gt;With the complete system in operation:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Climate adjustment:&lt;&#x2F;strong&gt; Verify healthy growth.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;AI evaluation:&lt;&#x2F;strong&gt; Ensures it manages different species in parallel well.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;seedling-9-project-expansion&quot;&gt;🌱 9. Project Expansion&lt;&#x2F;h2&gt;
&lt;p&gt;When everything works correctly:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Scalability:&lt;&#x2F;strong&gt; Reproduce more cubes for new mushrooms.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;AI optimization:&lt;&#x2F;strong&gt; Continuous improvement with the collected data.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;blockquote class=&quot;markdown-alert-important&quot;&gt;
	&lt;p&gt;For back to the main blog click here &lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;hongos&#x2F;&quot;&gt;Automated Mushroom Cultivation System&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;

&lt;&#x2F;blockquote&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Building My Own Laptop</title>
        <published>2024-06-12T00:00:00+00:00</published>
        <updated>2024-06-12T00:00:00+00:00</updated>
        
        <author>
          <name>
            B.E. Alejandro
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://nezzontli.xyz/es/blog/laptop/"/>
        <id>https://nezzontli.xyz/es/blog/laptop/</id>
        
        <content type="html" xml:base="https://nezzontli.xyz/es/blog/laptop/">&lt;h2 id=&quot;project-overview&quot;&gt;Project Overview&lt;&#x2F;h2&gt;
&lt;p&gt;This project aims to replicate the &lt;strong&gt;anyon_e&lt;&#x2F;strong&gt; laptop, an open-source design created by &lt;a href=&quot;https:&#x2F;&#x2F;www.byran.ee&#x2F;posts&#x2F;creation&quot;&gt;Byran Huang&lt;&#x2F;a&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;It is a modular laptop, highly integrated and fully customizable, with a strong focus on &lt;strong&gt;repairability&lt;&#x2F;strong&gt;, &lt;strong&gt;hardware control&lt;&#x2F;strong&gt;, and &lt;strong&gt;self-learning&lt;&#x2F;strong&gt; about modern components.&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;documentation-resources&quot;&gt;Documentation &amp;amp; Resources&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;GitHub Repository&lt;&#x2F;strong&gt;: &lt;a href=&quot;https:&#x2F;&#x2F;github.com&#x2F;Hello9999901&#x2F;laptop&quot;&gt;github.com&#x2F;Hello9999901&#x2F;laptop&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Creator’s Website&lt;&#x2F;strong&gt;: &lt;a href=&quot;https:&#x2F;&#x2F;www.byran.ee&#x2F;posts&#x2F;creation&quot;&gt;byran.ee&#x2F;posts&#x2F;creation&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Explainer Video&lt;&#x2F;strong&gt;: &lt;a href=&quot;https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=fks3PBodyiE&quot;&gt;YouTube – How I Made A Laptop From Scratch&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;required-components&quot;&gt;Required Components&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;1-soc-module-rk3588&quot;&gt;1. SoC Module (RK3588)&lt;&#x2F;h3&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Specification&lt;&#x2F;th&gt;&lt;th&gt;Details&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Model&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;CM3588&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Description&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;The laptop’s brain, runs the full OS&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Vendors&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;&lt;a href=&quot;https:&#x2F;&#x2F;www.friendlyelec.com&#x2F;index.php?route=product&#x2F;product&amp;amp;product_id=312&quot;&gt;FriendlyElec&lt;&#x2F;a&gt;, &lt;a href=&quot;https:&#x2F;&#x2F;www.ebay.com&#x2F;sch&#x2F;i.html?_nkw=356336193089&quot;&gt;eBay (Search)&lt;&#x2F;a&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Price&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;$300 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;h3 id=&quot;2-amoled-display-13-3&quot;&gt;2. AMOLED Display 13.3“&lt;&#x2F;h3&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;&lt;strong&gt;Suggested Model&lt;&#x2F;strong&gt;&lt;&#x2F;th&gt;&lt;th&gt;Wisecoco 2880x1920 AMOLED&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Vendor&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;&lt;a href=&quot;https:&#x2F;&#x2F;www.amazon.com&#x2F;-&#x2F;es&#x2F;dp&#x2F;B0CN4B659V&quot;&gt;Amazon&lt;&#x2F;a&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Price&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;$120–150 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;h3 id=&quot;3-auxiliary-microcontroller-esp32-s3&quot;&gt;3. Auxiliary Microcontroller (ESP32-S3)&lt;&#x2F;h3&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;&lt;strong&gt;Function&lt;&#x2F;strong&gt;&lt;&#x2F;th&gt;&lt;th&gt;Peripheral, fan, and sensor control&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Vendor&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;&lt;a href=&quot;https:&#x2F;&#x2F;www.amazon.com.mx&#x2F;dp&#x2F;B0C28FFBRP&quot;&gt;Amazon Mexico&lt;&#x2F;a&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Price&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;$10–20 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;h3 id=&quot;4-mechanical-keyboard&quot;&gt;4. Mechanical Keyboard&lt;&#x2F;h3&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;&lt;strong&gt;Type&lt;&#x2F;strong&gt;&lt;&#x2F;th&gt;&lt;th&gt;Hot-swappable, custom design&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Vendors&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;&lt;a href=&quot;https:&#x2F;&#x2F;www.keychron.com&quot;&gt;Keychron&lt;&#x2F;a&gt;, Amazon, AliExpress&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Price&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;$80–150 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;h3 id=&quot;5-trackpad&quot;&gt;5. Trackpad&lt;&#x2F;h3&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;&lt;strong&gt;Recommended&lt;&#x2F;strong&gt;&lt;&#x2F;th&gt;&lt;th&gt;Apple Magic Trackpad 2 (Bluetooth)&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Vendors&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;&lt;a href=&quot;https:&#x2F;&#x2F;www.apple.com&#x2F;mx&#x2F;shop&#x2F;product&#x2F;MXKA3BE&#x2F;A&quot;&gt;Apple Mexico&lt;&#x2F;a&gt;, eBay&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Price&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;$90–130 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;h3 id=&quot;6-battery&quot;&gt;6. Battery&lt;&#x2F;h3&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;&lt;strong&gt;Model&lt;&#x2F;strong&gt;&lt;&#x2F;th&gt;&lt;th&gt;Dell F3YGT (60Wh Li-Po)&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Vendor&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;&lt;a href=&quot;https:&#x2F;&#x2F;listado.mercadolibre.com.mx&#x2F;bateria-f3ygt-dell&quot;&gt;MercadoLibre (Search)&lt;&#x2F;a&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Note&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;Requires BMS module&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Price&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;$50–80 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;h3 id=&quot;7-custom-motherboard&quot;&gt;7. Custom Motherboard&lt;&#x2F;h3&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;&lt;strong&gt;Files&lt;&#x2F;strong&gt;&lt;&#x2F;th&gt;&lt;th&gt;Available on GitHub&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Fabrication&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;&lt;a href=&quot;https:&#x2F;&#x2F;www.pcbway.com&quot;&gt;PCBWay&lt;&#x2F;a&gt;, &lt;a href=&quot;https:&#x2F;&#x2F;jlcpcb.com&quot;&gt;JLCPCB&lt;&#x2F;a&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Design&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;KiCad&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Price&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;$50–100 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;h3 id=&quot;8-cooling-system&quot;&gt;8. Cooling System&lt;&#x2F;h3&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;&lt;strong&gt;Components&lt;&#x2F;strong&gt;&lt;&#x2F;th&gt;&lt;th&gt;Heatsink, heatpipes, fan&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Vendors&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;Amazon, AliExpress&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Price&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;$20–40 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;h3 id=&quot;9-chassis&quot;&gt;9. Chassis&lt;&#x2F;h3&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;&lt;strong&gt;Material&lt;&#x2F;strong&gt;&lt;&#x2F;th&gt;&lt;th&gt;Anodized aluminum (ideal), 3D printing (prototype)&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;CNC Fab&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;&lt;a href=&quot;https:&#x2F;&#x2F;www.pcbway.com&#x2F;rapid-prototyping&#x2F;cnc-machining&#x2F;&quot;&gt;PCBWay CNC&lt;&#x2F;a&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Price&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;$150–300 USD (CNC), $20–50 USD (3D)&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;extra-parts-accessories&quot;&gt;Extra Parts &amp;amp; Accessories&lt;&#x2F;h2&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Component&lt;&#x2F;th&gt;&lt;th&gt;Vendor&lt;&#x2F;th&gt;&lt;th&gt;Price&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;M2&#x2F;M3 Screws&lt;&#x2F;td&gt;&lt;td&gt;Amazon, hardware stores&lt;&#x2F;td&gt;&lt;td&gt;$5–10 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Flex cables (eDP&#x2F;USB)&lt;&#x2F;td&gt;&lt;td&gt;AliExpress&lt;&#x2F;td&gt;&lt;td&gt;$15–30 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;BMS Module&lt;&#x2F;td&gt;&lt;td&gt;Amazon, AliExpress&lt;&#x2F;td&gt;&lt;td&gt;$10–20 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;USB&#x2F;HDMI Connectors&lt;&#x2F;td&gt;&lt;td&gt;Amazon, local shops&lt;&#x2F;td&gt;&lt;td&gt;$10–15 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;GPIO pins, dupont cables&lt;&#x2F;td&gt;&lt;td&gt;SparkFun, AliExpress&lt;&#x2F;td&gt;&lt;td&gt;$5–10 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;required-tools&quot;&gt;Required Tools&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Precision soldering iron&lt;&#x2F;li&gt;
&lt;li&gt;Digital multimeter&lt;&#x2F;li&gt;
&lt;li&gt;Screwdriver set&lt;&#x2F;li&gt;
&lt;li&gt;3D printer (optional)&lt;&#x2F;li&gt;
&lt;li&gt;CNC access (recommended)&lt;&#x2F;li&gt;
&lt;li&gt;Skills:
&lt;ul&gt;
&lt;li&gt;Basic electronics&lt;&#x2F;li&gt;
&lt;li&gt;CAD design&lt;&#x2F;li&gt;
&lt;li&gt;Soldering&lt;&#x2F;li&gt;
&lt;li&gt;Linux&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;implementation-plan&quot;&gt;Implementation Plan&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;phase-1-design&quot;&gt;Phase 1: Design&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Review original schematics&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Adapt design to local components&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Bill of Materials and vendors&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;phase-2-acquisition&quot;&gt;Phase 2: Acquisition&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Buy SoC, display, and battery&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Order PCB fabrication&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Acquire tools&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;phase-3-prototyping&quot;&gt;Phase 3: Prototyping&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot;&#x2F;&gt;
3D print prototype model&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot;&#x2F;&gt;
Assemble electronics&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot;&#x2F;&gt;
Run functionality tests&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;phase-4-final-assembly&quot;&gt;Phase 4: Final Assembly&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot;&#x2F;&gt;
CNC manufacture chassis&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot;&#x2F;&gt;
Assemble final version&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot;&#x2F;&gt;
Install operating system&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;project-to-do&quot;&gt;Project To-Do&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot;&#x2F;&gt;
PCB adjustments&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot;&#x2F;&gt;
CNC chassis quotation&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot;&#x2F;&gt;
OS preparation for RK3588&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot;&#x2F;&gt;
ESP32-S3 compatibility tests&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;hr &#x2F;&gt;
&lt;blockquote class=&quot;markdown-alert-tip&quot;&gt;
	&lt;p&gt;This project will serve as a personal challenge to deepen my knowledge in hardware and electronic design and to build a 100% personalized laptop.&lt;&#x2F;p&gt;

&lt;&#x2F;blockquote&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;estimated-budget&quot;&gt;Estimated Budget&lt;&#x2F;h2&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Category&lt;&#x2F;th&gt;&lt;th&gt;Cost&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;Main components&lt;&#x2F;td&gt;&lt;td&gt;$700–830 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Accessories &amp;amp; parts&lt;&#x2F;td&gt;&lt;td&gt;$45–85 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;PCB&lt;&#x2F;td&gt;&lt;td&gt;$50–100 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Chassis&lt;&#x2F;td&gt;&lt;td&gt;$150–300 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;TOTAL&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;$945–1,315 USD&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;additional-references&quot;&gt;Additional References&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;community.frame.work&#x2F;&quot;&gt;Framework Laptop Community&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;www.pcbway.com&#x2F;blog&#x2F;PCB_Design_Guidelines&#x2F;&quot;&gt;PCB Design Guidelines (PCBWay)&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;web.archive.org&#x2F;web&#x2F;20240000000000*&#x2F;https:&#x2F;&#x2F;wiki.radxa.com&#x2F;Rock5&#x2F;dev&#x2F;rk3588&quot;&gt;RK3588 Documentation (Archived)&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>TARS - Intelligent Robotic Assistant</title>
        <published>2024-05-23T00:00:00+00:00</published>
        <updated>2024-05-23T00:00:00+00:00</updated>
        
        <author>
          <name>
            B.E. Alejandro
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://nezzontli.xyz/es/blog/robotia/"/>
        <id>https://nezzontli.xyz/es/blog/robotia/</id>
        
        <content type="html" xml:base="https://nezzontli.xyz/es/blog/robotia/">&lt;h2 id=&quot;project-summary&quot;&gt;Project Summary&lt;&#x2F;h2&gt;
&lt;p&gt;This project aims to create a functional replica of TARS, the assistant robot featured in the movie &lt;em&gt;Interstellar&lt;&#x2F;em&gt;. The system is powered by artificial intelligence, allowing it to hold natural conversations and emulate emotional responses. The design is based on the &lt;a href=&quot;https:&#x2F;&#x2F;www.hackster.io&#x2F;charlesdiaz&#x2F;how-to-build-your-own-replica-of-tars-from-interstellar-224833#cad&quot;&gt;Hackster.io project&lt;&#x2F;a&gt;, with significant improvements in mobility, interaction, and AI capabilities.&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;project-versions&quot;&gt;Project Versions&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;tars-v1&quot;&gt;TARS V1&lt;&#x2F;h3&gt;
&lt;p&gt;The initial version was my first attempt at a self-propelled miniature replica. Although many implemented ideas were untested, it served as a fundamental base for further development.&lt;&#x2F;p&gt;
&lt;h4 id=&quot;main-components&quot;&gt;Main Components&lt;&#x2F;h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Computer&lt;&#x2F;strong&gt;: Raspberry Pi 3B+ with Raspbian&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Servomotors&lt;&#x2F;strong&gt;: Four high-torque metal gear servos&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Controller&lt;&#x2F;strong&gt;: Adafruit PCA-9685 for servo management&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Power Supply&lt;&#x2F;strong&gt;: Two 8-cell NiMH battery packs (7.2 V) in parallel&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Display&lt;&#x2F;strong&gt;: 5“ HDMI monitor&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Control&lt;&#x2F;strong&gt;: Bluetooth controller 8BitDo Zero 2&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h4 id=&quot;structure&quot;&gt;Structure&lt;&#x2F;h4&gt;
&lt;p&gt;The V1 chassis was built with a spine-like framework using aluminum extrusion “spines” as the structural base. 3D-printed polycarbonate pieces were mounted on this base to define the robot’s general shape and drivetrain.&lt;&#x2F;p&gt;
&lt;h4 id=&quot;identified-limitations&quot;&gt;Identified Limitations&lt;&#x2F;h4&gt;
&lt;ul&gt;
&lt;li&gt;Heavy, jerky steps due to NiMH battery weight&lt;&#x2F;li&gt;
&lt;li&gt;Poor weight distribution (heavy components concentrated in torso)&lt;&#x2F;li&gt;
&lt;li&gt;Underdeveloped walking program&lt;&#x2F;li&gt;
&lt;li&gt;3D-printed components prone to breaking on impact&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;control-system&quot;&gt;Control System&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;software-architecture&quot;&gt;Software Architecture&lt;&#x2F;h3&gt;
&lt;p&gt;The control system is organized into three main layers:&lt;&#x2F;p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Servo Controller&lt;&#x2F;strong&gt;: Manages basic servo movements&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Servo Abstractor&lt;&#x2F;strong&gt;: Combines basic movements to create complex functions&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;TARS Runner&lt;&#x2F;strong&gt;: Handles communication with the remote control and command execution&lt;&#x2F;li&gt;
&lt;&#x2F;ol&gt;
&lt;h4 id=&quot;servo-abstractor&quot;&gt;Servo Abstractor&lt;&#x2F;h4&gt;
&lt;p&gt;This program takes basic servo movements and combines them to automate complex motion functions:&lt;&#x2F;p&gt;
&lt;pre data-lang=&quot;python&quot; class=&quot;language-python z-code&quot;&gt;&lt;code class=&quot;language-python&quot; data-lang=&quot;python&quot;&gt;&lt;span class=&quot;z-source z-python&quot;&gt;&lt;span class=&quot;z-meta z-statement z-import z-python&quot;&gt;&lt;span class=&quot;z-keyword z-control z-import z-python&quot;&gt;import&lt;&#x2F;span&gt; &lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;time&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt; 
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-python&quot;&gt;&lt;span class=&quot;z-meta z-statement z-import z-python&quot;&gt;&lt;span class=&quot;z-keyword z-control z-import z-python&quot;&gt;import&lt;&#x2F;span&gt; &lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;TARS_Servo_Controller3&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-python&quot;&gt;    
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-python&quot;&gt;&lt;span class=&quot;z-meta z-function z-python&quot;&gt;&lt;span class=&quot;z-storage z-type z-function z-python&quot;&gt;&lt;span class=&quot;z-keyword z-declaration z-function z-python&quot;&gt;def&lt;&#x2F;span&gt;&lt;&#x2F;span&gt; &lt;span class=&quot;z-entity z-name z-function z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;stepForward&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function z-parameters z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-parameters z-begin z-python&quot;&gt;(&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function z-parameters z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-parameters z-end z-python&quot;&gt;)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-function z-begin z-python&quot;&gt;:&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-python&quot;&gt;    &lt;span class=&quot;z-meta z-function-call z-python&quot;&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;TARS_Servo_Controller3&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-accessor z-dot z-python&quot;&gt;.&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-variable z-function z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;height_neutral_to_up&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-begin z-python&quot;&gt;(&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-end z-python&quot;&gt;)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-python&quot;&gt;    &lt;span class=&quot;z-meta z-function-call z-python&quot;&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;TARS_Servo_Controller3&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-accessor z-dot z-python&quot;&gt;.&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-variable z-function z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;torso_neutral_to_forwards&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-begin z-python&quot;&gt;(&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-end z-python&quot;&gt;)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-python&quot;&gt;    &lt;span class=&quot;z-meta z-function-call z-python&quot;&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;TARS_Servo_Controller3&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-accessor z-dot z-python&quot;&gt;.&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-variable z-function z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;torso_bump&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-begin z-python&quot;&gt;(&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-end z-python&quot;&gt;)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-python&quot;&gt;    &lt;span class=&quot;z-meta z-function-call z-python&quot;&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;TARS_Servo_Controller3&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-accessor z-dot z-python&quot;&gt;.&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-variable z-function z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;torso_return&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-begin z-python&quot;&gt;(&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-end z-python&quot;&gt;)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-python&quot;&gt;    
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-python&quot;&gt;&lt;span class=&quot;z-meta z-function z-python&quot;&gt;&lt;span class=&quot;z-storage z-type z-function z-python&quot;&gt;&lt;span class=&quot;z-keyword z-declaration z-function z-python&quot;&gt;def&lt;&#x2F;span&gt;&lt;&#x2F;span&gt; &lt;span class=&quot;z-entity z-name z-function z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;turnRight&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function z-parameters z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-parameters z-begin z-python&quot;&gt;(&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function z-parameters z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-parameters z-end z-python&quot;&gt;)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-function z-begin z-python&quot;&gt;:&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-python&quot;&gt;    &lt;span class=&quot;z-meta z-function-call z-python&quot;&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;TARS_Servo_Controller3&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-accessor z-dot z-python&quot;&gt;.&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-variable z-function z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;neutral_to_down&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-begin z-python&quot;&gt;(&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-end z-python&quot;&gt;)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-python&quot;&gt;    &lt;span class=&quot;z-meta z-function-call z-python&quot;&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;TARS_Servo_Controller3&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-accessor z-dot z-python&quot;&gt;.&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-variable z-function z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;turn_right&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-begin z-python&quot;&gt;(&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-end z-python&quot;&gt;)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-python&quot;&gt;    &lt;span class=&quot;z-meta z-function-call z-python&quot;&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;TARS_Servo_Controller3&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-accessor z-dot z-python&quot;&gt;.&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-variable z-function z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;down_to_neutral&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-begin z-python&quot;&gt;(&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-end z-python&quot;&gt;)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-python&quot;&gt;    &lt;span class=&quot;z-meta z-function-call z-python&quot;&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;TARS_Servo_Controller3&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-accessor z-dot z-python&quot;&gt;.&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-variable z-function z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;neutral_from_right&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-begin z-python&quot;&gt;(&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-end z-python&quot;&gt;)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-python&quot;&gt;    
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-python&quot;&gt;&lt;span class=&quot;z-meta z-function z-python&quot;&gt;&lt;span class=&quot;z-storage z-type z-function z-python&quot;&gt;&lt;span class=&quot;z-keyword z-declaration z-function z-python&quot;&gt;def&lt;&#x2F;span&gt;&lt;&#x2F;span&gt; &lt;span class=&quot;z-entity z-name z-function z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;turnLeft&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function z-parameters z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-parameters z-begin z-python&quot;&gt;(&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function z-parameters z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-parameters z-end z-python&quot;&gt;)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-function z-begin z-python&quot;&gt;:&lt;&#x2F;span&gt;&lt;&#x2F;span&gt; 
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-python&quot;&gt;    &lt;span class=&quot;z-meta z-function-call z-python&quot;&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;TARS_Servo_Controller3&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-accessor z-dot z-python&quot;&gt;.&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-variable z-function z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;neutral_to_down&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-begin z-python&quot;&gt;(&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-end z-python&quot;&gt;)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-python&quot;&gt;    &lt;span class=&quot;z-meta z-function-call z-python&quot;&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;TARS_Servo_Controller3&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-accessor z-dot z-python&quot;&gt;.&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-variable z-function z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;turn_left&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-begin z-python&quot;&gt;(&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-end z-python&quot;&gt;)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-python&quot;&gt;    &lt;span class=&quot;z-meta z-function-call z-python&quot;&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;TARS_Servo_Controller3&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-accessor z-dot z-python&quot;&gt;.&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-variable z-function z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;down_to_neutral&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-begin z-python&quot;&gt;(&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-end z-python&quot;&gt;)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-python&quot;&gt;    &lt;span class=&quot;z-meta z-function-call z-python&quot;&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;TARS_Servo_Controller3&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-accessor z-dot z-python&quot;&gt;.&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-variable z-function z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;neutral_from_left&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-begin z-python&quot;&gt;(&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-end z-python&quot;&gt;)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-python&quot;&gt;    
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-python&quot;&gt;&lt;span class=&quot;z-meta z-function z-python&quot;&gt;&lt;span class=&quot;z-storage z-type z-function z-python&quot;&gt;&lt;span class=&quot;z-keyword z-declaration z-function z-python&quot;&gt;def&lt;&#x2F;span&gt;&lt;&#x2F;span&gt; &lt;span class=&quot;z-entity z-name z-function z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;pose&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function z-parameters z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-parameters z-begin z-python&quot;&gt;(&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function z-parameters z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-parameters z-end z-python&quot;&gt;)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-function z-begin z-python&quot;&gt;:&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-python&quot;&gt;    &lt;span class=&quot;z-meta z-function-call z-python&quot;&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;TARS_Servo_Controller3&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-accessor z-dot z-python&quot;&gt;.&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-variable z-function z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;neutral_to_down&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-begin z-python&quot;&gt;(&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-end z-python&quot;&gt;)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-python&quot;&gt;    &lt;span class=&quot;z-meta z-function-call z-python&quot;&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;TARS_Servo_Controller3&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-accessor z-dot z-python&quot;&gt;.&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-variable z-function z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;torso_neutral_to_backwards&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-begin z-python&quot;&gt;(&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-end z-python&quot;&gt;)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-python&quot;&gt;    &lt;span class=&quot;z-meta z-function-call z-python&quot;&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;TARS_Servo_Controller3&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-accessor z-dot z-python&quot;&gt;.&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-variable z-function z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;down_to_up&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-begin z-python&quot;&gt;(&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-end z-python&quot;&gt;)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-python&quot;&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-python&quot;&gt;&lt;span class=&quot;z-meta z-function z-python&quot;&gt;&lt;span class=&quot;z-storage z-type z-function z-python&quot;&gt;&lt;span class=&quot;z-keyword z-declaration z-function z-python&quot;&gt;def&lt;&#x2F;span&gt;&lt;&#x2F;span&gt; &lt;span class=&quot;z-entity z-name z-function z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;unpose&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function z-parameters z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-parameters z-begin z-python&quot;&gt;(&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function z-parameters z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-parameters z-end z-python&quot;&gt;)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-function z-begin z-python&quot;&gt;:&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-python&quot;&gt;    &lt;span class=&quot;z-meta z-function-call z-python&quot;&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;TARS_Servo_Controller3&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-accessor z-dot z-python&quot;&gt;.&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-qualified-name z-python&quot;&gt;&lt;span class=&quot;z-variable z-function z-python&quot;&gt;&lt;span class=&quot;z-meta z-generic-name z-python&quot;&gt;torso_return2&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;span class=&quot;z-meta z-function-call z-arguments z-python&quot;&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-begin z-python&quot;&gt;(&lt;&#x2F;span&gt;&lt;span class=&quot;z-punctuation z-section z-arguments z-end z-python&quot;&gt;)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;&#x2F;span&gt;&lt;span class=&quot;z-source z-python&quot;&gt;
&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;h2 id=&quot;planned-improvements-for-tars-v2&quot;&gt;Planned Improvements for TARS V2&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;hardware&quot;&gt;Hardware&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;Replace NiMH batteries with lighter LiPo packs&lt;&#x2F;li&gt;
&lt;li&gt;Improve structural design for better weight distribution&lt;&#x2F;li&gt;
&lt;li&gt;Higher precision, lower-consumption servos&lt;&#x2F;li&gt;
&lt;li&gt;Higher-resolution OLED display with lower energy consumption&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;software&quot;&gt;Software&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;Integrate conversational AI model based on transformers&lt;&#x2F;li&gt;
&lt;li&gt;Voice recognition system for spoken commands&lt;&#x2F;li&gt;
&lt;li&gt;Facial expressions on display for emotional communication&lt;&#x2F;li&gt;
&lt;li&gt;Enhanced walking algorithms for smoother movement&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;interaction&quot;&gt;Interaction&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;Ability to answer complex questions&lt;&#x2F;li&gt;
&lt;li&gt;Adjustable personality parameters (humor, sarcasm, etc.)&lt;&#x2F;li&gt;
&lt;li&gt;Facial recognition to identify users&lt;&#x2F;li&gt;
&lt;li&gt;Integration with home automation systems&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;technical-challenges&quot;&gt;Technical Challenges&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;mobility&quot;&gt;Mobility&lt;&#x2F;h3&gt;
&lt;p&gt;The main challenge has been the lifting mechanism. In the initial version, the legs contacted the ground and got stuck, preventing walking. The solution was to enlarge rectangular channels in the square holes through which the main shaft rotates, allowing both the shaft and legs to move vertically relative to the torso module.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;balance-and-stability&quot;&gt;Balance and Stability&lt;&#x2F;h3&gt;
&lt;p&gt;Weight distribution and center of gravity are critical for proper function. Careful component placement is required to avoid falling during movement.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;power-consumption&quot;&gt;Power Consumption&lt;&#x2F;h3&gt;
&lt;p&gt;Battery life is limited due to high servo power usage. Optimizing energy consumption is a priority for future versions.&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;next-steps&quot;&gt;Next Steps&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;structural-redesign&quot;&gt;Structural Redesign&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;Optimize weight distribution&lt;&#x2F;li&gt;
&lt;li&gt;Reduce total system weight&lt;&#x2F;li&gt;
&lt;li&gt;Improve durability of critical components&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;mobility-enhancements&quot;&gt;Mobility Enhancements&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;Develop more efficient walking algorithms&lt;&#x2F;li&gt;
&lt;li&gt;Implement obstacle detection&lt;&#x2F;li&gt;
&lt;li&gt;Add capability to navigate various terrains&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;advanced-ai-integration&quot;&gt;Advanced AI Integration&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;Implement conversational model using LLM&lt;&#x2F;li&gt;
&lt;li&gt;Develop voice recognition system&lt;&#x2F;li&gt;
&lt;li&gt;Create visual interface for facial expressions&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;energy-optimization&quot;&gt;Energy Optimization&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;Transition to LiPo batteries&lt;&#x2F;li&gt;
&lt;li&gt;Implement power-saving modes&lt;&#x2F;li&gt;
&lt;li&gt;Optimize electronic component consumption&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;hr &#x2F;&gt;
&lt;blockquote&gt;
&lt;p&gt;[!TIP]&lt;br &#x2F;&gt;
“I don’t need a robot to tell me how important humans are.” – Cooper, &lt;em&gt;Interstellar&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;references-and-resources&quot;&gt;References and Resources&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;www.hackster.io&#x2F;charlesdiaz&#x2F;how-to-build-your-own-replica-of-tars-from-interstellar-224833#cad&quot;&gt;Original Hackster.io Project&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Do Not Be Afraid - Short Film Concept</title>
        <published>2024-05-19T00:00:00+00:00</published>
        <updated>2024-05-19T00:00:00+00:00</updated>
        
        <author>
          <name>
            B.E. Alejandro
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://nezzontli.xyz/es/blog/cortometraje/"/>
        <id>https://nezzontli.xyz/es/blog/cortometraje/</id>
        
        <content type="html" xml:base="https://nezzontli.xyz/es/blog/cortometraje/">&lt;h2 id=&quot;general-concept&quot;&gt;General Concept&lt;&#x2F;h2&gt;
&lt;p&gt;&lt;strong&gt;Genre:&lt;&#x2F;strong&gt; Psychological horror with theological elements and cosmic horror&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Central theme:&lt;&#x2F;strong&gt; This project explores the figure of &lt;strong&gt;biblical angels&lt;&#x2F;strong&gt; in their original representation according to ancient texts—especially the strangest and most terrifying ones such as the ophanim (wheels of fire covered in eyes). The short film contrasts these depictions with the contemporary popular interpretation (benevolent, peaceful beings) to create a profound visual and emotional impact on the audience.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Estimated duration:&lt;&#x2F;strong&gt; 12–15 minutes&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Target audience:&lt;&#x2F;strong&gt; Fans of psychological horror, cosmic horror, and those interested in religious mythology&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;inspiration-references&quot;&gt;Inspiration &amp;amp; References&lt;&#x2F;h2&gt;
&lt;p&gt;The project draws from diverse sources that combine theology and horror:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Biblical texts:&lt;&#x2F;strong&gt; Descriptions of angels in Isaiah, Ezekiel, and Revelation&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;YouTube video:&lt;&#x2F;strong&gt; &lt;a href=&quot;https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=w5eLMNeeYwg&quot;&gt;Inconsistencies in the Content of the Bible&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Literature:&lt;&#x2F;strong&gt; Cosmic horror in the style of Lovecraft, applied to biblical mythology&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Film:&lt;&#x2F;strong&gt; Influences from directors such as Ari Aster, David Lynch, and Panos Cosmatos&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Philosophical concepts:&lt;&#x2F;strong&gt; Fragmented reality, divided consciousness, and crisis of faith&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;narrative-structure&quot;&gt;Narrative Structure&lt;&#x2F;h2&gt;
&lt;p&gt;The story unfolds through three possible narrative branches, each exploring psychological and cosmic horror as well as the unease of a fragmented reality from a unique perspective:&lt;&#x2F;p&gt;
&lt;h3 id=&quot;narrative-branches&quot;&gt;Narrative Branches&lt;&#x2F;h3&gt;
&lt;h4 id=&quot;branch-1-the-revelation&quot;&gt;&lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;cortometraje&#x2F;rama1&#x2F;&quot;&gt;Branch 1 - The Revelation&lt;&#x2F;a&gt;&lt;&#x2F;h4&gt;
&lt;p&gt;A narrative&#x2F;metacommentary short film in which the protagonist analyzes the content of a video and, through his reflections, triggers an unsettling experience. The philosophical analysis leads him to discover something far more terrifying that seeps into his own life, culminating in a direct encounter with an angelic entity in its most primal and terrifying form.&lt;&#x2F;p&gt;
&lt;h4 id=&quot;branch-2-that-which-watches-from-within&quot;&gt;&lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;cortometraje&#x2F;rama2&#x2F;&quot;&gt;Branch 2 - That Which Watches From Within&lt;&#x2F;a&gt;&lt;&#x2F;h4&gt;
&lt;p&gt;This approach centers on the protagonist’s fractured consciousness, revealing that what he perceives is not merely a narrative but an internal manifestation of uncontrollable terror. Here, the boundaries between the real and the mental blur, leading him into a spiral of paranoia and existential dread, as angelic manifestations embody fragmented aspects of his own psyche.&lt;&#x2F;p&gt;
&lt;h4 id=&quot;branch-3-the-verse&quot;&gt;&lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;cortometraje&#x2F;rama3&#x2F;&quot;&gt;Branch 3 - The Verse&lt;&#x2F;a&gt;&lt;&#x2F;h4&gt;
&lt;p&gt;The protagonist receives a cryptic, unsettling message on his device: a verse or phrase seemingly taken from a religious context. This phrase triggers a chain of events with apparent cosmic origins, distorting his perception of reality. Each attempt to decipher the message brings him closer to understanding something he was never meant to grasp—like a formula that alters the very fabric of his existence.&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;technical-visual-resources&quot;&gt;Technical &amp;amp; Visual Resources&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;3d-angel-models&quot;&gt;3D Angel Models&lt;&#x2F;h3&gt;
&lt;p&gt;To achieve striking representations of biblical angels, the project will use:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Types of angels to depict:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Seraphim (six wings, covered in eyes)&lt;&#x2F;li&gt;
&lt;li&gt;Cherubim (four faces, multiple wings)&lt;&#x2F;li&gt;
&lt;li&gt;Ophanim (wheels within wheels, covered in eyes)&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Resources for 3D models:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Platforms: Sketchfab, CGTrader, TurboSquid&lt;&#x2F;li&gt;
&lt;li&gt;Conversion tools: Kaedim, Luma AI&lt;&#x2F;li&gt;
&lt;li&gt;Software: Blender with specific add-ons for texture import&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;special-effects-cgi&quot;&gt;Special Effects (CGI)&lt;&#x2F;h3&gt;
&lt;p&gt;Blender will be the main tool for:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Scene composition:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Integrating 3D models into real environments&lt;&#x2F;li&gt;
&lt;li&gt;Reality distortion effects (glitches, time freezes)&lt;&#x2F;li&gt;
&lt;li&gt;Transitions between the real and the supernatural&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Specific techniques:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Integrating 3D models into video&lt;&#x2F;li&gt;
&lt;li&gt;Virtual cameras for impossible angles&lt;&#x2F;li&gt;
&lt;li&gt;Visual “reality pause” effects&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;development-plan&quot;&gt;Development Plan&lt;&#x2F;h2&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Pre-production:&lt;&#x2F;strong&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ol&gt;
&lt;ul&gt;
&lt;li&gt;Extensive research on biblical angels and their descriptions&lt;&#x2F;li&gt;
&lt;li&gt;Development of technical script and storyboard&lt;&#x2F;li&gt;
&lt;li&gt;Selection or creation of required 3D models&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;ol start=&quot;2&quot;&gt;
&lt;li&gt;&lt;strong&gt;Production:&lt;&#x2F;strong&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ol&gt;
&lt;ul&gt;
&lt;li&gt;Filming scenes with the protagonist&lt;&#x2F;li&gt;
&lt;li&gt;Capturing environments and locations&lt;&#x2F;li&gt;
&lt;li&gt;Recording base material for effects&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;ol start=&quot;3&quot;&gt;
&lt;li&gt;&lt;strong&gt;Post-production:&lt;&#x2F;strong&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ol&gt;
&lt;ul&gt;
&lt;li&gt;Integration of visual effects in Blender&lt;&#x2F;li&gt;
&lt;li&gt;Scene composition with 3D models&lt;&#x2F;li&gt;
&lt;li&gt;Sound editing and atmospheric music&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;ol start=&quot;4&quot;&gt;
&lt;li&gt;&lt;strong&gt;Distribution:&lt;&#x2F;strong&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ol&gt;
&lt;ul&gt;
&lt;li&gt;Horror short film festivals&lt;&#x2F;li&gt;
&lt;li&gt;Platforms specializing in independent content&lt;&#x2F;li&gt;
&lt;li&gt;Cosmic horror and theological horror communities&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;hr &#x2F;&gt;
&lt;blockquote&gt;
&lt;p&gt;“What is truly terrifying is not what we do not know, but that which we thought we knew—only to discover it is something entirely different.”&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Branch 1: The Revelation</title>
        <published>2024-05-19T00:00:00+00:00</published>
        <updated>2024-05-19T00:00:00+00:00</updated>
        
        <author>
          <name>
            B.E. Alejandro
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://nezzontli.xyz/es/blog/cortometraje/rama1/"/>
        <id>https://nezzontli.xyz/es/blog/cortometraje/rama1/</id>
        
        <content type="html" xml:base="https://nezzontli.xyz/es/blog/cortometraje/rama1/">&lt;h2 id=&quot;original-concept&quot;&gt;Original Concept&lt;&#x2F;h2&gt;
&lt;blockquote&gt;
&lt;p&gt;This is the branch where the video forms a loop—where I do exactly this in the video: planning the same short film as I am making. The order would be: watch the video – pause it to analyze – share my thoughts about what I’m analyzing and how it sparks the idea to make a short film – and then I begin making it. I will pretend to show some notes (some real, some staged), literally presenting how I plan to create the short film for this branch.&lt;&#x2F;p&gt;
&lt;p&gt;Then I’ll stop and say something like: &lt;em&gt;“Wait, I’ve already done this.”&lt;&#x2F;em&gt; At that moment, the protagonist looks directly into the camera, realizing he’s being watched—with a face of astonishment, fear, and horror. From another angle, the audience sees what I’m staring at: at first, &lt;strong&gt;nothing&lt;&#x2F;strong&gt;. Silence. Suspense. Suddenly, a biblical angel appears. The protagonist is paralyzed with fear, terrified, as the angel says: &lt;em&gt;“Do not be afraid.”&lt;&#x2F;em&gt; Then the entire room flattens into 2D, as if reality itself had paused or shifted, transporting me somewhere else. I haven’t yet decided how this new place will look. That’s where my idea ends for now—I don’t yet know what would come after.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;scene-sequence&quot;&gt;Scene Sequence&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;scene-1-introduction&quot;&gt;Scene 1: Introduction&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;The protagonist is watching a video about biblical inconsistencies&lt;&#x2F;li&gt;
&lt;li&gt;The atmosphere is intimate, at night, with dim desk-lamp lighting (introspective mood)&lt;&#x2F;li&gt;
&lt;li&gt;He pauses the video, staring intently at the screen&lt;&#x2F;li&gt;
&lt;li&gt;The camera slowly zooms in on his face, building tension&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;scene-2-inner-voice&quot;&gt;Scene 2: Inner Voice&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;Voice-over of the protagonist reflecting on what he just heard&lt;&#x2F;li&gt;
&lt;li&gt;His tone is logical, curious, but tinged with existential doubt&lt;&#x2F;li&gt;
&lt;li&gt;He begins talking about an idea: making a short film based on what he just saw&lt;&#x2F;li&gt;
&lt;li&gt;Subtle music begins to build an uneasy atmosphere&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;scene-3-meta-reference&quot;&gt;Scene 3: Meta-reference&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;The protagonist starts planning the very short film we are watching&lt;&#x2F;li&gt;
&lt;li&gt;Notes, sketches, and ideas appear (some real, some staged)&lt;&#x2F;li&gt;
&lt;li&gt;The video shifts into a kind of “fake behind-the-scenes,” breaking the fourth wall&lt;&#x2F;li&gt;
&lt;li&gt;Subtle, almost imperceptible changes begin to occur in the background&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;scene-4-reality-break&quot;&gt;Scene 4: Reality Break&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;Suddenly, the protagonist says out loud:
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;“Wait… I’ve already done this.”&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;Silence. He realizes something.&lt;&#x2F;li&gt;
&lt;li&gt;He slowly turns his face toward the camera, expression mixing confusion, horror, and revelation&lt;&#x2F;li&gt;
&lt;li&gt;Cut to his point of view: at first, &lt;strong&gt;nothing&lt;&#x2F;strong&gt;. Silence. Suspense.&lt;&#x2F;li&gt;
&lt;li&gt;Suddenly, a terrifying celestial figure appears: a &lt;strong&gt;biblical angel&lt;&#x2F;strong&gt; (ophanim or another non-humanoid being, covered in eyes, floating in the void)&lt;&#x2F;li&gt;
&lt;li&gt;The protagonist freezes in absolute fear, unable to move or speak&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;scene-5-the-message&quot;&gt;Scene 5: The Message&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;The angel, without a mouth (or without moving one), speaks in a deep, reverberating voice:
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;“Do not be afraid.”&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;Reality distorts: the environment flattens into 2D, as if time itself had stopped or another dimension had taken over&lt;&#x2F;li&gt;
&lt;li&gt;The protagonist is transported elsewhere (still undefined)&lt;&#x2F;li&gt;
&lt;li&gt;The scene ends in a fade to white, leaving the protagonist’s fate in suspense&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;visual-technical-elements&quot;&gt;Visual &amp;amp; Technical Elements&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Lighting&lt;&#x2F;strong&gt;: Contrast between the warm, dim lighting at the beginning and the cold, supernatural glow of the angelic encounter&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Sound&lt;&#x2F;strong&gt;: Use of low frequencies and distorted audio to heighten unease&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Special effects&lt;&#x2F;strong&gt;: Gradual transition from 3D to 2D to convey reality distortion&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Biblical angel&lt;&#x2F;strong&gt;: 3D-modeled, concentric wheels with countless eyes, radiating an unnatural luminous aura&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;production-notes&quot;&gt;Production Notes&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;The angel scene requires detailed CGI and compositing work&lt;&#x2F;li&gt;
&lt;li&gt;For the 2D transition, research “cell shading” and flattening techniques&lt;&#x2F;li&gt;
&lt;li&gt;Consider filming in a room with full lighting control&lt;&#x2F;li&gt;
&lt;li&gt;The actor must master the emotional transition from intellectual curiosity to existential terror&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;hr &#x2F;&gt;
&lt;blockquote&gt;
&lt;p&gt;[!NOTE]&lt;br &#x2F;&gt;
This narrative branch ends at an open point, allowing multiple interpretations and possibilities for how the story continues.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;hr &#x2F;&gt;
&lt;blockquote class=&quot;markdown-alert-important&quot;&gt;
	&lt;p&gt;For back to the main blog click here &lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;cortometraje&#x2F;&quot;&gt;Do Not Be Afraid - Short Film Concept&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;

&lt;&#x2F;blockquote&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Branch 2: What Watches from Within</title>
        <published>2024-05-19T00:00:00+00:00</published>
        <updated>2024-05-19T00:00:00+00:00</updated>
        
        <author>
          <name>
            B.E. Alejandro
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://nezzontli.xyz/es/blog/cortometraje/rama2/"/>
        <id>https://nezzontli.xyz/es/blog/cortometraje/rama2/</id>
        
        <content type="html" xml:base="https://nezzontli.xyz/es/blog/cortometraje/rama2/">&lt;h2 id=&quot;concept&quot;&gt;Concept&lt;&#x2F;h2&gt;
&lt;p&gt;This version &lt;strong&gt;removes the illusion of control&lt;&#x2F;strong&gt;. The protagonist no longer has the active role of wanting to create a short film. Here, &lt;strong&gt;curiosity becomes a crack through which something incomprehensible seeps in&lt;&#x2F;strong&gt;. This branch plays with the idea that some truths cannot be seen without consequences, and that obsession with the divine can turn into a form of madness.&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;narrative-structure&quot;&gt;Narrative Structure&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;scene-1-introduction&quot;&gt;Scene 1: Introduction&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;The protagonist is alone in his room, watching the same YouTube video about biblical inconsistencies&lt;&#x2F;li&gt;
&lt;li&gt;The environment shows &lt;strong&gt;slight visual and sound glitches&lt;&#x2F;strong&gt;: the video pauses for just milliseconds, imperceptible distortions appear&lt;&#x2F;li&gt;
&lt;li&gt;The protagonist doesn’t notice them, but the audience does, creating a sense of unease from the very beginning&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;scene-2-inner-thoughts&quot;&gt;Scene 2: Inner Thoughts&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;The camera slowly zooms in. Voice-over of the protagonist, but there’s &lt;strong&gt;something strange&lt;&#x2F;strong&gt;: sometimes there are &lt;strong&gt;interferences&lt;&#x2F;strong&gt;, fragments of a second voice that &lt;strong&gt;imitates his but isn’t the same&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;He reflects on what he just heard… but the voice contradicts itself, or repeats with slight variations&lt;br &#x2F;&gt;
Example:&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;“What if all this was written by humans? But why does it repeat? What if it wasn’t for us?… for us?”&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;scene-3-the-splitting&quot;&gt;Scene 3: The Splitting&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;The screen flickers. The protagonist &lt;strong&gt;sees himself&lt;&#x2F;strong&gt;, from a camera that shouldn’t exist&lt;&#x2F;li&gt;
&lt;li&gt;He approaches the monitor, presses pause. The image freezes on his face, but &lt;strong&gt;the reflection keeps moving&lt;&#x2F;strong&gt;&lt;&#x2F;li&gt;
&lt;li&gt;The protagonist begins to murmur, his breath short and uneven. The reflection smiles before he does&lt;&#x2F;li&gt;
&lt;li&gt;Reality begins to fragment subtly around him&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;scene-4-the-invisible-angel&quot;&gt;Scene 4: The Invisible Angel&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Dim lighting. Everything looks normal, but there’s a &lt;strong&gt;distant sound&lt;&#x2F;strong&gt;, constant, like a distorted choir that &lt;strong&gt;never disappears&lt;&#x2F;strong&gt;, only growing stronger in silence&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;He says:&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;“There’s something in the room, but I can’t look at it.”&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;The shadows on the wall &lt;strong&gt;move on their own&lt;&#x2F;strong&gt;, forming patterns that suggest something beyond human comprehension&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;He tries to leave, but every time he opens the door, &lt;strong&gt;he enters the same room again&lt;&#x2F;strong&gt;. More disordered. Darker. Hotter&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;scene-5-the-entity&quot;&gt;Scene 5: The Entity&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;At one point, &lt;strong&gt;the angel partially appears&lt;&#x2F;strong&gt;, but &lt;strong&gt;we never see it completely&lt;&#x2F;strong&gt;&lt;&#x2F;li&gt;
&lt;li&gt;It is revealed in reflections, in flashes, in fragments: an eye among books, wings made of bones spinning in the lamp, the sound of wheels on the ceiling&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;It is never fully seen. Never in focus.&lt;&#x2F;strong&gt; But the protagonist does see it, and &lt;strong&gt;it is tearing him apart mentally&lt;&#x2F;strong&gt;&lt;&#x2F;li&gt;
&lt;li&gt;The physical reality of the room begins to distort in response to the angelic presence&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;scene-6-the-reverse-of-the-protagonist&quot;&gt;Scene 6: The Reverse of the Protagonist&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;He sits down, exhausted. The camera slowly circles around… and we see him from behind&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;There is &lt;strong&gt;a figure behind him, imitating his posture&lt;&#x2F;strong&gt;, but reversed: its eyes are where the shoulder blades should be. Its face is hidden&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;The voice-over says:&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;“It’s not me. It was never me.”&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;The protagonist turns around… and the screen &lt;strong&gt;shuts off completely&lt;&#x2F;strong&gt;, leaving the audience with uncertainty about what they’ve witnessed&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;visual-and-psychological-resources&quot;&gt;Visual and Psychological Resources&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Dissonant sound design&lt;&#x2F;strong&gt;: buzzing, distorted celestial choirs, whispers in separated channels (inverted ASMR)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Natural visual glitches&lt;&#x2F;strong&gt;: as if the camera couldn’t properly capture what’s happening&lt;br &#x2F;&gt;
(Inspiration: &lt;em&gt;Annihilation&lt;&#x2F;em&gt;, &lt;em&gt;Skinamarink&lt;&#x2F;em&gt;, &lt;em&gt;The Mandela Catalogue&lt;&#x2F;em&gt;)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Anomalous lighting&lt;&#x2F;strong&gt;: impossible shadows, objects without visible light sources, unjustified flashes&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Space-time distortion&lt;&#x2F;strong&gt;: scene loops, doors that lead nowhere, clocks running backward&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;hidden-message&quot;&gt;Hidden Message&lt;&#x2F;h2&gt;
&lt;p&gt;This branch suggests that &lt;strong&gt;divine knowledge is not meant for humans&lt;&#x2F;strong&gt;. That &lt;strong&gt;some concepts are so vast they shatter the mind&lt;&#x2F;strong&gt; if one attempts to understand them.&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;“The fear of God is not reverence… it is the terror of being seen, understood, and finding no reflection.”&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;production-notes&quot;&gt;Production Notes&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Use non-linear editing techniques to create the sensation of fragmented reality&lt;&#x2F;li&gt;
&lt;li&gt;Work with a sound designer to layer dissonant audio effects&lt;&#x2F;li&gt;
&lt;li&gt;Consider the use of projections for the moving shadow effects&lt;&#x2F;li&gt;
&lt;li&gt;Film with wide-angle lenses to subtly distort spaces&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;blockquote&gt;
&lt;p&gt;[!WARNING] 
This narrative branch requires a more experimental and abstract approach, with emphasis on building an atmosphere of psychological horror rather than a linear storyline.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;hr &#x2F;&gt;
&lt;blockquote class=&quot;markdown-alert-important&quot;&gt;
	&lt;p&gt;For back to the main blog click here &lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;cortometraje&#x2F;&quot;&gt;Do Not Be Afraid - Short Film Concept&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;

&lt;&#x2F;blockquote&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Branch 2: The Verse</title>
        <published>2024-05-19T00:00:00+00:00</published>
        <updated>2024-05-19T00:00:00+00:00</updated>
        
        <author>
          <name>
            B.E. Alejandro
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://nezzontli.xyz/es/blog/cortometraje/rama3/"/>
        <id>https://nezzontli.xyz/es/blog/cortometraje/rama3/</id>
        
        <content type="html" xml:base="https://nezzontli.xyz/es/blog/cortometraje/rama3/">&lt;h2 id=&quot;premise&quot;&gt;Premise&lt;&#x2F;h2&gt;
&lt;p&gt;A young man is watching a video about biblical contradictions in the middle of the night. But among the verses shown, one appears that &lt;strong&gt;should not exist&lt;&#x2F;strong&gt;. It’s not in any Bible. It’s not in the original video. &lt;strong&gt;Only he can see it.&lt;&#x2F;strong&gt;&lt;br &#x2F;&gt;
And once he reads it, &lt;strong&gt;he can no longer stop hearing it.&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;narrative-sequence&quot;&gt;Narrative Sequence&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;act-1-introduction&quot;&gt;Act 1 – Introduction&lt;&#x2F;h3&gt;
&lt;p&gt;&lt;strong&gt;Dimly lit room, 2:47 AM.&lt;&#x2F;strong&gt;&lt;br &#x2F;&gt;
The protagonist (we can call him &lt;em&gt;Elías&lt;&#x2F;em&gt;) is lying down, watching a YouTube video titled &lt;em&gt;“The Bible Contradictions Nobody Wants You to See.”&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;The video’s tone is sarcastic, casual, yet informative.&lt;br &#x2F;&gt;
It cuts between Bible passages, religious paintings, and commentary from the creator.&lt;&#x2F;p&gt;
&lt;p&gt;Suddenly, for just a &lt;strong&gt;fleeting frame&lt;&#x2F;strong&gt;, almost subliminal—&lt;br &#x2F;&gt;
Elías rewinds.&lt;&#x2F;p&gt;
&lt;p&gt;He freezes the frame. There’s a text that &lt;strong&gt;wasn’t in the video before&lt;&#x2F;strong&gt;. It reads:&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;“Verse 0:&lt;br &#x2F;&gt;
And he who beholds the creator outside of time,&lt;br &#x2F;&gt;
shall also see the void that beholds him.”&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;The text &lt;strong&gt;has no source or translation&lt;&#x2F;strong&gt;. It seems to have emerged from nothing, inserting itself into digital reality.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;act-2-the-whisper&quot;&gt;Act 2 – The Whisper&lt;&#x2F;h3&gt;
&lt;p&gt;That night, Elías cannot sleep.&lt;br &#x2F;&gt;
Every time he closes his eyes, he &lt;strong&gt;hears a distant voice whispering the verse&lt;&#x2F;strong&gt;. Sometimes it’s in his own voice. Sometimes in voices like his mother’s, a child’s, or someone weeping.&lt;&#x2F;p&gt;
&lt;p&gt;He begins to notice strange things in his room:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;The mirror doesn’t reflect his movements in sync.&lt;&#x2F;li&gt;
&lt;li&gt;A painting of a religious figure seems to have eyes &lt;strong&gt;slightly shifted out of place&lt;&#x2F;strong&gt;.&lt;&#x2F;li&gt;
&lt;li&gt;A corner of his room, which he’s never paid attention to before, &lt;strong&gt;now terrifies him&lt;&#x2F;strong&gt;. There’s nothing there, but… he &lt;em&gt;feels&lt;&#x2F;em&gt; that there is &lt;em&gt;something&lt;&#x2F;em&gt;.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;He starts getting flashes, as if he were glimpsing &lt;strong&gt;another version of his room&lt;&#x2F;strong&gt;, darker, with symbols etched into the walls. Just for a second—long enough to question his perception.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;act-3-dissociation&quot;&gt;Act 3 – Dissociation&lt;&#x2F;h3&gt;
&lt;p&gt;Elías starts talking to himself. Sometimes he records it to understand what he’s saying, but when he plays the recordings back, &lt;strong&gt;they’re not his words&lt;&#x2F;strong&gt;. It’s the verse, spoken in different languages: Latin, Greek, Aramaic.&lt;br &#x2F;&gt;
He doesn’t know any of these languages.&lt;&#x2F;p&gt;
&lt;p&gt;One night, he wakes up in his chair, facing the mirror. But he doesn’t remember getting up. He’s there, staring at himself.&lt;br &#x2F;&gt;
The camera lingers: Elías, in silence, watching his reflection.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;His reflection doesn’t blink.&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;The boundary between his identity and something “other” begins to dissolve.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;climax&quot;&gt;Climax&lt;&#x2F;h3&gt;
&lt;p&gt;Elías tries searching for “Verse 0” online. It doesn’t exist. No Bibles, no manuscripts, not even conspiracy forums. But every time he searches, the page &lt;strong&gt;glitches&lt;&#x2F;strong&gt; and instead shows:&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;“You already read it.”&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;One night, he’s sitting on his bed.&lt;br &#x2F;&gt;
The verse sounds again, but this time with a &lt;strong&gt;deep resonance&lt;&#x2F;strong&gt;, as if it were coming &lt;strong&gt;from within him&lt;&#x2F;strong&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;He rises, slowly walks toward the dark corner of the room.&lt;br &#x2F;&gt;
There’s a &lt;strong&gt;human silhouette&lt;&#x2F;strong&gt; crouched, like in prayer, but deformed. It seems to be murmuring.&lt;&#x2F;p&gt;
&lt;p&gt;Elías kneels. He leans close to the figure’s ear. He listens.&lt;br &#x2F;&gt;
&lt;strong&gt;It’s repeating the verse.&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Elías asks:&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;“What comes after?”&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;The figure slowly raises its head.&lt;br &#x2F;&gt;
It’s &lt;strong&gt;himself&lt;&#x2F;strong&gt;, but with his mouth sewn shut and eyes completely black. The figure speaks without moving its lips:&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;“You already knew.”&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;hr &#x2F;&gt;
&lt;h3 id=&quot;ending&quot;&gt;Ending&lt;&#x2F;h3&gt;
&lt;p&gt;Elías wakes up in his bed.&lt;&#x2F;p&gt;
&lt;p&gt;Everything looks normal.&lt;br &#x2F;&gt;
The clock reads &lt;strong&gt;2:47 AM&lt;&#x2F;strong&gt;. The same time as always. The video is still playing. As if nothing ever happened.&lt;&#x2F;p&gt;
&lt;p&gt;But on the screen, the YouTuber looks directly at the camera for the first time and says:&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;“Now that you’ve read it, all that’s left… is for Him to look back at you.”&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Cut to black. Silence.&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;visual-technical-elements&quot;&gt;Visual &amp;amp; Technical Elements&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Color palette&lt;&#x2F;strong&gt;: Gradual transition from warm to cold tones as the story progresses&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Composition&lt;&#x2F;strong&gt;: Use of negative space and uneasy angles to build tension&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Visual effects&lt;&#x2F;strong&gt;: Subtle digital glitches increasing in frequency and intensity&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Sound design&lt;&#x2F;strong&gt;: Layers of whispers and subliminal frequencies to provoke unease&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;themes-explored&quot;&gt;Themes Explored&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;The nature of forbidden knowledge&lt;&#x2F;li&gt;
&lt;li&gt;The thin line between revelation and madness&lt;&#x2F;li&gt;
&lt;li&gt;Time as a fragile human construct&lt;&#x2F;li&gt;
&lt;li&gt;The horror of being watched by something incomprehensible&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;production-notes&quot;&gt;Production Notes&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Shoot in &lt;strong&gt;4:3 format&lt;&#x2F;strong&gt; to emphasize claustrophobia&lt;&#x2F;li&gt;
&lt;li&gt;Use editing techniques that suggest subtle time skips&lt;&#x2F;li&gt;
&lt;li&gt;Work with a linguist to create convincing versions of “Verse 0” in ancient languages&lt;&#x2F;li&gt;
&lt;li&gt;Consider binaural sound to increase immersion and discomfort&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;hr &#x2F;&gt;
&lt;blockquote&gt;
&lt;p&gt;[!NOTE]&lt;br &#x2F;&gt;
This narrative branch draws inspiration from elements of &lt;strong&gt;Lovecraftian cosmic horror&lt;&#x2F;strong&gt;, combined with the concept of &lt;strong&gt;kenosis&lt;&#x2F;strong&gt; (divine self-emptying) and the tradition of &lt;strong&gt;apocryphal texts&lt;&#x2F;strong&gt;.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;hr &#x2F;&gt;
&lt;blockquote class=&quot;markdown-alert-important&quot;&gt;
	&lt;p&gt;For back to the main blog click here &lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;cortometraje&#x2F;&quot;&gt;Do Not Be Afraid - Short Film Concept&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;

&lt;&#x2F;blockquote&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Autonomous Drone</title>
        <published>2024-05-19T00:00:00+00:00</published>
        <updated>2024-05-19T00:00:00+00:00</updated>
        
        <author>
          <name>
            B.E. Alejandro
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://nezzontli.xyz/es/blog/drone/"/>
        <id>https://nezzontli.xyz/es/blog/drone/</id>
        
        <content type="html" xml:base="https://nezzontli.xyz/es/blog/drone/">&lt;h2 id=&quot;project-summary&quot;&gt;Project Summary&lt;&#x2F;h2&gt;
&lt;p&gt;The goal of this project is to develop a &lt;strong&gt;fixed-wing UAV&lt;&#x2F;strong&gt; based on the &lt;strong&gt;Eclipson Pathfinder&lt;&#x2F;strong&gt; model for surveillance and reconnaissance missions. The aim is to create a system that can operate &lt;strong&gt;fully autonomously&lt;&#x2F;strong&gt;, respond to commands to reach specific waypoints, and, once in position, allow manual control or continue in automatic mode while analyzing the environment.&lt;&#x2F;p&gt;
&lt;p&gt;The system is designed to be &lt;strong&gt;efficient and low-cost&lt;&#x2F;strong&gt;, using only the essential components to maximize flight autonomy and functionality.&lt;&#x2F;p&gt;
&lt;p&gt;#Drone #UAV #Autonomy #Surveillance #ArduPilot #AI #RaspberryPi&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;key-features&quot;&gt;Key Features&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;autonomous-navigation&quot;&gt;Autonomous Navigation&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;Autonomous flight system with &lt;strong&gt;Cube Orange + Here3 GPS&lt;&#x2F;strong&gt;&lt;&#x2F;li&gt;
&lt;li&gt;Ability to follow predefined routes with multiple waypoints&lt;&#x2F;li&gt;
&lt;li&gt;Obstacle avoidance and alternative path algorithms&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;operating-modes&quot;&gt;Operating Modes&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Autonomous mode&lt;&#x2F;strong&gt;: Navigation to a designated point without human intervention&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Loiter mode&lt;&#x2F;strong&gt;: Holds position over the area of interest while analyzing the environment&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Manual control&lt;&#x2F;strong&gt;: Ability to take control using a &lt;strong&gt;FrSky Taranis X9D&lt;&#x2F;strong&gt; transmitter&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Automatic return&lt;&#x2F;strong&gt;: Returns to home on low battery or loss of signal&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;transmission-and-analysis&quot;&gt;Transmission and Analysis&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;Real-time FPV video transmission via &lt;strong&gt;DJI FPV Air Unit&lt;&#x2F;strong&gt;&lt;&#x2F;li&gt;
&lt;li&gt;Optional image analysis using &lt;strong&gt;Raspberry Pi 4 + 4G&#x2F;LTE module&lt;&#x2F;strong&gt; for people and vehicle detection&lt;&#x2F;li&gt;
&lt;li&gt;Bidirectional telemetry for monitoring and real-time adjustments&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;essential-components&quot;&gt;Essential Components&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;1-structure-and-propulsion&quot;&gt;1. Structure and Propulsion&lt;&#x2F;h3&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Component&lt;&#x2F;th&gt;&lt;th&gt;Specification&lt;&#x2F;th&gt;&lt;th&gt;Function&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;Frame&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;Eclipson Pathfinder&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;3D-printed or kit aerodynamic structure&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Motor&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;T-Motor AT2312 KV1400&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;Main propulsion with high efficiency&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Propeller&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;APC 7x4&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;Optimized for efficiency and thrust&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;ESC&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;T-Motor 30A&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;Precise motor control&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Servos&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;2x SG90 or MG90S&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;Flight surface control&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Battery&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;3S 2200mAh - 4S 3300mAh&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;30–45 min flight autonomy&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Power Module&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;Holybro PM06&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;Power distribution and monitoring&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;h3 id=&quot;2-flight-controller-and-navigation&quot;&gt;2. Flight Controller and Navigation&lt;&#x2F;h3&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Component&lt;&#x2F;th&gt;&lt;th&gt;Specification&lt;&#x2F;th&gt;&lt;th&gt;Function&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;Flight Controller&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;Cube Orange + Carrier Board&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;System brain, flight processing&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;GPS&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;Here3 GPS&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;Precise positioning and navigation&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Airspeed Sensor&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;Digital airspeed sensor&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;Measures relative airspeed&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;h3 id=&quot;3-communication-and-control&quot;&gt;3. Communication and Control&lt;&#x2F;h3&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Component&lt;&#x2F;th&gt;&lt;th&gt;Specification&lt;&#x2F;th&gt;&lt;th&gt;Function&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;RC System&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;FrSky Taranis X9D + R9 Slim+ SBUS Receiver&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;Manual backup control&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Telemetry&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;SiK Radio 915MHz or RFD900x&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;Bidirectional data communication&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;FPV System&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;DJI FPV Air Unit&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;Real-time video transmission&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;h3 id=&quot;4-vision-and-processing-optional&quot;&gt;4. Vision and Processing (Optional)&lt;&#x2F;h3&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Component&lt;&#x2F;th&gt;&lt;th&gt;Specification&lt;&#x2F;th&gt;&lt;th&gt;Function&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;Computer&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;Raspberry Pi 4&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;Image and data processing&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Software&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;YOLOv8 lightweight&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;Real-time object detection&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Connectivity&lt;&#x2F;td&gt;&lt;td&gt;&lt;strong&gt;4G&#x2F;LTE USB module&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;Long-distance data transmission&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;detailed-operating-modes&quot;&gt;Detailed Operating Modes&lt;&#x2F;h2&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Autonomous Mode&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Drone takes off and follows a predefined route to the target point&lt;&#x2F;li&gt;
&lt;li&gt;Maintains constant altitude and airspeed&lt;&#x2F;li&gt;
&lt;li&gt;Adjusts parameters according to environmental conditions&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Loiter Mode&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Holds circular or stationary pattern over the target area&lt;&#x2F;li&gt;
&lt;li&gt;Adjustable radius and speed for surveillance needs&lt;&#x2F;li&gt;
&lt;li&gt;Optimizes energy consumption for extended on-station time&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Manual Control&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Operator can take over with the FrSky transmitter at any time&lt;&#x2F;li&gt;
&lt;li&gt;Smooth transition between autonomous and manual modes&lt;&#x2F;li&gt;
&lt;li&gt;Telemetry alerts for the operator&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;FPV Mode&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Real-time video streaming with DJI FPV&lt;&#x2F;li&gt;
&lt;li&gt;Low latency for precise control&lt;&#x2F;li&gt;
&lt;li&gt;On-screen telemetry overlay&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Automatic Return&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Triggered by command, low battery, or signal loss&lt;&#x2F;li&gt;
&lt;li&gt;Calculates optimal return path considering wind and obstacles&lt;&#x2F;li&gt;
&lt;li&gt;Automatic landing at home position&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ol&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;implementation-plan&quot;&gt;Implementation Plan&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;phase-1-construction&quot;&gt;Phase 1: Construction&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Assemble UAV with minimum components&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Integrate propulsion and control systems&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Install flight controller and sensors&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;phase-2-configuration&quot;&gt;Phase 2: Configuration&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Configure and calibrate Cube Orange with ArduPilot&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Program basic missions and flight parameters&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Tune PID for optimal stability&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;phase-3-testing&quot;&gt;Phase 3: Testing&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Conduct controlled flight tests&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Validate autonomous navigation with waypoints&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Test safety and recovery systems&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;phase-4-optimization&quot;&gt;Phase 4: Optimization&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Integrate DJI FPV system&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Implement image analysis (optional)&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Optimize power consumption and endurance&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;hr &#x2F;&gt;
&lt;blockquote&gt;
&lt;p&gt;[!NOTE] 
This project must comply with local civil aviation regulations for UAVs. Check flight restrictions, registration requirements, and weight limits before operating.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;resources-and-references&quot;&gt;Resources and References&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;ardupilot.org&#x2F;plane&#x2F;&quot;&gt;ArduPilot Official Documentation&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;www.eclipson-airplanes.com&#x2F;&quot;&gt;Eclipson Pathfinder Specifications&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;web.archive.org&#x2F;web&#x2F;20240000000000*&#x2F;https:&#x2F;&#x2F;docs.cubepilot.org&#x2F;user-guides&#x2F;autopilot&#x2F;the-cube-module-overview&quot;&gt;Cube Orange Setup Guide (Archived)&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a href=&quot;https:&#x2F;&#x2F;github.com&#x2F;ultralytics&#x2F;ultralytics&quot;&gt;YOLOv8 on Raspberry Pi Tutorial&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;For budget details and estimated costs, see &lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;drone&#x2F;presupuesto&#x2F;&quot;&gt;Budget&lt;&#x2F;a&gt;.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Autonomous Drone Budget</title>
        <published>2024-05-19T00:00:00+00:00</published>
        <updated>2024-05-19T00:00:00+00:00</updated>
        
        <author>
          <name>
            B.E. Alejandro
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://nezzontli.xyz/es/blog/drone/presupuesto/"/>
        <id>https://nezzontli.xyz/es/blog/drone/presupuesto/</id>
        
        <content type="html" xml:base="https://nezzontli.xyz/es/blog/drone/presupuesto/">&lt;h2 id=&quot;1-structure-and-propulsion&quot;&gt;1. Structure and Propulsion&lt;&#x2F;h2&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;&lt;strong&gt;Component&lt;&#x2F;strong&gt;&lt;&#x2F;th&gt;&lt;th&gt;&lt;strong&gt;Description&lt;&#x2F;strong&gt;&lt;&#x2F;th&gt;&lt;th&gt;&lt;strong&gt;Approx. Price&lt;&#x2F;strong&gt;&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Frame&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;Eclipson Pathfinder (STL files for 3D printing)&lt;&#x2F;td&gt;&lt;td&gt;€39 (approx. $45 USD)&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Brushless Motor&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;T-Motor AT2312 KV1400&lt;&#x2F;td&gt;&lt;td&gt;$30 USD each (x2 = $60 USD)&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Propeller&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;APC 7x4&lt;&#x2F;td&gt;&lt;td&gt;$5 USD each (x2 = $10 USD)&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;ESC&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;T-Motor 30A&lt;&#x2F;td&gt;&lt;td&gt;$25 USD each (x2 = $50 USD)&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Servos&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;SG90 or MG90S&lt;&#x2F;td&gt;&lt;td&gt;$5 USD each (x2 = $10 USD)&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;LiPo Battery&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;3S 2200mAh - 4S 3300mAh&lt;&#x2F;td&gt;&lt;td&gt;$30 - $50 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Power Module&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;Holybro PM06 or similar&lt;&#x2F;td&gt;&lt;td&gt;$20 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;p&gt;&lt;strong&gt;Structure and Propulsion Subtotal:&lt;&#x2F;strong&gt; $245 USD&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;2-flight-controller-and-navigation&quot;&gt;2. Flight Controller and Navigation&lt;&#x2F;h2&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;&lt;strong&gt;Component&lt;&#x2F;strong&gt;&lt;&#x2F;th&gt;&lt;th&gt;&lt;strong&gt;Description&lt;&#x2F;strong&gt;&lt;&#x2F;th&gt;&lt;th&gt;&lt;strong&gt;Approx. Price&lt;&#x2F;strong&gt;&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Flight Controller&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;Cube Orange + Carrier Board&lt;&#x2F;td&gt;&lt;td&gt;$250 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;GPS&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;Here3 GPS&lt;&#x2F;td&gt;&lt;td&gt;$150 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Airspeed Sensor&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;Digital airspeed sensor&lt;&#x2F;td&gt;&lt;td&gt;$50 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;p&gt;&lt;strong&gt;Flight Controller and Navigation Subtotal:&lt;&#x2F;strong&gt; $450 USD&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;3-communication-and-control&quot;&gt;3. Communication and Control&lt;&#x2F;h2&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;&lt;strong&gt;Component&lt;&#x2F;strong&gt;&lt;&#x2F;th&gt;&lt;th&gt;&lt;strong&gt;Description&lt;&#x2F;strong&gt;&lt;&#x2F;th&gt;&lt;th&gt;&lt;strong&gt;Approx. Price&lt;&#x2F;strong&gt;&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Radio Control&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;FrSky Taranis X9D + R9 Slim+ SBUS Receiver&lt;&#x2F;td&gt;&lt;td&gt;$200 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;FPV System&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;DJI FPV Air Unit&lt;&#x2F;td&gt;&lt;td&gt;$180 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Long-Range Telemetry&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;SiK Radio 915MHz&lt;&#x2F;td&gt;&lt;td&gt;$50 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;p&gt;&lt;strong&gt;Communication and Control Subtotal:&lt;&#x2F;strong&gt; $430 USD&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;4-surveillance-functionality-optional&quot;&gt;4. Surveillance Functionality (Optional)&lt;&#x2F;h2&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;&lt;strong&gt;Component&lt;&#x2F;strong&gt;&lt;&#x2F;th&gt;&lt;th&gt;&lt;strong&gt;Description&lt;&#x2F;strong&gt;&lt;&#x2F;th&gt;&lt;th&gt;&lt;strong&gt;Approx. Price&lt;&#x2F;strong&gt;&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Processing Computer&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;Raspberry Pi 4&lt;&#x2F;td&gt;&lt;td&gt;$70 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;4G&#x2F;LTE USB Module&lt;&#x2F;strong&gt;&lt;&#x2F;td&gt;&lt;td&gt;For cellular connectivity&lt;&#x2F;td&gt;&lt;td&gt;$50 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;p&gt;&lt;strong&gt;Optional Surveillance Subtotal:&lt;&#x2F;strong&gt; $120 USD&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;cost-summary&quot;&gt;Cost Summary&lt;&#x2F;h2&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;&lt;strong&gt;Category&lt;&#x2F;strong&gt;&lt;&#x2F;th&gt;&lt;th&gt;&lt;strong&gt;Subtotal&lt;&#x2F;strong&gt;&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;Structure and Propulsion&lt;&#x2F;td&gt;&lt;td&gt;$245 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Flight Controller and Navigation&lt;&#x2F;td&gt;&lt;td&gt;$450 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Communication and Control&lt;&#x2F;td&gt;&lt;td&gt;$430 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Surveillance Functionality (Optional)&lt;&#x2F;td&gt;&lt;td&gt;$120 USD&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;h2 id=&quot;estimated-total&quot;&gt;Estimated Total&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Basic Configuration:&lt;&#x2F;strong&gt; $1,125 USD&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Full Configuration with Surveillance:&lt;&#x2F;strong&gt; $1,245 USD&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;additional-considerations&quot;&gt;Additional Considerations&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;costs-not-included&quot;&gt;Costs Not Included&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;Assembly and soldering tools&lt;&#x2F;li&gt;
&lt;li&gt;LiPo battery charging equipment&lt;&#x2F;li&gt;
&lt;li&gt;Spare parts and replacement components&lt;&#x2F;li&gt;
&lt;li&gt;Specialized software (if a license is required)&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h3 id=&quot;possible-savings&quot;&gt;Possible Savings&lt;&#x2F;h3&gt;
&lt;ul&gt;
&lt;li&gt;Use second-hand components for radio control and telemetry&lt;&#x2F;li&gt;
&lt;li&gt;Replace Cube Orange with cheaper alternatives like Pixhawk 4&lt;&#x2F;li&gt;
&lt;li&gt;3D print the frame instead of buying a pre-made kit&lt;&#x2F;li&gt;
&lt;li&gt;Use analog FPV systems instead of the DJI unit&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;blockquote&gt;
&lt;p&gt;[!NOTE]&lt;br &#x2F;&gt;
This budget was prepared in May 2024. Prices may vary significantly depending on availability, market fluctuations, and geographic location. Current prices should be verified before purchasing.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;hr &#x2F;&gt;
&lt;blockquote class=&quot;markdown-alert-important&quot;&gt;
	&lt;p&gt;For back to the main blog click here &lt;a href=&quot;https:&#x2F;&#x2F;nezzontli.xyz&#x2F;blog&#x2F;drone&#x2F;&quot;&gt;Autonomous Drone&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;

&lt;&#x2F;blockquote&gt;
</content>
        
    </entry>
</feed>
