- Python 99.4%
- Nix 0.4%
- Shell 0.2%
| case | Update case/README.md | |
| src | Fix current setup | |
| lessons_learned.txt | update lessons_learned.txt | |
| README.md | update README | |
| shell.nix | Fix current setup | |
| upload_to_board.sh | Fix current setup | |
Zamek do Knyfyrtla. TODO: dodac opis
Otwieranie drzwi
W stanie domyślnym, oczekiwania na zeskanowanie karty, diody LED zewnętrznego modułu zamka powinny mieć animację powolnego "oddychania" koloru niebieskiego. Jeżeli tej animacji brakuje oznacza to prawdopodobnie crash.
Aby zweryfikować kartę przyłóż ją do klawiatury. Animacja diód LED powinna zostać zastąpiona jasnym stałym kolorem niebieskim. Wpisz swój PIN, potwierdzając go #.
Przy poprawnej weryfikacji diody wyświetlą stały zielony kolor, a zaczep zamka zostanie zwolniony. Po 3 sekundach zamek powróci do stanu zamkniętego.
Przy błędnej weryfikacji diody zamigoczą trzykrotnie kolorem czerwonym, po czym zamek wróci do stanu domyślnego.
Zarządzanie kartami
Obecny zamek jest wciąż w fazie prototypu. Docelowo zarządzanie dozwolonymi kartami będzie via KnyfID (nasze SSO). Obecnie lista kart jest jedynie wewnątrz samego mikrokontrolera.
Aby dodać nową kartę:
- musisz posiadać narzędzie mpremote
- podłącz zamek do zasilania, jeżeli nie jest podłączony
- zasilenie mikrokontrolera poprzez samo USB jest możliwe, ale niezalecane
- podłącz laptopa kablem microUSB do płytki
- uruchom
mpremote. Powinien automatycznie się interaktywnie połączyć do kontrolera, i wyświetlać output programu - wciśnij (tylko raz!) CTRL-C, aby do programu wysłać keyboard interrupt. Powinno to wyrzucić mikrokontroler z głównej pętli, i wyświetli się menu zarządzania kartami
- zamek automatycznie zrestartuje się po 120 sekundach od tego momentu. Masz dwie minuty na wykonanie pożądanych akcji.
- podążaj za wyświetlonym menu
- wciśnij 2 aby dodać nową kartę
- zeskanuj kartę czytnikiem, lub wciśnij CTRL-C aby ręcznie wpisać UID
- wpisz PIN na klawiaturze czytnika zatwierdzając #
- ponów PIN zatwierdzając #
- wpisz komentarz (kiedy dodano, kto dodał, dla kogo)
- po zapisaniu karty czytnik powinien wrócić do głównej pętli
- wciśnij CTRL-X aby odłączyć się od konsoli mikrokontrolera
- Odłącz laptopa. Po odłączeniu zweryfikuj czy zamek działa poprawnie (diody LED przy zewnętrznej klawiaturze powinny mieć animację powolnego "oddychania")
- jeżeli tak nie jest, wyłącz i włącz zasilanie zamka
- jeżeli to nie pomogło, czas na debugowanie.
Od technicznej strony, wewnątrz pamięci flash jest zapisany plik cards.csv (separator ;, bez cudzysłowów) posiadający kolumny: UID karty (8 znaków uppercase, bez separatorów), PIN, komentarz. Nie jest to specjalnie bezpieczne i będzie zastąpione funkcją hash'ującą, ale obecnie jest good enough.