Armando47/Software: Difference between revisions

From ciapini
Jump to navigation Jump to search
(Created page with "== Software == === Modem === lo strato modem controlla l'ADC, il DAC e i GPIO ==== Modalita GPIO ==== Armando ha 8 GPIO che possono lavorare nelle seguenti modalita' =====...")
 
No edit summary
Line 1: Line 1:
== Software ==
== Modem ==
=== Modem ===


lo strato modem controlla l'ADC, il DAC e i GPIO
lo strato modem controlla l'ADC, il DAC e i GPIO


==== Modalita GPIO ====
=== Modalita GPIO ===


Armando ha 8 GPIO che possono lavorare nelle seguenti modalita'
Armando ha 8 GPIO che possono lavorare nelle seguenti modalita'


===== R/C =====
==== R/C ====


* http://www.aerodesign.de/peter/2000/PCM/PCM_PPM_eng.html
* http://www.aerodesign.de/peter/2000/PCM/PCM_PPM_eng.html
Line 57: Line 56:




=== Phy ===
== Phy ==


lo strato di PHY va dal discriminatore di simbolo al buffer dei dati
lo strato di PHY va dal discriminatore di simbolo al buffer dei dati
Line 68: Line 67:
* aprs
* aprs


=== Net ===
== Net ==


=== Protocolli ===
== Protocolli ==


armando e' in grado di parlare differenti protocolli
armando e' in grado di parlare differenti protocolli


==== APRS ====
=== APRS ===


Automatic Packet Reporting System, e' un sistema di localizzazione a pacchetti che usa un protocollo AX.25 in modalita senza connessione su una modulazione afsk Bell 202 a 1200 bps
Automatic Packet Reporting System, e' un sistema di localizzazione a pacchetti che usa un protocollo AX.25 in modalita senza connessione su una modulazione afsk Bell 202 a 1200 bps
Line 103: Line 102:
* http://diydrones.com/forum/topics/705844:Topic:49807
* http://diydrones.com/forum/topics/705844:Topic:49807


==== arNet ====
=== arNet ===


armando implementa la suite [[arPhy]]-[[ArNet]]
armando implementa la suite [[arPhy]]-[[ArNet]]


==== ANI ====
=== ANI ===


client e server Push-To-Talk ID e selective calling.
client e server Push-To-Talk ID e selective calling.
Line 122: Line 121:
* https://en.wikipedia.org/wiki/Selective_calling
* https://en.wikipedia.org/wiki/Selective_calling


==== Morse ====
=== Morse ===


* http://kb8ojh.net/msp430/morse_encoding.html
* http://kb8ojh.net/msp430/morse_encoding.html


=== generatore OTP ===
== generatore OTP ==


dato che abbiamo un rtc l'apparato potrebbe fare da one time password generator.
dato che abbiamo un rtc l'apparato potrebbe fare da one time password generator.
Line 137: Line 136:
* https://code.google.com/p/yubikey-personalization/
* https://code.google.com/p/yubikey-personalization/


=== stringa di configurazione ===
== stringa di configurazione ==


la configurazione dell'apparato deovrebbe essere importabile ed esportabile come una stringa esadecimale
la configurazione dell'apparato deovrebbe essere importabile ed esportabile come una stringa esadecimale
Line 143: Line 142:
anche la chiave crittografica sara una stringa di 32/48/64 caratteri esadecimali
anche la chiave crittografica sara una stringa di 32/48/64 caratteri esadecimali


=== PIN/PUC ===
== PIN/PUC ==


quando il device andra in sleep sara necessario un pin di 4 caratteri per risvegliarlo
quando il device andra in sleep sara necessario un pin di 4 caratteri per risvegliarlo
Line 149: Line 148:
dopo 5 tentativi sbagliati, il device dimentica la chiave crittografica.
dopo 5 tentativi sbagliati, il device dimentica la chiave crittografica.


=== Crittazione ===
== Crittazione ==
Se vogliamo usare AES, questo potrebbe fare al caso nostro:
Se vogliamo usare AES, questo potrebbe fare al caso nostro:
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1824&appnote=en027644
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1824&appnote=en027644


[[ArNet#Cifratura]]
[[ArNet#Cifratura]]

Revision as of 12:26, 11 June 2014

Modem

lo strato modem controlla l'ADC, il DAC e i GPIO

Modalita GPIO

Armando ha 8 GPIO che possono lavorare nelle seguenti modalita'

R/C

CH porta descrizione
1 GPIO0
2 GPIO0
3 ANALOG0/PWM0
4 ANALOG1/PWM1
5 ANALOG2/PWM2
6 ANALOG3/PWM3
7
8


GPIO0 e GPIO1 sono ingressi logici

ANALOG0 - ANALOG3 sono ingressi analogici (0-vdd)

armando va in trasmissione (setta PTT_OUT alto) quando lo stato degli input cambia.

il protocollo di trasporto e' arNet

in Rx:

dai pin PWM0-3 esce un segnale pwm in standard analog servo r/c. dai pin GPIO0-1 esce un livello logico

  • frequenza: 50 Hz
  • 0 duty cycle: 1.25 ms
  • 512 duty cycle: 1.50 ms
  • 1023 duty cycle: 1.75 ms
  • VLo: Vss
  • VHi: Vdd


Phy

lo strato di PHY va dal discriminatore di simbolo al buffer dei dati

sono supportate 4 modalita' phy:

  • raw
  • arphy
  • morse
  • aprs

Net

Protocolli

armando e' in grado di parlare differenti protocolli

APRS

Automatic Packet Reporting System, e' un sistema di localizzazione a pacchetti che usa un protocollo AX.25 in modalita senza connessione su una modulazione afsk Bell 202 a 1200 bps

sarebbero utili 3 modalita APRS

  • client, che riceve dalla UART stringhe NMEA e le trasmette in aprs
  • digipeater, che ritrasmette i messaggi APRS ricevuti
  • gateway, che manda via UART i messaggi APRS ricevuti

Qui c'è vita morte e miracoli dell'aprs, con relative specifiche:

http://www.aprs.org/

la prima reference: ftp://ftp.tapr.org/aprssig/aprsspec/spec/aprs101/APRS101.pdf

sw da cui è possibile attingere: http://info.aprs.net/index.php?title=Software

Per fortuna ci sono delle bellissime librerie in c++

lib NMEA:

arNet

armando implementa la suite arPhy-ArNet

ANI

client e server Push-To-Talk ID e selective calling.

tipi di ANI

  • Motorola’s MDC-1200
  • Kenwood’s FleetSync
  • Harris’ G-Star (aka GE-Star)
  • DTMF
  • 5-Tone

letture:

Morse

generatore OTP

dato che abbiamo un rtc l'apparato potrebbe fare da one time password generator. usiamo la chiave come seme? che implementazioni ci sono?

letteratura:

stringa di configurazione

la configurazione dell'apparato deovrebbe essere importabile ed esportabile come una stringa esadecimale

anche la chiave crittografica sara una stringa di 32/48/64 caratteri esadecimali

PIN/PUC

quando il device andra in sleep sara necessario un pin di 4 caratteri per risvegliarlo

dopo 5 tentativi sbagliati, il device dimentica la chiave crittografica.

Crittazione

Se vogliamo usare AES, questo potrebbe fare al caso nostro: http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1824&appnote=en027644

ArNet#Cifratura