Sadržaj:

DragonBoard Com OBD: 12 koraka
DragonBoard Com OBD: 12 koraka

Video: DragonBoard Com OBD: 12 koraka

Video: DragonBoard Com OBD: 12 koraka
Video: Апти Алаудинов обратился к Русскому Народу. 2024, Srpanj
Anonim
DragonBoard Com OBD
DragonBoard Com OBD

Através da leitura do protocolo OBD2 do carro, é possível receber informações do veículo. Upotrijebite DragonBoard 410c começamos a trabalhar neste projeto, e trazemos aqui o caminho detalhado para você reproduzir isso.

Este projeto foi feito em parceria com a #Qualcomm #Embarcados #Linaro #Arrow #BaitaAceleradora que permitiram que tivéssemos acesso aos melhores hardwares, além do contato com os melhores profissionais para doprinosi com o desenvolvimento.

Participaram deste projeto:

Temos total interesse em ajudar você a completedir o seu projeto, então não deixe de entrar em contato conosco!

Za praćenje ovog projekta na engleskom kliknite ovdje:

www.instructables.com/id/DragonBoard-and-OBD2/

A estrutura deste projeto includei os seguintes componentsntes, conforme apresentados na imagem acima:

  • Qualcomm DragonBoard 410c
  • ELM327 Bluetooth OBD2 sučelje
  • USB ključ 3G/4G
  • Carregador Veicular de Inversão de Tensão (110v)

Korak 1: Fazendo O postavljanje Inicial Da DragonBoard 410c

Fazendo O postavljanje Inicial Da DragonBoard 410c
Fazendo O postavljanje Inicial Da DragonBoard 410c
Fazendo O postavljanje Inicial Da DragonBoard 410c
Fazendo O postavljanje Inicial Da DragonBoard 410c
Fazendo O postavljanje Inicial Da DragonBoard 410c
Fazendo O postavljanje Inicial Da DragonBoard 410c

Upotrijebite Qualcomm DragonBoard 410c, pokrenite program za instalaciju za distribuciju Linara do Linuxa, dovršite konfiguraciju do kraja.

Da biste koristili Limaro za DragonBoard, koristite Ubuntu, VirtualBox ili drugi FastBoot, a zatim ga instalirajte na Linux. Potreban vam je ambijentalni Linux za pod-instalaciju.

Za instalaciju Fastboot -a, ili za Terminal da koristite Máquina Virtual Ubuntu, digitalno:

sudo apt-get android-tools-fastboot

  • Para instalar o Linaro, precisamos passar por 2 passos muito importantes:

    • Instalando o BOOTLOADER
    • Ime do arquivo: dragonboard410c_bootloader_emmc_linux-79.zip

      • https://builds.96boards.org/releases/dragonboard410c/linaro/rescue/latest/
      • Retire os arquivos de dentro do ZIP
      • Unos tjestenine:

        cd /NomeDaPasta (caminho da pasta descompactada)

      • Fazer o comando:

        sudo uređaji za brzo pokretanje

      • Odgovor na esperadu:

        (heksadecimalno) fastboot

      • Então digite:

        sudo./flashall

      • Odgovor na esperadu:

        završeno. ukupno vrijeme 1.000 s (sem pogrešaka)

        (greška)

    • Instalando o Sistema Operacional

      • https://builds.96boards.org/releases/dragonboard410c/linaro/debian/latest/
      • Baixar dois arquivos:
      • boot-linaro-stretch-qcom-snapdragon-arm64-20170607-246.img.gz

        Este arquivo é a última versão (Junho/17) e o nome futuro pode ser alterado. Base do nome que você deve buscar é "boot-linaro-NomeDaVersão". Nesta versão o nome é “Stretch” e an anterior foi “Jessie”

      • linaro-stretch-alip-qcom-snapdragon-arm64-20170607-246.img.gz

        Este arquivo é a última versão (Junho/17) e o nome futuro pode ser alterado. Nabavite putem "linaro-NomeDaVersão-alip"

      • Retirar os arquivos de dentro do. GZ
      • Unesite tjesteninu "raiz" em relação aos arquivos compactados

        exemplo: “/Downloads” que é o local onde os arquivos baixados estão

      • Entre com os comandos:

        sudo uređaji za brzo pokretanje

        sudo fastboot flash boot boot-linaro-NomeDaVersão-qcom-snapdragon-arm64-DATA.img

      • Odgovor esperada (lembrando que o tempo pode variar):

        završeno. ukupno vrijeme: 100,00s

  • Priključeni miš, Teclado monitor i TV sa portom HDMI
  • Iskoristiti:

    • Uobičajeno: linaro
    • Senha: linaro
  • Abra sučelje Lxterminal e faça za preuzimanje na popisu atualizações disponíveis dos pacotes instalados:

    sudo apt-get ažuriranje

  • Ostvarite instalação dos pacotes disponíveis usando o código:

    sudo apt-get nadogradnja

Dicas: O Linaro tem um boot extremamente rápido, e uma comunidade bastante angažada para solução de problemas.

Korak 2: Fazendo O GPS Da DragonBoard 410c Localizar Seu Dispositivo

Fazendo O GPS Da DragonBoard 410c Localizar Seu Dispositivo
Fazendo O GPS Da DragonBoard 410c Localizar Seu Dispositivo
Fazendo O GPS Da DragonBoard 410c Localizar Seu Dispositivo
Fazendo O GPS Da DragonBoard 410c Localizar Seu Dispositivo

Comece com a instalação dos aplicativos que servirão de cliente para GPS, sendo eles o GNSS-GPSD, o GPSD e o GPSD-CLIENTS. Faça isso usando o comando:

sudo apt-get install gnss-gpsd gpsd gpsd-clients

Com ele instalado, você precisará rodar alguns comandos para iniciar o aplicativo, são eles:

sudo systemctl start qdsp-start.servicesudo systemctl start gnss-gpsd.servicesudo systemctl start qmi-gps-proxy.service

Leve sua DragonBoard 410c para um local aberto, com visada para o céu, e digite no terminal:

gpsmon –n

Pelos testes realizados, o tempo médio até as informações começarem aparecer na tela, é de cerca de 10 minutes. Isso varia muito za lokalizaciju DragonBoarda, kvantidade de prédios ao seu redor, além de outras barreiras naturais que possam atrapalhar i recepção do sinal do GPS -a.

Para conseguir capturar essas informações e mandar para a núvem, use o código abaixo, alterando ili endereço do seu web stranica:

Korak 3: Instalando O Dongle USB 3G/4G

Instalando O Dongle USB 3G/4G
Instalando O Dongle USB 3G/4G
Instalando O Dongle USB 3G/4G
Instalando O Dongle USB 3G/4G
Instalando O Dongle USB 3G/4G
Instalando O Dongle USB 3G/4G
Instalando O Dongle USB 3G/4G
Instalando O Dongle USB 3G/4G

Existem algumas formas de fazer a DragonBoard 410c accesscess a rede 3G/4G:

  • Instalando um Shield / BreakoutBoard com Modem GSM e utor za SimCard;
  • Koristite Dongle USB 3G/4G;

Za opto projektovanje Dongle USB 3G/4G na Huawei modelu E3272, facilidade de obter este dispozitivo.

Za konfiguraciju modema, você poderá korištenje terminala (com a applicação WVDial), porém o jeito mais fácil é utilizar a própria Interface Gráfica do Usuário (GUI) do Linaro. Faça da seguinte forma:

  • Com o Dongle USB priključak, klip com botão direito no ícone de "redes" no canto inferior direito da tela.
  • "Uredi veze"> "Dodaj"
  • Escolha a opção: "Mobilni širokopojasni pristup"
  • Kliknite "Stvori"

Siga a tela de instalação do operacijski sustav, suglasni sa slikama, konfiguriranje operatora telefona prilagođavanje sim kartice comprado. Para criação deste projeto, use sim Sim Card da Tim (e um modem inicialmente vendido pela Vivo).

Korak 4: Pretvorite DragonBoard 410c Em hotspot / pristupnu točku

Pretvorite DragonBoard 410c Em hotspot / pristupnu točku u WiFi
Pretvorite DragonBoard 410c Em hotspot / pristupnu točku u WiFi
Pretvorite DragonBoard 410c em hotspot / pristupnu točku
Pretvorite DragonBoard 410c em hotspot / pristupnu točku
Pretvorite DragonBoard 410c Em hotspot / pristupnu točku u WiFi
Pretvorite DragonBoard 410c Em hotspot / pristupnu točku u WiFi

Za korištenje DragonBoard 410c kao roteador wifi (prije nego što konfigurirate povezivanje putem interneta), jednostavnije je i jednostavno koristiti sučelje za sustav. Siga os passos abaixo:

  • Clique no botão direito no ícone de “redes” no canto inferior direito.
  • "Uredi veze"> "Dodaj"
  • Escolha i "WiFi"
  • Kliknite "Stvori"

Coloque o nome da rede que você quer criar no campo "SSID" e depois altere o "Mode" para "Hotspot".

Para garantir o funcionamento:

  • Na "IPv4 postavke"
  • Veja se o "Metodi" está marcado como "Podijeljeno s drugim računalima"

Korak 5: Acessando a DragonBoard 410c Por SSH Sem Fio, Utilizando O Hotspot

Pristupite DragonBoard 410c Por SSH Sem Fio, Upotrijebite O Hotspot
Pristupite DragonBoard 410c Por SSH Sem Fio, Upotrijebite O Hotspot

Criamos um jeito de acessar a placa remotamente, Independente da forma que ela esteja conectada, não dependendo de estar próximo a Dragonboard para conectar diretamente à ela, ou ao wifi em que ela esteja conectada. Este é o método de conexão dos servidores Linux i Amazon.

Começamos instalando o Auto SSH, korištenje ili codigo abaixo.

sudo apt-get install gcc make

wget https://www.harding.motd.ca/autossh/autossh-1.4e.tgz tar -xf autossh-1.4e.tgz cd autossh-1.4e./ konfigurirati make sudo make install install

Agora vamos gerar uma chave criptografada com padrão de segurança RSA. Esta chave poslužuju za svaki slučaj, ali za autorizaciju za pristup i instaliranje krajnje točke isključuju bez Linuxa, primaju IP vezu za modem 3G, objektivno su glavni poslužitelji. Na sequência, o código faz a copia da chave para or repositório de chaves confiáveis do Linux, garantindo ainda mais confiança para co coneão.

ssh -keygen -t rsa

scp ~/.ssh/id_rsa.pub korisnik@udaljeni_služitelj:.ssh/ovlašteni_ključevi autossh -M 0 -q -f -N -i /home/pi/.ssh/id_rsa -o "ServerAliveInterval 60" -o "ServerAliveCountMax 3" -R 2222: localhost: 22 korisnik na udaljenom poslužitelju

Molimo vas da promijenite DragonBoard 410c u oblak poslužitelja! / o/

Korak 6: Ligando DragonBoard 410c Ao OBD Do Seu Carro putem Bluetootha - Passo 1/2

Ligando a DragonBoard 410c Ao OBD Do Seu Carro Preko Bluetootha - Passo 1/2
Ligando a DragonBoard 410c Ao OBD Do Seu Carro Preko Bluetootha - Passo 1/2
Ligando a DragonBoard 410c Ao OBD Do Seu Carro Preko Bluetootha - Passo 1/2
Ligando a DragonBoard 410c Ao OBD Do Seu Carro Preko Bluetootha - Passo 1/2

Sučelje de comunicação com os carros é feita através da porta OBD2. A informação que transita nesta porta precisa ser traduzida, e para isso precisamos de um interpretador que trate os dados. Dodatne informacije o hardveru: ELM327 ili STN1170.

Paralelno s projektovanjem, upotrebom ili dispozitivom Bluetooth com čipa na bazi ELM327.

Važno je uzeti u obzir disponibilidadni hardverski hardver koji nije nužno predstavljati u odnosu na ORIGINAL do ELM327. A maior parte disponível está na verziji 1.5, que foi quando ili čip original foi clonado e colocado a venda no mercado. Izvorni čipset sa verzijom 2.2. Evolução deste versionamento traz ao chip mais informações sobre os carros mais novos. É importante sabre disco, pois dependendo dos testes realizados, poderá ou não conseguir obter determinadas informações de veículos mais novos.

De De do do seu dispositivo OBD2 Bluetooth, encontre a porta OBD2 do seu carro. Ela pode estar localizada logo abaixo do volante, no central console ou perto da caixa de fusíveis. O lokalna varijanta bastante entre kao montadoras e modelos. Uma opção para localizar é usar esta ferramenta:

Acesse a DragonBoard 410c com SSH, utilizando seu Notebook (lembrando que agora você está no carro, e não possui mais uma tela para conectar a placa).

Uključite ili isključite OBD2 Bluetooth za umetanje bez povezivanja za Carro, pa sve do pasosa abaixo za ter kontrole za povezivanje bluetooth:

sudo bluetoothctl

pakable on agent on default-agent scan onNeste momento é importante que você copie o MAC Address pois precisará para os próximos passos

Digita:

vjerujte MACADDRESS -u

par MACADDRESS

Niste trenutačno otkrili aparecer uma solicitação za digitalni PIN ili PIN za Bluetooth OBD2.

O PIN PIN je 1234 ili 0000

Após a tela de sucesso de conexão, digitando este comando, você sai do programa controlador to Bluetooth digitando:

prestati

Agora é preciso fazer um "BIND" do dispositivo com a porta serial:

sudo rfcomm vezanje 0 MACADDRESS 1

Para validar o sucesso da operação digite:

ls /dev

A porta “Rfcomm0” deve estar na listi.

Korak 7: Ligando DragonBoard 410c Ao OBD Do Seu Carro putem Bluetootha - Passo 2/2

Ligando a DragonBoard 410c Ao OBD Do Seu Carro putem Bluetootha - Passo 2/2
Ligando a DragonBoard 410c Ao OBD Do Seu Carro putem Bluetootha - Passo 2/2
Ligando a DragonBoard 410c Ao OBD Do Seu Carro putem Bluetootha - Passo 2/2
Ligando a DragonBoard 410c Ao OBD Do Seu Carro putem Bluetootha - Passo 2/2

Objetivo deste passo é garantir o funcionamento da comunicação entre os dispositivos:

ELM327, DragonBoard 410c e Veículo

Baixe i aplicação "Screen" za pregled poruka Porta Serial

sudo apt-get instalacijski zaslon

Porta Serial será usada para envio e Recebimento de Comandos AT unosi DragonBoard 410c ili ELM327.

Para sabre mais sobre Comandos AT, acesse:

ATENÇO:

Tome muito cuidado nesta parte! Todas as informações enviadas para o dispositivo conectado ao carro, poderão ser interpretadas e enviadas ao carro de maneira errada e ocasionar o mal-funcionamento do seu carro! Estude bastante os comandos antes de tentar inovar nos comandos. Recomendamos que siga as instruções abaixo detalhadamente.

Siga a sequência de comandos abaixo para dar início à comunicação:

  • Esta função fará abrir o terminal de comunicação serijski.

    screen /dev /rfcomm0

Assim que o terminal carregar, digite os comandos abaixo nesta sequência (e entenda o que cada um deles faz):

  • Reinicia o dispositivo. Kao što vezes você precisará fazer isso.

    ATZ

  • Liga funcionalidade de quebra de linha nos comandos, facilitando a vizualização.

    ATL1

  • Liga os cabeçalhos dos comandos.

    ATH1

  • Liga o espaçamento entre palavras.

    ATS1

  • Definirajte protocolo de comunicação do carro para “Automático”.

    ATSP0

Teste de comunicação Finale:

  • Digite bez konzole:

    ATI

  • Ele reve renarnar “ELM327 v1.5” ou a versão do ELM do seu dispositivo.
  • Isso prova que o ELM327 está comunicando com a placa sem problemas, e podemos prosseguir.

Dica

Paralelno s aplikacijom "Zaslon" potreban je apertar: Ctrl-A seguido de Ctrl-D

Korak 8: Ligando a DragonBoard 410c Ao OBD Do Seu Carro Usando PyOBD

Ligando a DragonBoard 410c Ao OBD Do Seu Carro Usando PyOBD
Ligando a DragonBoard 410c Ao OBD Do Seu Carro Usando PyOBD

PyOBD é uma biblioteca de Python específica para comunicação com o padrão OBD2 dos veículos. Com ela, podemos extrair diversas informações da rede de comunicação do carro, incluindo dados como velocidade e até mesmo erros da parte elétrica.

Para esta etapa, precisamos garantir que as seguintes bibliotecas estejam instaladas no Linaro da sua DragonBoard 410c:

  • PIP - Gerenciador de módulos do Python

    sudo apt-get install python-pip

  • SetupTools - gestor de arquivos de instalação

    sudo pip install -U pip setuptools

  • Kotač - formatador de arquivos para instalação

    sudo apt-get install python-wheel

  • OBD - biblioteca para interpretação de dados OBD

    sudo apt-get python-obd

  • GPS - biblioteca com dados do gps

    sudo pip instaliraj gps

  • Zahtjevi - módulo de solicitações

    sudo pip zahtjevi za instalaciju

Para sabre je biblioteca de Python está funcionando corretamente, precisamos rodar os comandos:

sudo python

U ovom trenutku, kursor ili terminal ne smiju sadržavati parametre ">>>" koji označavaju program koji podržava Python. Podemos começar a digitar os comandos para serem interpretados conforme abaixo.

  • Comece importando a biblioteca

    uvoz obd

  • Para fazer a conexão com a porta serijska uporaba o comando

    veza = obd. OBD (“/dev/rfcomm0”)

  • Para descobrir se odnosi na Python kako biste dobili dodatne informacije o carro -u, prolaznom Bluetooth -u, ELM327 i chegar -u bez carro -a, digitalno:

    connection.protocol_name ()

Korak 9: Dodatne informacije o Carro Usando Pythonu

Dodatne informacije o Carro Usando Python
Dodatne informacije o Carro Usando Python

Vamos criar um arquivo chamado: OBD.py, conforme instruções abaixo e código na sequência.

Importamos a biblioteca OBD para dentro do Python para iniciar as conexões.

Por motivos desconhecidos, primeira conexão com nosso hardware, falha semper. Na segunda tentativa, funciona semper. Por isso, no código verá que há duas linhas de conexão (con).

Seguindo o funcionamento do código, com a conexão feita, iniciamos um loop infinito que busca os dados do OBD, formata de acordo com os parâmetros estabelecidos. Depois cria a URL, use Query String, para que possa enviar ao servidor using or método POST.

No exemplo abaixo pegamos as seguintes informações:

  • O / min
  • Velocidade
  • Odômetro *

As funções para captura dos dados utilizam dois parâmetros. Por exemplo, usando [1] [12] estamos buscando [módulo] [PID]. Esta lista pode ser encontrada em:

Na kraju, URL koji je objavljen pjevušeći kao informacije koje sadrže informacije o sadržaju i adicionadas em um arquivo, chamado "obd_data.dat".

Código za OBD.py:

import obdimport timeodoInicial = -1 paramOdo = 0 #Conect OBDprint "Primeira conexao" con = obd. OBD ("/dev/rfcomm0") print "Segunda conexao" con = obd. OBD ("/dev/rfcomm0") dok je True: respRPM = con.query (obd.commands [1] [12]) ispis respRPM respVelo = con.query (obd.commands [1] [13]) ispis respVelo respOdo = con.query (obd.commands [1] [49]) ispis respOdo paramRPM = int (float (str (respRPM).replace ("revolutions_per_minute", ""))) paramVelo = int (float (str (respVelo).replace ("kph", ""))) paramOdo = int (float (str (respOdo).replace ("kilometar", ""))) url = "https://www.website.com/OBD?vel="+str(paramVelo)+"&rpm="+str (paramRPM)+"& odo ="+str (paramOdo)+"\ n" time.sleep (0.2) ispis url datoteke = open ("obd_data.dat", "a+") file.write (url) file.close () ispis url

Depois da conexão e captura dos dados, vamos criar o arquivo chamado: envia_OBD.py

Esta parte do código fica mais simples. Começamos importando bibliotecas relacionadas à solicitações/envio de dados, usando RESTFUL.

Criamos um while para enviar através de POST a URL da primeira linha do arquivo que populado anteriormente pelo OBD.py. Depois disco, para evitar que o dado seja enviado mais de uma vez, ela apaga esta linha do arquivo.

Código para o arquivo OBD.py:

zahtjevi za uvoz

uvesti vrijeme dok je True: try: time.sleep (0.2) url = '' s otvorenim ('obd_data.dat', 'r') kao fin: data = fin.read (). splitlines (True) url = data [0] requests.post (url) s otvorenim ('obd_data.dat', 'w') kao fout: fout.writelines (data [1:]) osim: print 'iznimka'

Caso tenha algum problem copiando estes códigos, baixe os arquivos abaixo:

Korak 10: Ponovite skripte E Armazenamento De Dados Capturados Do Carro

Repetição De Scripts E Armazenamento De Dados Capturados Do Carro
Repetição De Scripts E Armazenamento De Dados Capturados Do Carro

Tu o o que foi feito até agora era orientado a garantir que a DragonBoard fizesse comunicação com os razlikuju komponente za rješavanje, kao 3G komunikaciju, WiFi, Bluetooth, Dados do GPS, ulaz.

Vamos usar o código abaixo para editar o arquivo 'rc.local', que já tem algumas funções e comandos pré-definidos, e fica no diretório '/etc'. Para fazer a edição, koristite o comando:

sudo nano /etc/rc.local

Agora precisamos configurar a inicialização de todos os processos, serviços e funções, criando rotinas para que funcionem automaticamente ao iniciar a Dragonboard. Vamos utilizar o BASH para fazer isso. O BASH (Bourne-Again-SHell) é um aplicativo para interpretação de comandos Unix.

No próximo código, que tem comandos BASH, você precisará inserir o MacAddress do seu dispositivo OBD/Bluetooth, e também precisa ter bastante cuidado para garantir que o código seja colocado semper antes do comando "exit 0" que éo a system.

ako [! -f/etc/ssh/ssh_host_rsa_key]

tada systemctl stop ssh.socket || true dpkg-ponovno konfigurirajte openssh-poslužitelj fi sudo systemctl start qdsp-start.service rfcomm vezanje 0 MACADDRESS 1 sudo python /home/linaro/Documents/FadaDoCarro/conectaGPS.py & sudo python/home/lina /Documents/FadaDoCarro/OBD.py & sudo python /home/linaro/Documents/FadaDoCarro/envia_OBD.py & exit 0

Partr de agora, semper que a placa for iniciada, ela já vai se conectar através do 3G e enviar os dados de GPS e OBD para or servidor escolhido.

Korak 11: Dificuldades Encontradas

Dificuldades Encontradas
Dificuldades Encontradas

Popis abaixo algumas barreira que encontramos ao longo do desenvolvimento do projeto, que resolmos antes de criar este Instructable, mas que é importante alertá-lo, caso esteja tendo dificuldades também.

  • PyOBD

    É preciso ter muito cuidado na hora de transmitir os dados e comunicar com o carro. Nas primeira tentativas, quando a comunicação ainda não era estável com o dispositivo, enviamos alguns comandos para o carro, e acabamos causando algum problem na ECU. Neste momento o câmbio automático não aceitava mais mudanças, ficou travado. Além disos, as luzes do painel começaram a piscar aleatoriamente. Rješenje za događaj koji se dogodio kada se dogodila desigamento dos cabos da bateria, mantendo assim za 15 minuta. Desta forma, forçamos ili reset completeto das ECUs do carro, retornando ele ao estágio original de fábrica, portanto Cancelando qualquer comando que tenhamos enviado erroneamente pela porta OBD

  • Linaro

    Tivemos um problem de boot no Linaro, quando aleatoriamente o reiniciava OS -a. Este problem foi resolvido ao longo do desenvolvimento do projekto, pela equipe do Linaro, que soltou uma atualização, e já construímos este tutorial utilizando a informação mais atualizada

  • GPS i DragonBoard

    Qualcomm Dragonboard 410c ne mora imati antenske GPS internacionalne uređaje, koji su prilagođeni sinalu, niti precizni instalacijski ili spojni priključak niti dodatna vanjska antena. Para fazer este procedimento, siga os passos propostos pela própria Qualcomm:

Korak 12: Preporuke

Preporuke
Preporuke

Bootloader

builds.96boards.org/releases/dragonboard410c/linaro/rescue/latest/

Linaro

builds.96boards.org/releases/dragonboard410c/linaro/debian/latest/

Možete instalirati Linaro na DragonBoard 410c

www.embarcados.com.br/linux-linaro-alip-na-qualcomm-dragonboard-410c/

Dokumentacija o GPS -u za DragonBoard

discuss.96boards.org/t/gps-software/170/16

GPS demo

gist.github.com/wolfg1969/4653340

Python OBD

github.com/brendan-w/python-OBD

Conectando RaspberryPi kao OBD Bluetooth

gersic.com/connecting-your-raspberry-pi-to-a-bluetooth-obd-ii-adapter/

Upute za pristup SSH -u

gist.github.com/kr0no/63e34c77b02843b46a8d89d8f7b5e4b6

Instalacijski ili SSH bez Linuxa

ask.xmodulo.com/install-autossh-linux.html

Preporučeni: