# Plotter Hub

> Desenha através da rede.

O Plotter Hub transforma um Raspberry Pi num servidor de plotagem em rede para o teu plotter de caneta compatível com AxiDraw. Envia SVGs a partir do teu computador e deixa o Pi tratar do desenho localmente, do início ao fim.

O Plotter Hub é um servidor de plotagem self-hosted para plotters de caneta da classe AxiDraw, a correr num Raspberry Pi. Arrasta e larga um SVG no teu navegador e o Pi controla o plotter localmente através da API oficial em Python do AxiDraw — com desenho camada a camada, pausas para troca de canetas, predefinições de tamanho de papel, otimização de caminhos opcional com vpype, um cursor de posição da caneta em tempo real e suporte para o botão físico de pausa. Gratuito e de código aberto sob a licença MIT.

- **Developer:** Synendo
- **Website:** https://www.synendo.com/pt/plotterhub/
- **Requirements:** Requer Raspberry Pi OS
- **Ver no GitHub:** https://github.com/Synendo/PlotterHub

## Um pequeno servidor para o teu plotter de caneta

O Plotter Hub é para plotters da classe [AxiDraw](https://wiki.evilmadscientist.com/AxiDraw), que não deveriam precisar de um computador ligado para cada trabalho. Liga o plotter a um Raspberry Pi uma única vez e depois envia desenhos a partir de qualquer dispositivo na tua rede local. Arrasta um SVG com camadas do Inkscape e o Plotter Hub desenha-o camada a camada — ou envia o trabalho através da sua API HTTP. É essa API que o [GD Studio](https://www.synendo.com/pt/gdstudio/), a app de desenho generativo da Synendo para Mac, usa para desenhar diretamente da tela para o teu plotter de caneta.

## Funcionalidades

O Plotter Hub dá-te os controlos de que precisas para a plotagem de SVGs do dia a dia, sem transformar a página num painel de controlo.

- Upload de SVG por arrastar e largar
- Seleção de camadas do Inkscape
- Pausa entre camadas para trocar canetas
- Predefinições de papel, orientação, margens e ajuste à página
- Controlos de velocidade com a caneta levantada e pousada
- Otimização opcional com [vpype](https://vpype.readthedocs.io/en/latest/)
- Progresso em tempo real, estimativa de tempo e pré-visualização da posição da caneta
- Pausar, retomar, cancelar e suporte para o botão físico de pausa
- Corre como serviço em segundo plano — arranca no boot
- Atualizações na app com um clique
- API HTTP para apps companheiras e scripts

**Obrigado ao Evil Mad Scientist.** O Plotter Hub assenta na sua fantástica [AxiDraw Python API](https://axidraw.com/doc/py_api/) de código aberto (GPL-2.0), que controla o plotter nos bastidores. O próprio Plotter Hub é software livre e de código aberto sob a licença MIT.

## Requisitos

Precisas de:

- Raspberry Pi Zero 2 W, 3B+ ou mais recente
- Raspberry Pi OS Bookworm ou Trixie — recomenda-se a versão Lite (sem ambiente de trabalho)
- Um plotter USB da classe AxiDraw
- Uma rede local de confiança

Um Raspberry Pi Zero 2 W funciona bem como servidor de plotagem sempre ligado. Um Raspberry Pi 3B+ dá pré-visualizações e configuração mais ágeis. Um Pi 4 ou 5 costuma ser desnecessário se o Plotter Hub for a única coisa a correr. Uma instalação limpa é mais fácil com o [Raspberry Pi Imager](https://www.raspberrypi.com/software/).

## Como funciona

1. **Instala no teu Pi** — Liga-te por SSH ao teu Raspberry Pi, clona o repositório e corre ./install.sh. Ele configura um ambiente virtual, instala a API do AxiDraw e o vpype, regista o Plotter Hub como serviço do systemd e, quando termina, mostra o URL para abrires.

   Liga-te por SSH ao teu Raspberry Pi

   ```
   % ssh plotter@plotterhub.local
   ```

   Atualiza o índice de pacotes e instala o git

   ```
   plotter@plotterhub:~ sudo apt update && sudo apt install -y git
   ```

   Clona o repositório do Plotter Hub

   ```
   plotter@plotterhub:~ git clone https://github.com/Synendo/PlotterHub.git ~/PlotterHub
   ```

   Entra na pasta de instalação

   ```
   plotter@plotterhub:~ cd ~/PlotterHub
   ```

   Inicia a instalação

   ```
   plotter@plotterhub:~/PlotterHub $ ./install.sh
   ```
2. **Abre a interface web** — Navega para http://plotterhub.local, ou para o hostname do teu Pi, a partir de qualquer dispositivo na tua rede. Não há login nem app de ambiente de trabalho para instalar — funciona como a página web de uma impressora de rede.
3. **Larga um SVG e configura-o** — Arrasta e larga o teu SVG, seleciona que camadas do Inkscape desenhar, escolhe uma predefinição de papel e margens e, opcionalmente, ativa a otimização com vpype. Antes de desenhar, o Plotter Hub estima o tempo, a distância de desenho, a distância de deslocamento e o número de levantamentos da caneta.
4. **Acompanha e controla o desenho** — Segue o desenho em tempo real na interface web — o cursor da caneta e a barra de progresso atualizam-se à medida que desenha — e pausa, retoma ou cancela a partir daí. Assim que o trabalho é enviado, o teu computador já não precisa de continuar ligado. E se o teu plotter tiver um botão físico de pausa, também o podes usar, por exemplo para retomar depois de uma troca de camada.

## App complementar: Cria com o GD Studio

O Plotter Hub leva a tua arte para o papel. O GD Studio é onde a crias — a app para macOS da Synendo para arte generativa com plotter de caneta. Escolhe entre 50 padrões em 8 famílias, molda-as com controlos em tempo real, e adiciona camadas de texto e de SVG importado. Cada desenho é construído a partir de traços contínuos, por isso a tela mostra exatamente o que a caneta vai desenhar. E o melhor de tudo: o GD Studio envia o teu trabalho diretamente para o Plotter Hub através da tua rede — sem exportações, sem ficheiros para mover.

[Explorar o GD Studio](https://www.synendo.com/pt/gdstudio/)

## FAQ do Plotter Hub

**O meu computador precisa de continuar ligado enquanto desenha?**

Não. Assim que o SVG é enviado, o Raspberry Pi trata do desenho localmente.

**Funciona com o meu plotter?**

O Plotter Hub foi feito para plotters de caneta da classe AxiDraw: máquinas que podem ser controladas através da API em Python do AxiDraw ou de um fluxo de comandos compatível ao estilo AxiDraw. Exemplos:
- Plotters AxiDraw — por exemplo, o AxiDraw V3/A4, V3/A3, SE/A4 ou MiniKit.
- Plotters iDraw compatíveis com AxiDraw — por exemplo, o iDraw H SE A3.
- Plotters da classe NextDraw — por exemplo, o NextDraw 8511 ou 1117, quando suportados através do fluxo compatível ao estilo NextDraw/AxiDraw.
- Plotters XY personalizados baseados em EBB — para utilizadores avançados, se a máquina estiver configurada para se comportar como um plotter da classe AxiDraw.
Se o teu plotter suportar a API em Python do AxiDraw ou um fluxo de comandos compatível ao estilo AxiDraw, deverá funcionar com o Plotter Hub.

**Preciso do Inkscape, e que SVGs funcionam?**

Qualquer SVG plotável funciona — arte de linhas e traços que um plotter de caneta consiga desenhar fisicamente. O Inkscape também não é obrigatório; só importa para a separação de camadas: se o teu ficheiro tiver camadas do Inkscape, o Plotter Hub deteta-as para que possas escolher quais desenhar e pausar entre elas para trocar canetas. Sem camadas, ele simplesmente desenha o desenho inteiro.

**Posso trocar de canetas entre camadas?**

Sim. O Plotter Hub pode pausar entre camadas, para que possas trocar de canetas e continuar o desenho.

**Posso pausar um desenho fisicamente?**

Sim, em plotters compatíveis. O botão físico de pausa pode pausar e retomar um desenho, e avançar para a camada seguinte durante uma pausa para troca de caneta.

**Posso usá-lo a partir de outro computador?**

Sim. Qualquer dispositivo na mesma rede local pode abrir a interface web do Plotter Hub e enviar SVGs.

**O Plotter Hub tem login?**

Não. O Plotter Hub foi pensado para uma rede local de confiança, como a página web de uma impressora de rede. Não o exponhas diretamente à internet. Para acesso remoto, usa uma VPN como o Tailscale ou o WireGuard.

**Como atualizo o Plotter Hub?**

Quando uma versão mais recente é publicada, um banner oferece uma atualização com um clique diretamente na interface web — o Plotter Hub descarrega a versão mais recente, volta a correr o instalador e fica online sozinho. Também podes atualizar por SSH com um git pull e voltando a correr ./install.sh. As atualizações ficam bloqueadas enquanto um desenho está a decorrer, e as tuas definições, fila de trabalhos e uploads são sempre preservados.

**Um desenho sobrevive a um reboot ou reinício?**

Sim. O Plotter Hub corre como serviço e arranca de novo no boot, e a fila de trabalhos é guardada em disco — por isso um desenho em pausa é restaurado como um trabalho retomável após um reinício. Parar o serviço a meio de um desenho também levanta primeiro a caneta.

**Existe uma API?**

Sim. O Plotter Hub inclui uma API HTTP para apps companheiras e scripts, protegida por uma chave de API gerada automaticamente. Consulta a [documentação da API](https://github.com/Synendo/PlotterHub/blob/main/API.md) para a referência dos endpoints.

**É gratuito?**

Sim. O Plotter Hub é gratuito e de código aberto (licença MIT).

---

## Legal & support

- Ver no GitHub: https://github.com/Synendo/PlotterHub

## Mais da Synendo

- [VisionTagger](https://www.synendo.com/pt/visiontagger/) — Nunca mais tagueie fotos manualmente.
- [GD Studio](https://www.synendo.com/pt/gdstudio/) — Arte generativa, feita para plotar.

## Other languages

- en: https://www.synendo.com/plotterhub/
- nl: https://www.synendo.com/nl/plotterhub/
- de: https://www.synendo.com/de/plotterhub/
- ja: https://www.synendo.com/ja/plotterhub/
- fr: https://www.synendo.com/fr/plotterhub/
- zh-Hans: https://www.synendo.com/zh-Hans/plotterhub/
- es: https://www.synendo.com/es/plotterhub/
- it: https://www.synendo.com/it/plotterhub/
- ko: https://www.synendo.com/ko/plotterhub/
