Skip to content

Commit

Permalink
Merge pull request #8 from Inter-Actief/issue-7-fix
Browse files Browse the repository at this point in the history
Update to 3.2
  • Loading branch information
Kurocon authored Sep 16, 2022
2 parents 82968c7 + 3318a77 commit 8ff3934
Show file tree
Hide file tree
Showing 4 changed files with 226 additions and 235 deletions.
44 changes: 37 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,26 +4,54 @@ JulianaNFC is een Python-programmaatje voor Windows en Linux dat pollt voor NFC
## Hoe dan?

### Windows
Geen requirements, Windows heeft een ingebouwde PC/SC Smart Card service.

#### Requirements
NFCPy heeft libusb nodig om generieke toegang te krijgen tot
USB apparaten, wat normaal niet is toegestaan onder Windows.
(instructies gekopieerd van [NFCPy](https://nfcpy.readthedocs.io/en/latest/topics/get-started.html#installation))

- Download [Zadig](http://zadig.akeo.ie/)
- Connect your NFC device
- Run the downloaded executable
- Click Options -> List All Devices
- Select your NFC reading/writing device from the list
- Select the WinUSB driver from the other drop down and install it (Replace Driver)


- Then, install libusb:
- Download [libusb](http://libusb.info/) (Downloads -> Latest Windows Binaries).
- Unpack the 7z archive (you may use 7zip).
- For 32-bit Windows:
- Copy VS2015-Win32\dll\libusb-1.0.dll to C:\Windows\System32.
- For 64-bit Windows:
- Copy VS2015-x64\dll\libusb-1.0.dll to C:\Windows\System32.
- Copy VS2015-Win32\dll\libusb-1.0.dll to C:\Windows\SysWOW64.

#### JulianaNFC
Download en start JulianaNFC_Python:
- Download de [release executable](https://github.com/Inter-Actief/JulianaNFC_Python/releases) voor Windows (`JulianaNFC_vX.X.exe`)
- Zet hem op een mooi plekje neer
- Start daarna `JulianaNFC_vX.X.exe`, de GUI zal starten.

### Linux

#### Requirements
Installeer onder Linux de PC/SC Smart Card daemon ( [PCSClite](https://pcsclite.alioth.debian.org/pcsclite.html) - [Debian PKG](https://packages.debian.org/source/stretch/pcsc-lite) ) en zorg dat deze gestart is.
- Blacklist de `pn533` en `pn533_usb` kernel modules en herstart de PC.
```bash
» cat /etc/modprobe.d/blacklist-libnfc.conf
blacklist pn533
blacklist pn533_usb
```

#### JulianaNFC - Optie 1
- Download de [release executable](https://github.com/Inter-Actief/JulianaNFC_Python/releases) voor Linux (`JulianaNFC_linux_vX.X`)
- Zet hem op een mooi plekje neer
- Start het executable bestand `JulianaNFC_linux_vX.X`, de GUI zal starten. (draai het met de `-h` flag voor CLI-opties)

#### JulianaNFC - Optie 2
- Clone of download de code van github
- Maak een virtualenv als je dat graag wilt
- Installeer de requirements uit requirements.txt
- Clone of download de code van github (`git clone [email protected]:Inter-Actief/JulianaNFC_Python.git`)
- Maak een virtualenv als je dat graag wilt en activeer deze (`python3 -m venv venv; source ./venv/bin/activate`)
- Installeer de requirements uit requirements.txt (`pip install -r requirements.txt`)
- Voer `python juliana.py` uit, de GUI zal starten. (zie `juliana.py -h` voor CLI-opties)

### Websocket
Expand All @@ -43,13 +71,15 @@ Als er een kaart wordt gescand ontvang je over de websocket een JSON-object (in
En dat is alles wat JulianaNFC doet.

## Bugs en to-do's
Bij het scannen van sommige kaarten (i.e. ID-kaarten) breekt de NFC lezer (onder Linux). Even de lezer opnieuw inpluggen fixt het dan vaak.
Niks bekend. Maak hier nieuwe tickets aan: https://github.com/Inter-Actief/JulianaNFC_Python/issues

Mocht de kaartlezer ineens niet meer werken, dan kan je hem opnieuw inpluggen. JulianaNFC zou hem dan opnieuw moeten detecteren.

## Package bouwen
- Zoek een computer met het gewenste doelbesturingssysteem en installeer Python en alle requirements voor JulianaNFC.
- Noot: Gebruik bij packagen op Windows een python-versie waarvoor een [.whl van wxPython](https://pypi.org/project/wxPython/#files) beschikbaar is, dit package zelf bouwen op Windows is lastig.
- Installeer pyinstaller (`pip install pyinstaller`) (Getest met 5.2, maar zou met nieuwere prima moeten werken)
- Open een command prompt / terminal en ga naar de map waar JulianaNFC staat
- Verwijder de `build` en `dist` folders als deze nog bestaan van een vorige build
- Draai Pyinstaller op de specfile (`pyinstaller juliana_nfc.spec`)
- Draai Pyinstaller op de specfile (`pyinstaller juliananfc.spec`)
- De build zal in de `build` folder plaatsvinden, de executable zal in de `dist` folder geplaatst worden.
Loading

0 comments on commit 8ff3934

Please sign in to comment.