Come ho creato Lùmen: un’app macOS per laser engraver nata dalla frustrazione

Apple

Come ho creato Lùmen: un'app macOS per laser engraver nata dalla frustrazione

A volte le idee migliori nascono da un problema. Questa è la storia di come un regalo, un software che non funziona e un po’ di ostinazione hanno portato alla nascita di Lùmen, un’app macOS per controllare laser engraver.

Tutto è iniziato con un regalo

Poco tempo fa la mia compagna mi ha regalato una Sculpfun C1 Mini, un laser engraver compatto con diodo da 3W. Ero contentissimo: è tanto che volevo fare piccoli lavori di incisione su legno, carta, pelle e altri materiali. Un regalo perfetto.

L’entusiasmo però si è scontrato quasi subito con la realtà: su macOS non esistono software validi per usare questo tipo di dispositivo.

Il deserto software su Mac

Il panorama è desolante. L’app consigliata praticamente da tutti è LightBurn: ha una trial di 30 giorni e poi costa 104€ per la licenza completa. Un prezzo non esattamente accessibile per chi, come me, vuole fare incisioni hobbistiche.

Ma il prezzo non è stato nemmeno il problema principale. Il problema è che LightBurn non funzionava. Non riconosceva la Sculpfun C1 Mini. In nessun modo. Ho provato ogni metodo, niente.

L’app ufficiale sul Mac App Store? Non compatibile con la C1 Mini.

Su Windows esiste LaserGRBL, un software open source eccellente e gratuito. Ma io uso Mac, e non avevo intenzione di tenere una macchina virtuale Windows accesa solo per incidere un sottobicchiere.

Non ho avuto scelta

A quel punto la decisione è stata quasi naturale: me lo scrivo io.

Sono uno sviluppatore, conosco Swift e SwiftUI, e ho un laser engraver che aspetta solo di essere usato. Come potevo resistere?

Così è nata l’idea di Lùmen.

Lo sviluppo: Claude come copilota

Qui devo essere onesto: da solo ci avrei messo troppo tempo. Ho usato Claude come assistente durante tutto lo sviluppo e il contributo è stato enorme.

Ho iniziato definendo il prodotto: quale UI adottare, quale UX offrire, quali funzionalità inserire. Volevo qualcosa di semplice, che non richiedesse un manuale di 200 pagine per essere usato. Poi abbiamo iniziato a scrivere codice.

Il primo obiettivo era far funzionare il “motore”: la comunicazione seriale con il laser tramite protocollo GRBL, il cuore di praticamente tutti i laser engraver consumer. Una volta che il laser rispondeva ai comandi e iniziava a muoversi, sapevo che il progetto era fattibile.

Da lì in poi è stata una crescita costante di funzionalità.


Cosa fa Lùmen

Connessione e controllo

Lùmen si collega al laser engraver via USB seriale e parla il protocollo GRBL. Supporta i baud rate più comuni (da 9600 a 230400) e all’avvio legge automaticamente le impostazioni della macchina per configurarsi di conseguenza.

Lo stato della macchina è sempre visibile: coordinate X/Y/Z, velocità, potenza, eventuali allarmi. Tutto in tempo reale.

Sistema a doppio layer

Una delle funzionalità che ho voluto di più è il sistema a due layer indipendenti:

  • Layer Engrave (arancione): per l’incisione raster. Supporta immagini PNG, JPEG, BMP e TIFF. Il laser modula la potenza in base alla luminosità dell’immagine, creando sfumature e dettagli.
  • Layer Cut (rosso): per il taglio vettoriale. Importa file SVG e taglia lungo i tracciati con potenza costante.

I due layer si eseguono in sequenza in un unico lavoro: prima l’incisione, poi il taglio. Questo è utilissimo: puoi incidere un disegno su un pezzo di compensato e poi ritagliarne il contorno, tutto in un colpo solo. Oppure puoi usare un solo layer, a seconda di quello che devi fare.

Elaborazione avanzata delle immagini

Per l’incisione, Lùmen offre tre modalità di conversione:

  • Scala di grigi: mappa la luminosità dell’immagine direttamente sulla potenza del laser
  • Dithering: usa algoritmi di diffusione dell’errore (Floyd-Steinberg, Atkinson e altri 5) per risultati fotorealistici
  • Soglia: conversione binario bianco/nero con soglia regolabile

Puoi regolare luminosità, contrasto, risoluzione (da 1 a 20 linee/mm), velocità, potenza e overscan. E soprattutto: vedi un’anteprima in tempo reale dell’immagine elaborata prima di lanciare il lavoro.

Origine e posizionamento

Questa è una delle funzionalità che ha richiesto più tempo per essere pensata bene. Lùmen offre due modalità:

  • Home macchina: usa gli interruttori di fine corsa per stabilire un punto zero ripetibile
  • Origine personalizzata: posizioni il laser manualmente con il jog pad e premi “Imposta Zero qui”

Il jog pad a 8 direzioni permette di muovere il laser con passi configurabili (da 0.1 a 50 mm) e a 6 velocità diverse. Puoi anche attivare il puntatore laser a bassa potenza per vedere esattamente dove andrà il lavoro senza bruciare il materiale.

Framing

Prima di lanciare un lavoro, puoi fare il framing: il laser traccia il contorno dell’area di lavoro così puoi verificare posizione e dimensioni sul materiale. Se il puntatore laser è attivo, il contorno sarà visibile direttamente sulla superficie. Una funzione semplice ma che risparmia materiale e tempo.

Preset per macchine e materiali

Lùmen include 14 preset macchina preconfigurati per i modelli più diffusi: Sculpfun, Ortur, Atomstack, TwoTrees, NEJE. Ogni preset imposta automaticamente le dimensioni dell’area di lavoro e i limiti di potenza.

Per i materiali ci sono 18 preset che coprono i casi più comuni: carta, cartone, compensato, legno massello, bambù, sughero, pelle, acrilico, feltro e altri. Ogni preset suggerisce velocità e potenza ottimali per incisione o taglio.

E naturalmente puoi creare i tuoi preset personalizzati, sia per macchine che per materiali.

Griglia di test potenza/velocità

Come fai a trovare i parametri giusti per un materiale nuovo? Con la griglia di test: Lùmen genera automaticamente una matrice di quadratini incisi a combinazioni diverse di velocità e potenza. Scegli i range, il numero di passi, la dimensione delle celle, e lanci il test. Trovi i parametri perfetti senza sprecare materiale in tentativi alla cieca.

Override in tempo reale

Durante l’esecuzione di un lavoro puoi regolare velocità e potenza al volo, con incrementi dell’1% o del 10%. Le modifiche vengono applicate istantaneamente tramite i codici di override in tempo reale di GRBL. Utilissimo per correggere al volo se vedi che il laser sta bruciando troppo o troppo poco.

Console di debug

Per chi vuole capire cosa succede “sotto il cofano”, c’è una console seriale integrata con log colorati: comandi inviati in blu, risposte in nero, stati in grigio, errori in rosso. Puoi anche inviare comandi GCode manuali con navigazione nella cronologia. E se serve, puoi esportare l’intero log in un file di testo.

Sicurezza

Un laser non è un giocattolo, e Lùmen lo sa:

  • Countdown di 5 secondi prima di ogni lavoro, con possibilità di annullare
  • Limiti software che impediscono al laser di uscire dall’area di lavoro
  • Spegnimento automatico del laser a fine lavoro
  • Gestione allarmi con descrizioni comprensibili e pulsante di sblocco

Salvataggio progetti

Puoi salvare l’intero progetto (entrambi i layer con tutte le impostazioni) in formato nativo Lùmen e riaprirlo successivamente. Il file generato è anche compatibile con altri sender GCode, quindi nessun lock-in.


L’interfaccia

Ho voluto un’interfaccia scura, pulita, divisa in due pannelli:

  • A sinistra il canvas interattivo con la visualizzazione del toolpath (zoom e pan inclusi) e la console di debug sotto
  • A destra la sidebar con tutte le sezioni organizzate in pannelli richiudibili: stato macchina, controlli di movimento, origine, preset, override, controlli lavoro e pannello layer

Niente è nascosto in sottomenu infiniti. Tutto è a portata di clic.


Il risultato

Alla fine è venuta fuori un’app che reputo semplice ed essenziale. Facile da usare, veloce da apprendere, e soprattutto: funziona.

Il primo test sulla mia Sculpfun C1 Mini è stato emozionante. Vedere il laser muoversi seguendo i comandi dell’app che avevo scritto io, incidere un’immagine su un pezzo di legno con dettagli che non mi aspettavo… è stata una bella soddisfazione.

Disponibile per tutti

Ho pubblicato Lùmen su lumen.dimix.it, disponibile per tutti gli utenti macOS.

C’è una prova gratuita di 3 giorni per testare tutto senza limiti. Dopodiché il prezzo è di 9,99€. Una tantum. Per sempre. Aggiornamenti futuri compresi.

In un mondo di abbonamenti mensili e software a tripla cifra, mi sembrava giusto offrire qualcosa di accessibile. Se hai un laser engraver e un Mac, non dovresti dover scegliere tra spendere 104€ o tornare a Windows.


Conclusioni

Lùmen è nato da un problema reale: un laser engraver senza software su Mac. È cresciuto grazie alla collaborazione con Claude, che ha accelerato enormemente lo sviluppo. Ed è diventato un prodotto che spero possa essere utile a chiunque si trovi nella mia stessa situazione.

A volte la frustrazione è il miglior carburante per creare qualcosa di nuovo.

Se avete domande, suggerimenti o volete raccontarmi come usate Lùmen, scrivetemi. Sono sempre contento di ricevere feedback.


Lùmen è disponibile su lumen.dimix.it — prova gratuita di 3 giorni, poi 9,99€ per sempre.

Scritto il