W: Possible missing firmware /lib/firmware/rtl_nic/rtl8125b-2.fw for module r8169 – debian testing bullseye

Tra le caratteristiche peculiari di Debian è l’utilizzo del software libero. Il sofware  incluso nel repository main infatti deve essere conforme alle specifiche DFSG (Debian Free Software Guidelines).  Questo  ha comportato che a partire dalla versione Squeeze  ( Debian 6 ) il firmware non libero ( in genere non aderente alla DFSG )  è stato eliminato dal kernel  e disponibile in pacchetti specifici.  Che sarà cura dell’utente finale installare.

Da questo consegue che gli utenti debian si devono familiarizzare con il messaggio

Possible missing firmware /lib/firmware/....

nello specifico,  in debian testing bullseys (11) :

W: Possible missing firmware /lib/firmware/rtl_nic/rtl8125b-2.fw for module r8169 -

Nell’esempio si viene informati  della possibile mancanza del firmware per la scheda di rete realtek.  Il firmware evidenziato come mancante è presente nel pacchetto firmware-realtek repository non-free.

In generale per individuare le periferiche presenti nel sistema per le quali  potrebbe mancare il firmware specifico si posso utilizzare i seguenti comandi

#   dmesg | grep -Ei "firmware|fw"

oppure

# update-initramfs -u -k all
# update-initramfs -u -k all
...
update-initramfs: Generating /boot/initrd.img-5.10.0-3-amd64
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8125b-2.fw for module r8169
...

Talvolta potrebbe essere utile controllare il contenuto della cartella firmware-missing  in cui sono presenti  informazioni sul firmware mancante

# ls /run/udev/firmware-missing/

Per ricercare il pacchetto con il firmware in debian testing si devono dapprima inserire i repository contrib e non-free in /etc/apt/sources.list

# vi /etc/apt/sources.list
o
# nano/etc/apt/sources.list

la riga

deb http://ftp.it.debian.org/debian/ testing main

diventerà

deb http://ftp.it.debian.org/debian/ testing main contrib non-free

Si può aggiungere la riga con  i nuovi repository direttamente da terminale con

# echo "deb http://ftp.it.debian.org/debian/ testing contrib non-free" | tee -a /etc/apt/sources.list

Adesso il pacchetto con il firmware può essere cercato con il comando

apt search

nel caso dell’esempio serve il firmware rtl8168e-3.fw  quindi dopo l’update per l’aggiunta dei nuovi repository cercheremo

# apt update && apt search rtl8125b-2.fw
...
...
Sorting... Done
Full Text Search... Done
firmware-realtek/testing,now 20201218-1 all [upgradable from: 20190114-1]
  Binary firmware for Realtek wired/wifi/BT adapters

quindi per installare il pacchetto al solito

# apt install firmware-realtek
# apt install firmware-realtek
...
...
The following packages will be upgraded:
firmware-realtek
...
Get:1 http://deb.debian.org/debian testing/non-free amd64 firmware-realtek all 20201218-3 [746 kB]
Fetched 746 kB in 0s (1.832 kB/s) 
...
...

The following packages will be upgraded:
firmware-realtek

per verificare

# update-initramfs -u -k all

Risorse:

NO_PUBKEY 793FEB8BB69735B2. Vivaldi repository GPG error. The following signatures couldn’t be verified because the public key is not available: NO_PUBKEY 793FEB8BB69735B2

Debian Bullseye 11 and Ubuntu 22.04 will no longer use apt-key (apt-key deprecated) to manage the list of keys used by apt to authenticate packages. Therefore if you are using debian 10 testing (Bullseye) the standard procedure to import the Vivaldi specific repository key using apt-key will inevitably lead to the title warning.

# Import the Vivaldi repository signing key:
wget -qO- https://repo.vivaldi.com/stable/linux_signing_key.pub | sudo apt-key add -

To avoid the warning we can take the repository key in plain text format, convert it into binary gpg format and add it to the specific apt directory /etc/apt/trusted.gpg.d

curl -fsSL https://repo.vivaldi.com/stable/linux_signing_key.pub | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/bullseye-vivaldi pgdg.gpg > /dev/null


we can split the command into several lines for a better reading: :

curl -fsSL https://repo.vivaldi.com/stable/linux_signing_key.pub | 
gpg --dearmor | 
sudo tee /etc/apt/trusted.gpg.d/bullseye-vivaldi.gpg > 
/dev/null 
  • curl downloads the pub key ( plain text type ) of the Vivaldi apt repository
  • gpg –dearmor create a bynary gpg key
  • tee reads the standard input and writes it both as standard output and to the file ( /etc/apt/trusted.gpg.d/bullseye-vivaldi.gpg )
  • /dev/null avoid displaying the binary key on standard output

The Vivaldi keyring file in the trusted.gpg.d directory ( as desidered )

You can also use wget to download the key

wget --quiet -O - https://repo.vivaldi.com/stable/linux_signing_key.pub | 
gpg --dearmor | 
sudo tee /etc/apt/trusted.gpg.d/bullseye-pgdg.gpg > 
/dev/null 

To view the key in plain text just use the first part of the command:

wget -O- https://repo.vivaldi.com/stable/linux_signing_key.pub

-----BEGIN PGP PUBLIC KEY BLOCK----- mQINBF3Kxh8BEACWWRSZLDXqxs+iqzdFv/rNOaHMmOm740ZLa1rovnJXhJ6ygcyp dP+FNGjqz1s+FfKhrUuhnr8jKzAsIXZrEN/bD3M4qdKmb+I8UCvJqOWoDSXm2Ksl uTgI5AOwgloxYFZ6SIOHe6Du1NDJh5XR/tx+ts8WZ8OstjrqCLADxmh+hGIIzJ+G 
...
...

below it is the warning about Vivaldi’s apt repository in debian bullseys (debian 10 testing) using apt-key. The warning that occurs when launching apt update is reported in full..

...
...
W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: http://repo.vivaldi.com/stable/deb stable Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 793FEB8BB69735B2
W: Failed to fetch http://repo.vivaldi.com/stable/deb/dists/stable/Release.gpg  The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 793FEB8BB69735B2
W: Some index files failed to download. They have been ignored, or old ones used instead.
...
...

The warning is also preceded by the following error line :

Err:11 The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 793FEB8BB69735B2

Risorse:

Handbrake 1.3.3.x in debian 10 – video transcoder – installazione con compilazione

Hanbrake logo

HandBrake: Open Source Video Transcoder, apprezzato programma multipiattaforma (Linux, Windows, MacOS) per la trascodificata video, attualmente è giunto alla versione 1.3.3 ( 16/06/2020 )
Per chi utilizza debian 10 stable il pacchetto disponibile è la versione 1.2.2 così descritto:

Package: handbrake (1.2.2+ds1-1)
strumento versatile per estrazione di DVD e transcodifica di video (GUI GTK+) 

HandBrake è uno strumento versatile e facile da usare per convertire DVD e altri video in oggetti multimediali in formato H.264, XViD o Ogg. È particolarmente utile per creare video che sono compatibili con dispositivi video portatili, come gli iPod/iPhone Apple o la PSP Sony.
Questo pacchetto contiene la variante grafica, ghb.

Da tempo per chi usa Ubuntu è possibile utilizzare l’ultima versione di handbrake grazie  il ppa  stebbins Packages in “HandBrake Releases” : HandBrake Releases : John Stebbins. Per chi utilizza Debian 10 propongo l’installazione passando per la compilazione.

Installare l’ultima versione di Handbrake in Debian 10.x da terminale

La procedura di compilazione di handbrake in Debian 10 è descritta compiutamente in due pagine del sito handbrake https://handbrake.fr/docs/en/latest/developer/install-dependencies-debian.html qui viene riportata in un unico post.

Prima fase predisporre debian per la compilazione installando tutte le dipendenze necessarie. In fondo al post l’elenco dei comandi e dei pacchetti

Installare le dipendenze per Debian 10 Buster:

sudo apt-get update
sudo apt-get install autoconf automake build-essential cmake git libass-dev libbz2-dev libfontconfig1-dev libfreetype6-dev libfribidi-dev libharfbuzz-dev libjansson-dev liblzma-dev libmp3lame-dev libnuma-dev libogg-dev libopus-dev libsamplerate-dev libspeex-dev libtheora-dev libtool libtool-bin libturbojpeg0-dev libvorbis-dev libx264-dev libxml2-dev libvpx-dev m4 make meson nasm ninja-build patch pkg-config python tar zlib1g-dev

Attenzione che siano installati i pacchetti meson e nasn dipendenze specifiche per buster

sudo apt-get install meson nasm


Per installare con il supporto Intel Quick Sync Video, installare le dipendenze QSV.

sudo apt-get install libva-dev libdrm-dev

Per disporre dell’interfaccia grafica GTK (GUI), è necessario installare le dipendenze grafiche.

sudo apt-get install intltool libappindicator-dev libdbus-glib-1-dev libglib2.0-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgtk-3-dev libgudev-1.0-dev libnotify-dev

e

sudo apt-get install libwebkit2gtk-4.0-dev || sudo apt-get install libwebkitgtk-3.0-dev

Adesso che tutte le dipendeze sono disponibili è possibili scaricare il repository handbrake presente su git e procedere alla compilazione:

clonare il repository Handbrake con

git clone https://github.com/HandBrake/HandBrake.git 

cd HandBrake

personalmente ho fatto qualcosina di un po’ più radicale utilizzando la directory /opt ma non è necessario

Le fasi per la compilazione installazione sono le solite:

./config             #   .1 
make                 #   .2
make check           #   .2b  ( per controllare la compilazione )
sudo make install    #   .3   ( per installare ) 

config può essere lanciato con alcune opzioni. Questo il comando base:

./configure --launch-jobs=$(nproc) --launch

Se si desidera il supporto per Quick Sync Video aggiungere l’opzione

--enable-qsv

Per disporre di handbrake da sola linea di comando disabilitare l’interfaccia grafica appendendo l’opzione

--disable-gtk

Lanciato ./config avremo nella directory Handbrake il comando da terminale HandBrakeCLI

Se compilato con l’interfaccia grafica come in questo caso avremmo la handbrake GUI ghb in Handbrake/gtk/src

L’installazione è opzionale e può essere eseguita secondo tradizione con

sudo make --directory=build install

Per ricompilare rimuovere la directory  build con:

rm -rf build

Per avviare Handbrake da terminale si deve digitare un acronimo derivato da handbrake-gtk.

:~$ ghb

Sources:

  • I files multimediali più comuni che le librerie libavformat e libavcodec supportano.
  • Quasiasi DVD o Bluray-like che non sia “copy-protected”. (la rimozione della protezione della copia non è supportata)

Outputs:

  • Formato files contenitore  : MP4(M4V),  Matrosca (MKV) e WebM
  • Video: H.264(x264), MPEG-4(ffmpeg), MPEG-2(ffmpeg), or Theora(libtheora)
  • Audio: AAC, CoreAudio AAC/HE-AAC (OS X Only), MP3, Flac, AC3, or Vorbis. AC-3, DTS, DTS-HD, AAC and MP3 pass-thru

Handbrake documentazione

Utilizzare handbrake

Alcune brevi considerazioni

Format:  I containers disponibili sono Matroska ( MKV ) e MP4 ( M4) e WebM

Convertire file .m4v in mp4

Se il codec video utilizzato è H264 il formato m4v può essere convertito nel più classico e diffuso .mp4 semplicemente rinominado l’estensione. In questo modo semplici NAS e media player potrebbero essere agevolati nello streaming del file multimediale.

Handbrake in genere non necessità di particolari impostazioni basta selezionare uno dei profili di destinazione tra i molti disponibili è premere il pulsante Start per avviare la conversione del file.

Handbrake 1.3.3 Presets e Pannello Video per la personalizzazione

Presets: Sulla destra sono disponibili i diversi presets suddivisi in 3 categorie General, Web, Devices, Matroska e Production.

Benchè le impostazioni di default rappresentani in genere un ottimo tra qualità e dimensione del file ci sono diversi pannelli e schede per personalizzare la conversione.

Disponibile anche la funzione Preview.
Nella scheda Dimension è disponible anche la funzione cropping.

Filter: La scheda filter consente di deinterlacciare un eventuale video interlacciato.

Video: la scheda consente di variare il video encoder oltre ad H.264 sono disponibili mpeg-2 e – mpeg-4 e VP3 Theora e di regolare il livello di compressione.

Audio: la scheda consente di agire per ogni traccia audio è possibile modificare l’encoder  e la qualità agendo su compressione  ( bitrate  ) e Mix.

Le altre schede disponibili rigurdano i Sottotioli, i Capitoli e i Tags.

Dipendenze:

  • autoconf
  • automake
  • build-essential
  • cmake
  • git
  • libass-dev
  • libbz2-dev
  • libfontconfig1-dev
  • libfreetype6-dev
  • libfribidi-dev
  • libharfbuzz-dev
  • libjansson-dev
  • liblzma-dev
  • libmp3lame-dev
  • libnuma-dev
  • libogg-dev
  • libopus-dev
  • libsamplerate-dev
  • libspeex-dev
  • libtheora-dev
  • libtool
  • libtool-bin
  • libturbojpeg0-dev
  • libvorbis-dev
  • libx264-dev
  • libxml2-dev
  • libvpx-dev
  • m4
  • make
  • meson
  • nasm
  • ninja-build
  • patch
  • pkg-config
  • python
  • tar
  • zlib1g-dev

Dipendenze per QSV ( Intel Quick Sync Video dependencies ) (opzionale):

  • libva-dev
  • libdrm-dev

Dipendenze per l’interfaccia Grafica:

  • intltool
  • libappindicator-dev
  • libdbus-glib-1-dev
  • libglib2.0-dev
  • libgstreamer1.0-dev
  • libgstreamer-plugins-base1.0-dev
  • libgtk-3-dev
  • libgudev-1.0-dev
  • libnotify-dev
  • libwebkit2gtk-4.0-dev (libwebkitgtk-3.0-dev for Debian 9)

Risorse:

youtube-dl rilasciata nuova versione v2020.05.29 – linux debian 10

Quando si effettua il download di un video con youtube-dl può verificarsi che lo stesso non vada a buon fine:

ERROR: No video formats found; please report this issue on https://yt-dl.org/bug

oppure si presenti un errore come:

ERROR: "token" parameter not in video info for unknown reason; Make sure you are using the latest version; see https://yt-dl.org/update on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

Come si legge nel messaggio accertarsi di disporre dell’ultima versione del programma.  Visti i continui cambiamenti in youtube questa è l’unica soluzioni per disporre di una versione di youtube-dl efficace.

In debian 10 .xx ad esempio la versione presente nei repository e del gennaio 2019.

# youtube-dl --version
2017.05.18.1
# whereis youtube-dl 
youtube-dl: /usr/bin/youtube-dl

Youtube-dl si basa su Python e non è piattaforma specifico può funzionare anche su Windows e Mac OS X Le instruzioni per il download dell’ultima versione sono reperibili alla pagina  http://ytdl-org.github.io/youtube-dl/download.html.

Per effettuare il download di un con youtube-dl file è sufficiente specificare il solo parametro dopo il v=dqySSABrF0M

youtube-dl dqySSABrF0M

Visto che si tratta di un singolo file, se si desidera conservare la vecchia del repository ufficiale, si può utilizzare un nome diverso per l’ultima versione  ( last) ad esempio youtube-dll

Effettuare il download da terminale con curl oppure wget la directory di destinazione consigliata è /usr/local/bin in nome è leggermente cambiato in youtube-dll

# sudo curl -L https://yt-dl.org/downloads/latest/youtube-dl -o /usr/local/bin/youtube-dll

# sudo wget https://yt-dl.org/downloads/latest/youtube-dl -O /usr/local/bin/youtube-dll

conferire i permessi per di esecuzione

chmod a+rx /usr/local/bin/youtube-dll

per controllare versione e posizione del nuovo comando

# youtube-dll --version
2020.05.29
# whereis youtube-dll 
youtube-dll: /usr/local/bin/youtube-dll 

La quantità di opzioni disponibili è veramente elevata.
Digitare youtube-dl –help
Per ssemplificarsi la vita è visualizzare i comandi per scaricare solo la parte audio si può utilizzare un comando come:

youtube-dl --help| grep audio  
$ youtube-dl --help | grep audio
bestvideo+bestaudio), output to given
-x, --extract-audio Convert video files to audio-only files
--audio-format FORMAT Specify audio format: "best", "aac",
--audio-quality QUALITY Specify ffmpeg/avconv audio quality, insert
--embed-thumbnail Embed thumbnail in the audio as cover art

Quindi per effettuare il download della sola componente audio digitare:

youtube-dll -x --audio-format mp3 FlIM08m_HhU

python : No such file or directory

Altro errore che si può presentare è la mancata individuazione di python su cui si appoggia youtube-dl

/usr/bin/env: 'python': No such file or directory

per verificare l’impossiblità di trovare python è sufficiente verificare con

$ which python

Visto l’errore non ci sarà un risultato positivio. Se ricerchimo python3 molto probabilmente la ricerca avrà esito positivo e sarà del tipo sotto riportato

$ which python3 
/usr/bin/python3

Se la situazione è questa per risolvere è sufficiente creare un soft link con ln

sudo ln -s /usr/bin/python3 /usr/bin/python

Dettagli Error youtube-dl

# youtube-dl https://www.youtube.com/watch?v=F2s8U9p-ej4
F2s8U9p-ej4: Downloading webpage
F2s8U9p-ej4: Downloading video info webpage
ERROR: F2s8U9p-ej4: "token" parameter not in video info for unknown
reason; please report this issue on https://yt-dl.org/bug . Make sure
you are using the latest version; see https://yt-dl.org/update on how to
update. Be sure to call youtube-dl with the --verbose flag and include
its complete output.
Altro errore

ERROR: Signature extraction failed: Traceback (most recent call last)  …
RegexNotFoundError: Unable to extract Initial JS player signature function name; …
in youtube-dl

youtube-dl https://www.youtube.com/watch?v=LYhrYHmUPn
  Setting language
  LYhrYHmUPn0: Downloading webpage
  LYhrYHmUPn0: Downloading video info webpage
  LYhrYHmUPn0: Extracting video information
  LYhrYHmUPn0: Encrypted signatures detected.
  LYhrYHmUPn0: Downloading js player vfljL8ofl
 ERROR: Signature extraction failed: Traceback (most recent call last):
 File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 479, in _decrypt_signature
 video_id, player_url, s
 File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 383, in _extract_signature_function
 res = self._parse_sig_js(code)
 File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 454, in _parse_sig_js
 u'Initial JS player signature function name')
 File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/common.py", line 391, in _search_regex
 raise RegexNotFoundError(u'Unable to extract %s' % _name)
 RegexNotFoundError: Unable to extract Initial JS player signature function name; please report this issue on https://yt-dl.org/bug . Be sure to call youtube-dl with the --verbose flag and include its complete output. Make sure you are using the latest version; type youtube-dl -U to update.
 ; please report this issue on https://yt-dl.org/bug . Be sure to call youtube-dl with the --verbose flag and include its complete output. Make sure you are using the latest version; type youtube-dl -U to update.

Risorse:

Come determinare l’Harware del pc in Linux – Programmi ad interfaccia grafica

Linux mette a disposizione diversi strumenti per conoscere i dispositivi hardware presenti in un computer. Anche se il terminale la fa da padrone esistono alcuni strumenti ad interfaccia grafica che consentono di ottenere queste informazioni in modo decisamente più amichevole.

Per un elenco dei programmi e dei comandi da terminale che consentono di determinare l’hardware di un computer si può fare riferimento alla pagina del blog: Come determinare l’hardware del pc – linux

Per quanto riguarda i sofware ad interfaccia grafica hardinfo è probabilmente il programma di riferimento per quanto attiene alle informazioni di un sistema linux .
In XFCE è disponibile in System alla voce System Profile and Benchmark.

hardinfo – System Profiler and Benchmark

In fondo al post informazione aggiuntive su questo storico applicativo.
Esistono comunque anche altri applicativi interessanti che gli utenti meno smaliziati potranno utilizzare ed apprezzare per determinare e controllare l’hardware del sistema in un pc/notebook linux. Fra tutti Cpu-X se non altro perchè cerca di essere l’equivalente su linux del noto programma gratuito windows CPU-X di CpuID .

CPU-X

CPU-X come detto vuole essere una trasposizione per linux del noto CPU-Z. CPU-Z è un software aggiornato di frequente per far fronte al rilascio di nuovi processori che oltre ad informazioni dettagliate sulla cpu, fornisce informazioni su chipset, motherboard, memoria e anche una sezione di benchmark. Il look essenziale è invariato da anni. Di sequito di seguito un confronto dei dati forniti dai due programmi quello per windows 10 CPU-Z ver 1.9.1.0 e CPU-Z per linux vers 3.2.4. I due programmi sono stati fatti girare sullo stesso pc quello descritto nel post X79-P3 – una motherboard X79 completa ben riconosciuta da Debian 10.xx
Per precisione la versione linux utilizza è la debian-testing 10.x.
Come si può notare il sistema dei tab e analogo le informazioni disponibili non sono proprio le stesse. Ovviamente vista la sua lunga storia CPU-Z è più completo e ricco di informazioni. Comunque anche CPU-X come il suo omologo è in grado di estrarre le informazioni in tempo reale adifferenza di hardinfo. In conclusione CPU-X é un programma che si fa apprezzare perchè ci sono molti dati direi che sono abbastanza coerenti con il suo omologo, i sistem di benchmark è come si può notare nelle immagini in fondo sono diversi.

Per installare l’ultima versione la 3.2.4 di CPU-X che è ospitato in github si può fare riferimento alla pagina

https://github.com/X0rg/CPU-X/releases/tag/v3.2.4

in debian 10 conviene utilizzare la versione portable che può essere scaricata con

$ wget https://github.com/X0rg/CPU-X/releases/download/v3.2.4/CPU-X_v3.2.4_portable.tar.gz

decompressa al solito con

$ tar xzvf CPU-X_v3.2.4_portable.tar.gz

quindi avviare CPU-X con

$ cd CPU-X_v3.2.4_portable  
$ sudo ./CPU-X_v3.2.4_portable.linux64

Per installare CPU-Z in debian testing è sufficiente digitare da terminale

$ sudo apt install cpu-z

La versione corrente di CPU-X la 3.2.4 è del gennaio 2019.
Conviene in genere avviare la versione CPU-X ( Root ) che è disponibile nel menu System di XFCE

Status Pilatus

StatusPilatus è una interessante applicazione open source ad interfaccia grafica. Multipiattaforma è disponibile infatti per mac e win ha un look moderno. E’ in grado di fornire una visione d’insieme del sistema. I dati sui singoli componenti sono piuttosto essenziali mentre è privilegiata la parte relativa al monitoraggio. Applicativo è alla versione 0.5.0 merita comunque di essere provato e mostra interessanti spazi di sviluppo. La pagina per il download è https://github.com/PilatusDevs/StatusPilatus/releases/tag/0.5.0

In debian può essere agevolmente installata scaricando il pacchetto specifico di circa 60MB

wget https://github.com/PilatusDevs/StatusPilatus/releases/download/0.5.0/StatusPilatus_0.5.0_amd64.deb

installazione al solito con

sudo dpkg -i StatusPilatus_0.5.0_amd64.deb

se dovessero mancare pacchetti risovere digitando

$ apt -f install

avvio da terminale con

statuspilatus

in xfce4 si va a posizionare nel menu Office. Situazione un po ‘ stravagente …

Hardinfo

L’ immagine di seguito è uno screenshot di più di 5 anni fa. Questo evidenzia come l’organizazione di questo programma non sia sostanzialmente cambiata nel tempo. La versione disponibile infatti è la 0.6 alpha che risale a qualche anno. Le informazioni in diverse sezioni più complete dei programmi citati in precedenza. Tuttavia ad esempio quelle relative al processore non sono aggiornate in tempo reale come avviene in CPU-X così da consentire di ottimizzare le prestazioni o diagnosticare problemi.

Hardinfo computer summary

Per installare System Profile e BenchMark da terminale si digita:

$ sudo apt install hardinfo 

Per avviarlo da terminale si digita il nome originale preferibilmente utlizzando l’utente root così da avere più informazioni

$ sudo hardinfo

Anche la sezione benchmark di hardinfo è più ricca la sezione.
Comunque in linux sono presenti diversi applicativi specifici completi per avere benchmark completi ad esempio Phoronix Test Suite – rilasciata la versione 9.0 – la piattaforma di test e benchmarking per linux e applicativi per informazioni in tempo reale del sistema sia da terminale che grafiche.

Risorse:

X79-P3 – una motherboard X79 completa ben riconosciuta da Debian 10.xx

Ancora un post dedicato alla realizzazione di una macchina debian linux con motherboard x79. La scheda è la versione con connettore verdi della Jingsha X79 – P3. Rilasciata nella primavera estate del 2019 la P3 è una delle più avanzate X79 cinesi attualmente disponibili.

Oltre alla modalità quad channel per l’accesso alla memoria ( 128 GB max ) che può essere come sempre DDR3 U-DIMM ( pc standard – memorie unbuffered ) o R-DIMM ( server – memoria registered ) con e senza controllo di parità (ECC) abbiamo il supporto ai processori con socket LGA 2011.
Precisamente  Xeon E5 v1 (Sandy-Bridge) e Xeon E5 v2 (Ivi Bridge), Xeon 1600 e Core i7 (sandy Bridge-E) che possono essere facilmente trovati di seconda mano a basso costo. 


La X79-P3 presenta inoltre:

  • ben 3 slot PCI-e x16, 1 slot PCI-e x4 e 1 slot PCI-e x1.
  • connettore NVME con supporto al PCI-e x4 che consente il boot diretto ad alta velocità.
  • 4 USB 3.0
  • modalità di sospensione pienamente funzionante in Windows 10
  • 7.1 audio ( ALC892)
  • Status Code su led display a due caratteri ( video in basso ) .
  • nota di colore abbiamo con un Ambient led rossa sulla sinistra una striscia led con effetto fade ( secondo video sotto).

Il chipset di queste schede è, in genere, il chipset X79 nella versione arancio e C602 nella versione con connettori verdi ( versione in esame ).

Per quanto riguarda il connettore NVME va evidenziata una posizione non proprio felice. Infatti se si usa come “game machine” risulta troppo vicino allo slot per la scheda video. Questo comporta che non può essere utilizzato un NVME con dissipatore. Inoltre l’accesso alla NVME richiede la rimozione obligatoria della scheda video.
Ovviamente si può utilizzando un adattatore e montare NVME su uno slot x16 come si intravede nel video sottostante . La velocità del disco sempre di tutto rispetto. In questo video con gli status code si intravede sul secondo slot PCI-e x16 il disco NVME Sabrent Rocket su adapter NVME MFHK (Adattatore NVME NFHK e Intel SSD 660p in Linux )

CONTRO:
Seppur ben confezionata non si può non evidenziare che oramai tutte queste schede vengono spesso fornite senza manuali e senza disco driver.
Trattandosi comunque di una tecnologia con qualche annetto alle spalle in genere sia Windows che Linux riconoscono tutto senza problemi e possibile comunque anche installare driver specifici per Windows. In fondo al post alcuni link eventualmente utilizzabili.

Anche se manca il manuale i vari componenti e connettori sono facilmente individuabili nello schematico sopra riportato.

Questa la versione con connettori arancio la prima rilasciata con il logo Jingsha in evidenza. La versione con connettori in verde non evidenzia particolari differenze a libello di piastra madre. Come già evidenziato il chipset può variare da X79 chipset per desktop C602 per server.

La scheda madre x79 in oggetto, ha stampato sulla piastra X79-P3 v: 1.0.
Da un punto di vista estetico ricorda un po’ la Huananzhi X79 Deluxe è probabile che sia realizzata negli stessi stabilimenti. Però dal lato pratico ci sono importanti differenze inoltre ed è più economica.

Sospensione

Perchè la sospensione in Windows 10 si attivi correttamente conviene impostare a livello di Bios “ACPI sleep state parameter” su “S3 only”.

bios-300x163

In generale nelle motherboard X79 cinesi qualora la sospensione dia problemi conviene controllare che tastiera e mouse non siano collegate a connettori USB 3.0.  Conviene in questi casi utilizzare i connettori USB 2.0 per tastiera e mouse.

Sensori temperatura

Ecco finalmente una X79 cinese con il sensore per la temperatura della motherboard nativamente funzionante.

A voler essere proprio “precisini” dopo ibernazione il sensore della MB potrebbe non riportare il valore correttamente.

Window 10 e Jinghsa X79-P3

Di seguito alcuni report con la scheda la X79-P3 e Windows 10.
Di seguito i dati di test con processore Xeon E5-2630L V2, disco Rocket NVME Sabrent da 256 GB e una scheda grafica XFX RX 580 con 8 GB.

Scheda sotto stress Con OCCT si nota la Cpu al 100% e nessun errore rilevato

X79-P3 sotto stress con OCCT V.5.5.3

Di seguito le performance CrystalDiskMark del NVME Sabrent Rocket da 256GB installato sul secondo connettore PCI x16

Sabrent Rocket 256GB – DiskMark

Linux e Jingsha X79-P3

Debian

L’installazione con Debian 10  non evidenzia problemi e l’unità NVME è ben riconosciuta come disco di avvio.

La scheda madre x79 in oggetto, ha stampato sulla piastra X79-P3 v: 1.0.

Chipset riconosciuto

lshw | grep chipset
product: C600/X79 series chipset PCI Express Virtual Root Port
....

CPU-X portable – CPU-Z per linux ( quasi )

Phoronix benchmark

Test sommario con phoronix Unigine Heaven v4.0.
Il risultato è migliorabile anche perchè il test è stato avviato con altre applicazioni attive.

phoronix-test-suite run unigine-heaven
X79-P3 Phoronix Unigine-Heaven

Breve video con Unigine-Heaven v.4.0. Modalità windows.

Avvio del test con

phoronix-test-suite run unigine-heaven

Per quanto attiene ai consumi ovviamente si passa da 85 Watt 225- 250 watt

Linux disco SSD NVME

In Debian 10 testing la velocità del disco SSD NVME è in linea con quanto registrato da CristalDiskMark in Windows 10

Dettagli della configurazione di test:

Dettagli del sistema testato.

Il sistema è stato assemblato utilizzando hardware usato o già a disposizione. Nuova la sola mortherboard.

  • Motherboard x79-P3 V.1.0 LGA 2011 ( circa 83 Euro Amazon )
  • CPU: Intel Xeon E5-2630L V26 core CPU ( usato )
    Dissipatore : ARCTIC Alpine 20 CO
  • RAM: 32GB DDR3 1333 R-DIMM ECC Samsung
  • Scheda Video XFX AMD RX580 8GB
  • SSD NVME Sabrent Rocket 256GB
  • Sistema Operativo: Debian 10 testing
  • Alimentatore da 460 Watt
  • Nessun overclock

Dettagli del sistema grazie ad inxi

# inxi -Fxz
Specifiche del sistema basato sulla X79-P3 utilizzando inxi

System information via phoronix suite

# phoronix-test-suite system-info

I vari tipi di memoria sono descritti sinteticamente nel post:  Memorie DIMM SDRAM DDR: U-DIMM, U-DIMM ECC, R-DIMM, R-DIMM ECC.

Come già evidenziato nessun problema nell’installazione di Debian se non la necessità di installare i soliti driver non free per la scheda di rete  firmware-realtek_0.43_all.deb.  Ubuntu non dovrebbe richiedere neppure questo mettendo da subito a disposizione anche i driver non free.

Caratteristiche della scheda:

  • Chipset: C602/X79 
    Product Name: X79-P3
  • Cpu:  Xeon E5 1600 e 2600 V1 e V2 , core i7 Sandy Bridge-E
  • BIOS: American Megatrend v 4.6.5  data 10/29/2019
  • Memory4 x 240pin DDR3 1333/1600/1866 , quattro canali, capacità massima dichiarata 64 GB
  • PCI Express:
    • 3 x PCI Express x 16 supporta schede grafiche PCI 3.0,
    • 1 x PCI Express  x  4
    • 1 x PCI Express  x  1
  • LAN:  RTL 8111el   Realteck 10/100/1000 LAN
  • SATA:
    • 1 x NVME ( PCI-e x4 @3.0)
    • 2 x SATA 3.0
    • 4 x SATA 2.0
  • Audio: Realteck ALC6892 7.1 Channel
  • USB: 4 x USB 3.0 ( + su chassis ) ,  4 x USB 2.0 ( + remote su chassis)
  • 1 x CPU Fan ( 4pin ) , 1 x case fans
  • 1 x RS232
  • I/O connectors:
    • 1 Ps/ 2  Keyboard
    • 1 Ps/2 Mouse
    • 1 RJ45  Giga LAN Realteck
    • 4 x USB 3.0
    • 2 x USB 2.0
    • audio:  input/output/mic
    • 7.1 Channel Audio
    • Ovviamente mancano connettori per display
  • Dimensioni: 305 mm x 220mm ATX
  • Brand: Non indicato

Processori supportati

Elenco parziale da aggiornare …

Processori: i7 Core

i7 3820,  i7 3930K,  i7 3960x,  i7 3970x, i7 4820K, i7 4930k, i7 4960x e altri

Processori: Intel Xeon

Xeon v1 ( Sandy Bridge ) e Xeon v2 ( Ivi Bridge )  E5-16xx, E5-26xx, E5-46xx

Elenco esemplificativo di processori Xeon supportati :

 Xeon V.1Xeon V.2
 Xeon E5-1620Xeon E5-1620 v2
 Xeon E5-1650Xeon E5-1650 v2
 Xeon E5-1660Xeon E5-1660 v2
Xeon E5-1680Xeon E5-1680 v2
 Xeon E5-2603 v2
 Xeon E5-2620Xeon E5-2620 v2
 Xeon E5-2628L v2 (basso consumo)
Xeon E5 2630Xeon E5-2630 v2
Xeon E5-2630L ( basso consumo )Xeon E5-2630L v2
 Xeon E5-2637 v2
Xeon E5-2640Xeon E5-2640 v2
Xeon E5-2643Xeon E5-2643 v2
 Xeon E5-2648L v2 (basso consumo)
Xeon E5 2650Xeon E5-2650 v2
Xeon E5 2658 ( usato per il test ) Xeon E5-2658 v2
 Xeon E5-2660Xeon E5-2660 v2
 Xeon E5-2667Xeon E5-2667 v2
 Xeon E5-2670Xeon E5-2670 v2
 Xeon E5-2680Xeon E5-2680 v2
Xeon E5-2687W 
 Xeon E5-2690 v2
 Xeon E5-2695 v2
 Xeon E5-2697 v2
  
Xeon E5-4603 
Xeon E5-4616 
Xeon E5-4640 
Xeon E5-4650 
Xeon E5-4616 

Xeon E5-2630 V2

La cpu Xeon E5-2630L è una cpu a 6 core 12 thread di discreta potenza con consumi come riportato tutto sommato contenuti.

Esempio di test phoronic

Nel corso del test phoronic Smallpt   i consumi massimi del pc sono stati 140 W .  Consumi in idle circa85W.   Nmon evidenzia come tutte le unità di calcolo della cpu XEON siano al 100% nel corso del test.

# phoronix-test-suite benchmark smallpt

Molte sono le CPU Xeon E5-xxxx v1 e v2 rilasciate e che conseguentemente si possono acquistare usate in rete.
Per un computer versatile un processore interessante è senz’altro E5-2650 V2 8 core 95Watt ( 50 euro ) .
Per un computer da gioco privilegiare le cpu con elevate performance per Single Thread praticamente quella con più alta frequenza e magari che supporti l’overclock E5-1620 .
Per un home server vale la pena considerare anche i consumi le versioni a basso consumo marcate L non sono molte. Il TDPdi  65W le rende  decisamente interessanti. Per confrontare le prestazioni in base ai Watt spesi il sito cpubenchmark ha un interessante tabella riepilogativa
https://www.cpubenchmark.net/CPU_mega_page.html

Nell’elenco le CPU sono ordinate per Power performance

Risorse:

Your IP address has changed. Please log in again – cPanel

Se accedendo a cPanel si incorre nell’ errore

Your IP address has changed. Please log in again

che rende impossibile l’utilizzo di cPanel.
Lo screenshot evidenzia l’errore ottenuto utilizzando il browser chrome ver. 79.xx con Debian 10 stable.

cPanel Your ip has changed – Browser Chrome 79.xx – Debian 10

Significa che si sta con tutta probabilità utilizzando una connessione che cPanel non considera sufficientemente sicura ad esempio per cambi troppo frequenti nel numero ip assegnato dal provider quando si accede ad internet.

Esistono diverse soluzioni al problema per quanto mi riguarda consiglio di di utilizzare un browser come il TOR-browser. Il browser in questione usando la rete TOR che ha ip di uscita adeguatemente stabili non creerà incertezze a cPanel sul numero ip con il quale viene raggiunto
Questa è anche un’occasione per fare pratica con un browser che ha il vantaggio di consentire la navigazione anonima ( quasi). Il TOR-browser basato su firefox paga solo il pegno di una navigazione più lenta tuttavia in una rete in cui oramai tutto è ultra tracciato e controllato un po’ di pratica con un interessante browser anonimizzante può essere utile.

Tor Browser
Tor Browser 9.xx


Ecco la pagina main di cPanel disponibile grazie a TOR Browser. La connessione utilizzata è la stessa che provocava l’errore con il browser chrome mostrata a inizio pagina.

cPanel 11 Main Page – accesso utilizzando TOR Browser 9.xx

Alcune diverse alternative per risolvere il problema :
– farsi assegnare e quindi utilizzare un IP statico,
– disattivare o farsi disattivare il controllo di sicurezza
basato sulla “cookie IP validation”
– cambiare ISP … direi eccessivo 🙂
– a pensarci bene ritengo che anche un tunnel ssh utilizzando un server pubblico

Risorse:

Installare Arduino IDE 1.8.12 64 bit in linux debian.

Prendo spunta da una domanda sul blog per realizzare questo post in cui posso descrivere in modo più chiaro come installare Arduino IDE da terminale in linux. Il post è volutamente retrodatato al periodo di rilascio della versione 1.8.12 che risale a febbraio 2020.
La versione Linux presa in considerazione è la debian 10 stable.
Ulteriore precisazione in questa versione sto usando AdopOpenJDK 1.8.0.252 cioè 8 LTS piuttosto che java 11 LTS default di debian 10. Per programmi che utilizzo che si comportano meglio con la 8 piuttosto che con la 11.
Uso la AdoptOpenJDK per i cambi operati da Oracle nel modello per il rilascio delle versioni Java e la licenza associata. E’ da tanto che ho iniziato a scrivere il post sull’utilizzo AdoptOpenJKD ma non lo ho ancora completato. Il blog ha molti post dedicati all’installazione manuale di Oracle Java una volta i file erano scaricabili liberamente adesso è richiesta la registrazione e allora ho cambiato. La AdoptOpenJDK.net community include vendors quali Amazon, GoDaddy, IBM, Microsoft …

$ java -version
openjdk version "1.8.0_252"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_252-b09)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.252-b09, mixed mode)

Installazione di Arduino IDE 64 in debian 10

Arduino IDE al primo avvio

Scaricare l’Arduino IDE dalla pagina software: https://www.arduino.cc/en/main/software

Sulla destra il link Linux 64 bit

quello che viene scaricato è il file:

arduino-1.8.12-linux64.tar.xz

creare la directory /opt/arduino e copiarvi il file

sudo mkdir /opt/arduino
sudo cp arduino-1.8.12-linux64.tar.xz /opt/arduino/

cambiare directory e decomprimere

cd /opt/arduino
sudo tar -xvf arduino-1.8.12-linux64.tar.xz

installare con

cd arduino-1.8.12
sudo ./install.sh

la directory dell’ Arduino IDE sarà:

/opt/arduino/arduino-1.8.12

verrà creato il link simbolico: /usr/local/bin/@arduino

Arduino IDE menu XFCE

Risorse:

Utilizzare Debian in Windows 10

Windows 10 da la possibilità di utilizzare la bash linux e diversi applicativi da terminale. Attivato il Sottosistema Windows per Linux è possibile installare dal Microsoft Store l’ App linux desiderata. Nel post la procedura per l’installazione di Debian in Windows 10 .

Se si prova ad installare Debian senza il Sottosistema Windows per Linux si ottiene l’errore seguente:

Installing, this may take a few minutes…
WslRegisterDistribution failed with error: 0x8007019e
The Windows Subsystem for Linux optional component is not enabled. Please enable it and try again.
See https://aka.ms/wslinstall for details.
Press any key to continue…


Per poter utilizzare Debian, Ubuntu e altre distro linux seguire i seguenti passaggi, che prevedono l’attivazione della modalità Sviluppatore, l’installazione del Sottosistema Windows per Linux, e l’installazione dell’App Debian:

Attivare la modalità Sviluppatore/Developper

Attendere l’installazione del pacchetto Modalità sviluppatore

Abilitare il Sottosistema Windows per Linux in Attivazione o disattivazione delle Funzionalità Windows come visualizzato nelle figure che seguono

Installazione Sottosistema Windows per Linux

Installato il sottosistema Windows per Linux è necessario riavviare il computer:

Riavvio richiesto dopo installazione del Sottosistema Windows per Linux
Attivazione o disattivazione delle funzionalità di Windows 10

Al riavvio una volta lanciato Debian si avrà a disposizione la bash linux per il login. Inserire lo username e la password desiderata

Primo login in Debian Windows 10

E dopo un bel update tradizionale con

sudo apt update

procedere con l’installazione dei pacchetti. In questo caso il client openssh

installazione di pacchetti Debian Linux da terminale in Windows 10

E’ possibile avviare più Applicazioni Debian. Sotto due finestre una con il classico mc. Si possono osservare le cartelle disco c che viene montato in /mnt/c automaticamente.

due app Debian Linux in Windows 10

Nell’immagine seguente una connessione Desktop remoto che utilizza un tunnel realizzato con openssh-client utilizzando proprio la bash debian di Windows 10.

Il questo caso il tunnel consente la connessione a un server remoto Windows 2012R .

tunnel ssh in windows 10 con openssh App Debian

Bash Linux non si avvia

Purtroppo può succedere che la bash linux non si avvi come evidenziato nella schermata seguente:


La soluzione più semplice per rivolvere consiste riavviare tenendo premuto il tasto maiuscolo ( SHIFT+Reboot). Questo permette di realizzare un restart completo di Windows 10 ( FULL reboot). Infatti la normale azione di spegnimento/riavvio per velocizzare l’avvio di windows conserva informazioni dell’ultima sessione e questo può causare il mancato avvio della bash linux.
Per completezza è bene precisare che usando Riavvio/Spegni tenendo premuto il tasto MAIUSC si entrerà in modalità di mantenimento. A questo punto si potra scegliere:
1) Spegni il PC e riavviare normalmente
oppure
2) Continua (Esci e continua con Windows 10 )


Risorse disponibili in
https://github.com/Microsoft/WSL/issues/849
altri materiali documento Microsoft:
https://docs.microsoft.com/en-us/windows/wsl/troubleshooting#installation-issues-after-windows-system-restore

Risorse:

Adattori USB type C femmina e USB 3.0 maschio per Hub USB type C multifunzione – velocità a 5 Gbps

Orami si possono acquistare a prezzi interessanti diversi Hub tipo C multifunzione che oltre a porte Usb 3.0, presentano lettori SD e TF, porta Ethernet, HDMI 4K e porta di ricarica.
Questi dispositivi sono particolarmente utili quando si utilizzano ultrabook con poche porte o MacBook.

Per poterli utilizzare anche come hub per porte USB 3.0 è necessario dotarsi di un adattore specifico.

Type-C female
USB3.0 male

L’adattore avrà porta USB type C di tipo femmina e una porta USB 3.0 di tipo maschio.

Adattatori USB type C femmina e USB 3.0 maschio

Purtroppo per la struttura di questi adattatori la porta femmina consente di ottenere la velocità di 5 Gbit/s USB 3.0 solo su un lato mentre l’altro lato consente la sola velocità USB 2.0 480Mbps. Del resto USB Type-C (USB-C) è uno standard di connettori ed è compatibile con le versioni USB 3.1, 3.0 e anche 2.0 . Di fatto il Tipo-C è una sostituzione dei precedenti standard Tipo-A e Tipo-B.

Nel grafico l’adattatore collegato con il lato USB-C ottimale. La velocità di lettura e scrittura di una chiavetta Samsung Muf USB 3.0 da 128GB risulta di tipo massimale.

Benchmark Lettura Scrittura su pendrive samsung 128GB Connettore Hub lato 3.1

Se si ruota il cavo Type C del hub di 180° gradi la velocità passa a USB 2.0 con un degrado consistente delle prestazioni.

rotazione Type C di 180°

Come si può vedere dal benchmark le prestazioni in lettura e scrittura della pendrive Samsung 128 diventano proprio quelle di una classica chiavetta USB 2.0.

Benchmark Lettura Scrittura su pendrive samsung 128GB Connettore Hub lato 2.0

In questo caso l’adattore Type C female – USB 3.0 male si comporta come l’adattore Tipo-C femmina e USB 2.0 maschio in basso. Questo adattatore Type-C risulta essere anche decisamente più contenuto in dimensioni e più economico.

Adapter USB C Fem. – USB 2.0 Male

L’hub multifunzione nelle immagini è un iHarper6in1.
Lo stesso comportamento si ottiene anche con altri hub ad esempio il multifunzione Abask 8in1

Abask hub multifuzione 8 in 1

Benchmark lettura scrittura della pen Samsung 128GB con lato Type-C femmina connettore del hub multifuzione Abask 8in1.

Hub Type-C 8in1  con HDMI 4K, Porta Ethernet RJ45, 3 Porte USB 3.0, Lettori SD e TF, Porta di Ricarica PD da 100W

Benchmark Lettura Scrittura su pendrive samsung 128GB – Connettore Hub Abask lato 3.1

Rotazione di 180° gradi del connettore Type-C del hub 8in1 e passaggio alla velocità USB 2.0. Con drastico degrado delle prestazioni che scendono a 480 Mbps

Benchmark Lettura Scrittura su pendrive samsung 128GB – Connettore Hub Abask lato 2.0

Un ultimo test con un Hub Type-C BCMaster. Un semplice Hub con 4 porte 3.0 stesso risultato dei benchmark

Velocità ottimale 5Gbps

Rotazione del connettore e velocità a 480Mbps

Connettore USB

Di seguito caratteristiche tecniche, piedinature, dei connettori USB 1.0, USB 2.0, USB 3.0, USB 3.1, USB type C.

https://de.wikipedia.org/wiki/Universal_Serial_Bus

Nome Versione Velocità
Low SpeedUSB 1.00,15 MB/s
Full SpeedUSB 1.01 MB/s
Hi-SpeedUSB 2.040 MB/s
SuperSpeedUSB 3.0
(USB 3.1 Gen 1)
300 MB/s
SuperSpeed +USB 3.1
(USB 3.1 Gen 2)
900 MB/s
USB 3.2
(USB 3.2 Gen 2×2)
1.800 MB/s
Versione Tensione Amperaggio Potenza
Nominale Ammissibile max. max.
USB 1.0 / 1.1
(Low-Powered-Port)
5 V 4,40–5,25 V 0,1 A 000,5 W
USB 2.0
(High-Powered-Port)
4,75–5,25 V 0,5 A 002,5 W
USB 3.0 / 3.1 4,45–5,25 V 0,9 A 004,5 W
USB-BC 1.2
(USB Battery Charging)
1,5 A 007,5 W
USB Type C 3,0 A 015,0 W
USB-PD
(USB Power Delivery)
5, 12 oder 20 V 5,0 A 100,0 W

Dettagli piedinatura connettore USB 3.0

Piedinatura del connettore USB 3.0 Standard-B e USB 3.0 Powered-B

http://www.thesoundmaster.it/pinouts/usb.php

Piedinatura del connettore USB Type C

https://fr.wikipedia.org/wiki/USB_Type-C

USB Type-C pinout.svg

Risultati immagini per connettore USB type C

Evoluzione dei Connettori USB

da PC Professionale

OTG USB On The Go

In condizioni classiche il collegamento USB vede una periferica agire da master/host il computer e la periferica collegata stampante, chiavetta, … da peripheral/slave. In questi casi il master ha il pieno controllo e governa lo slave. Con l’introduzione dell’USB OTG lo scenario è cambiato non esiste più l’esigenza di differenziare i ruoli fissi di master e slave senza l’esigenza di driver specifici.

Più in dettaglio l’USB On The Go (OTG) fa si che un “cavo” con queste specifiche consenta ad una periferica di agire sia da (1) host, cioè da master ( ad esempio un cellulare legge una memoria esterna ) che da (2) peripheral da slave cioè il cellulare si presenta come una memoria se collegato ad un computer esterno. Quindi banalizzando il cavo OTG USB “On The GO” consente di ampliare le funzionalità di connessione di un dispositivo con connettore USB che così può interagire con una molteplicità di periferiche.

Qualsiasi terminale dotato di porta Type C supporta la tecnologia OTG autoalimentata. Praticamente in questo modo uno dispositivo come una smartphone puo agire da mini-computer.

Gli hub usb tradizionali in genere non supportano la modalità OTG e accettano solo dispositivi slave/peripheral slave.

Esempio


Qui se consideriamo una chiavetta USB dual con due connettori: uno micro USB e uno standard USB A 3.0. Per collegarla ad uno smartphone con un connettore type C standard USB 2.0 ( 480Mbit/sec) possiamo utilizzare un cavo USB con connettore di type C da un lato e USB A femmina dall’altro. Se il cavo è OTG lo smartphone avrà la funzionalità di leggere la chiavetta. Ma anche la possibilità, lo smartphone, di presentarsi come una memoria di massa come se fosse una chiavetta verso un computer . (Cioè grazie al cavo OTG potrà svolgere sia la funzione di master che di slave )

Risorse: