sabato 27 giugno 2020

Primi passi col telescopio

Mi sono comprato a 50 euro un telescopio newtoniano Sky-watcher) con diametro 130 mm e focale 900 mm con montatura equatoriale EQ2 non motorizzata (per la cronaca il modello e' ancora in vendita al prezzo di 269 euro) . Il telescopio era venduto senza oculare ma compreso di ragnatele e polvere all'interno del tubo

Non ho nessuna esperienza diretta di osservazione con telescopio ed il primo passo e' quello di imparare ad settare la montatura verso la stella polare

La prima foto, fatta con un cellulare appoggiato all'oculare, 



Immagine raddrizzata con indicazione dei toponimi


domenica 14 giugno 2020

Configurare AS32-TTL100-V2.0

Si impostano M0 ed M1 a 0 togliendo i jumper dalla scheda



Su un terminale si inviano i dati
Per configurare la porta si usa stty
stty 9600 cs8 -cstopb -ixoff -F /dev/ttyUSBx

(per la configurazione si usano sempre 9600 indipendentemente da come era configurata
la UART in precedenza) 

con echo si inviano i dati
echo -en '\xC1\xC1\xC1' > /dev/ttyUSB3

su un altro terminale si riceve la risposta
cat < /dev/ttyUSB3


per configurare il dispositivo si devono inviare 6 Byte in formato esadecimale

C0h 
00h High Address
00h Low Address
25h = 00-100-101  00 indica 8N1, 100 indica 19200, 101 19200 airspeed
17h = canale di trasmissione (433 MHz)
44h = 0-1-000-100 0 transparent mode, 1 IO Drive, 000 wakeup time, 1 Fec switch, 00 30 dBm
 

19200 Air 19200 USB/Seriale
echo -en '\xC0\x00\x00\x25\x17\x44' > /dev/ttyUSB3

9600 Air 9600 USB/Serial
echo -en '\xC0\x00\x00\x1C\x17\x44' > /dev/ttyUSB3

19200 Air 9600 USB/Serial
echo -en '\xC0\x00\x00\x1D\x17\x44' > /dev/ttyUSB3

Trasferimento file via Lora

Per trasferire via LoRa e' come trasferire dati tramite un normale collegamento seriale
Si puo' quindi usare minicom impostando Hardware e Software Flow Control ad Off

Su un endpoint si digita CTRL A Z S selezionando XModem (non sono riuscito ad usare ZModem)
Sull'altro endpoint si digita CTRL A Z R selezionando XModem


La velocita' di traferimento e' molto bassa.....nel mio caso 98 BPS su un file di 300 KB (di default la scheda e' impostata a 2.4 kbps).. modificando la velocita' a 19.2 kbps sono passato a 633 bps

Includendo errori e ritrasmissioni alla massima velocita' si riescono a trasferire 100 kb in circa 2.5 minuti e 1 Mb in circa 25 minuti

sabato 13 giugno 2020

Algoritmi di compressione file testo

Devo trasferire su una connessione seriale molto lenta un file testo e per cercare di minimizzare il tempo di trasferimento, visto che non posso modificare la velocita', devo provare a comprimere al massimo

Dimensioni originali : 4012005 bytes 

Di seguito i risultati (in ordine di percentuale di compressione, ovviamente non sono previsti algoritmi lossy) dal peggiore al migliore

ZIP (26%) 1052588 bytes
BZIP (19%) 777324 bytes 
KGB standard compression (17%)  704919 bytes
LRZIP (16.5%) 664153 bytes
BROTLI max compression (15%) 607908  bytes
XZ (14%) 590916 bytes
LZMA (14%) 586371 bytes
KGB (14%) best compression 573005 bytes

Per KGB massima compressione le richieste di memoria sono particolarmente onerose

mercoledì 10 giugno 2020

Porta seriale dirottata su Internet con ser2net

Se si ha un dispositivo con una uscita seriale (per esempio un GPS) ma che non ha la possibilita' di connettersi ad Internet un modo semplice di creare un gateway seriale e' quello di utilizzare un Raspberry, per esempio un 3 A+, ed il software ser2net



Una volta installato tramite apt si edita il file /etc/ser2net.conf inserendo per esempio una riga del tipo

6000:raw:600:/dev/ttyACM0:115200 8DATABITS NONE 1STOPBIT banner

che espone sulla porta TCP 6000 del dispositivo i dati raw della porta seriale /dev/ttyACM0 a velocita' 115200 8N1


riavviato il servizio tramite /etc/init.d/ser2net reload ci si puo' spostare su un altro computer e chiamare, per esempio tramite netcat, la porta 6000 per vedere arrivare lo stream dei dati seriali

nc xxx.xxx.xxx.xxx 6000



Solar Edison

Premessa: il progetto Solar Edison e' stato sostituito dal progetto Solar Raspberry

Uno dei miei progetti di piu' lungo corso che non ho mai realizzato e' quello di realizzare un computer completamente svincolato dall'alimentazione di rete. Deve essere trasportabile (quindi con dimesioni e peso contenuto), possibilmente con uptime superiore al 95% e con una capacita' di calcolo discreta

E' arrivato il momento di provare a costruirselo

Per il computer ho tirato fuori una Intel Edison che giaceva nel cassetto 
Il sistema di alimentazione e' composto da un pannello solare da 10 W con una batteria da moto da 7.2 Ah 12V ed un regolatore di tensione la cui uscita a 12 V e' collegata al barrel jack della Edison dove si possono applicare tensioni da 9 a 19 V



Visto che il consumo della Edison e' abbondantemente sotto i 100 mA pensavo di avere vita facile a mantenere il sistema in vita .. sbagliavo. Per motivi non meglio chiariti il sistema scarica la batteria nel giro di poche ore tanto da non passare nemmeno la notte. 


Ho provato a collegare il cavo USB di alimentazione della Edison all'uscita USB del regolatore di tensione, in questo modo i consumi sono scesi drasticamente forse perche' l'energia della batteria era dissipata dal regolatore di tensione della Edison che deve portare 12 V ai 5,3.3 e 1.8 rispettivamente della Arduino Board e del processore Atom.

Sembrava vinta ma in questa configurazione ho perso la porta USB della Edison su cui dovevo montare un GPS

Per fare una prova ho preso un pannello solare da 50W con una batteria da auto da 42Ah ma con questa soluzione si perde la trasportabilita'. Il progetto e' quindi stato chiuso in favore di una Solar Raspberry



Debugger integrato ESP32S3

Aggiornamento In realta' il Jtag USB funziona anche sui moduli cinesi Il problema risiede  nell'ID USB della porta Jtag. Nel modulo...