Nota: questa pagina è stata tradotta automaticamente. Se puoi, dovresti leggerlo in una di queste lingue:

La stessa cosa

flash_cc2531

flash_cc2531 Consente di programmare la tua chiavetta USB CC2531 dei Raspberry, senza la necessità di Arduino o A CC Debugger.

Prerequisito

Hai bisogno di Raspberry o Odroid-c2.
È necessario cosa collegare la porta di debug della chiave alle porte GPIO di Raspberry, ad esempio un cavo CC e quattro linee Dupont (vedi oltre).
WiringPi deve essere installato (se non è preinstallato, normalmente si può installare con sudo apt install wiringpi), altrimenti vedere il sito di Gordon o questo sito alternativo ).
Infine serve il programma:

Ho proiettato flash_cc2531 su Raspberry Pi 3 con raspbian, ma la corretta programmazione è stata riportata su altri modelli:

Preparato

Scarica flash_cc2531 nel tuo raspberry :

git clone https://github.com/jmichault/flash_cc2531.git

Collegare i seguenti pin della porta viola alla porta GPO:

La disposizione dei pin raspberry è disponibile qui: https://pinout.xyz/

Quindi inserire la chiave USB in porta.

Il cavo di download CC e 4 linee Dupont femminili a femmina sono perfetti per questo scopo: Foto della chiave e raspberry ](https://github.com/jmichault/files/raw/master/Raspberry-CC2531.jpg) Questa è la mia opzione preferita, ma se non si dispone di un cavo CC è anche possibile rilasciare direttamente i cavi Dupont sulla chiave: vedere ad esempio il sito lemariva.com o notenoughtech.com

prova questo:

cd flash_cc2531
./cc_chipid

Deve tornare:

  ID = b524.

(il valore può essere diverso se la versione hardware della tua chiave non è uguale alla mia).
Se vedi 0000 o ffff qualcosa non è corretto:

utilizzo

Per salvare il contenuto della memoria flash nel file save.hex:

./cc_read save.hex

(richiede circa 2 minuti).

Per eliminare la memoria Lightning:

./cc_erase

Nota: Devi cancellare prima di scrivere (a meno che tu non sappia veramente cosa intendi fare).

Per programmare il file CC2531ZNP-Prod.hex sulla chiave CC2531:

./cc_write CC2531ZNP-Prod.hex

(dura circa 3 minuti).

Usa altri pin

tutti i comandi accettano i seguenti argomenti:

la numerazione dei pin utilizzata è quella di wiringPi. Usa gpio readall per avere il layout nella tua colonna Raspberry ( wPi ).

Ad esempio, se si desidera utilizzare i pin 3, 11 e 13:
Collegare i seguenti perni di Purifying Port to Port GPIO:

  1. perno 1 ( GND ) -> perno 14 ( GND )

  2. perno 7 ( reset ) -> perno 3 ( wPi 8, BCM2 )

  3. perno 3 ( DC ) -> perno 11 ( wPi 0, BCM17 )

  4. perno 4 ( DD ) -> perno 13 ( wPi 2, BCM27 )

E ora puoi leggere un identificatore, salvare, eliminare e scrivere una memoria fulmine con i seguenti comandi:

./cc_chipid -r 8 -c 0 -d 2
./cc_read -r 8 -c 0 -d 2 save.hex
./cc_erase -r 8 -c 0 -d 2
./cc_write -r 8 -c 0 -d 2 CC2531ZNP-Prod.hex

cosa succede se non funziona?

  1. interrompere tutti gli altri programmi.

  2. impostare la velocità del processore prima della programmazione. Esempio:

    sudo echo performance >/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
    
  3. utilizzare l’opzione -m per aumentare i limiti di tempo utilizzati. Esempio:

    ./cc_write -m 300 CC2531ZNP-Prod.hex
    
  4. ricompilare il programma con make.

  5. cerca una soluzione nelle domande già poste su github

  6. Poni la tua domanda su github.

  7. Controlla il tuo blocco nutrizione

    grep Under /var/log/kern.log
    

    Se ottieni un sacco di linee, devi cambiare il blocco nutrizionale.

Voglio connettere più di 15 periferia

Leggiamo in vari luoghi che la chiave CC2531 può gestire solo 15 dispositivi massimi.
In effetti, il limite per CC2531 è molto più alto.
Si noti inoltre che il protocollo zigbee limita il numero di collegamenti diretti al 32 °. Indipendentemente dal tuo coordinatore zigbee, non sarà possibile connettersi a più di 32 periferiche. .

La mia chiave ha il suo LED rosso che si illumina.

Succede che i principali deprogrammi, sia dovuti all’ambiente caricato da parassiti o a causa della scarsa alimentazione.

  1. Controlla il tuo blocco nutrizione

    grep Under /var/log/kern.log
    

    Se ottieni un sacco di linee, devi cambiare il blocco nutrizionale.

  2. Ottieni la chiave dei materiali inquietanti: altoparlanti, router Wi-Fi, …

  3. Riprogrammare la chiave

Licenza

Questo progetto è sotto licenza GPL v3 ( vedi COPYING ).