Форумы » Проекты на Raspberry Pi » Проекты на Raspberry Pi

Малинка и считыватель отпечатка пальца

ءlinnenemy


Сообщений: 6

отправлено 30 Январь 2018 в 04:10

Имеется Raspbery Pi 3, а также ёмкостной отпечаток пальца R303. На последнем есть два интерфейса - USB и UART. Пошлявшись по форумам таки дошло, что аппаратной реализаии UART в третьей малине нет, есть программная. Ок. Пробую юзать 14 и 15 выводы GPIO, в Конфигурация настроил, проверил, сам сериал порт работает, замыкание TD и RD даёт полное эхо. Но вот подключение считывателя отпечатка не приводит к нужному результату. Не работает и все. Может кто юзал сей девайс, поделитесь инфой.

ءlinnenemy


Сообщений: 6

отправлено 30 Январь 2018 в 04:14

P.S. Ошибок то понаделал, кошмар.

chug17


Сообщений: 19

отправлено 30 Январь 2018 в 15:25

Аппаратный UART есть. Но, чтобы его использовать, нужно отключить Bluetooth, т.к в третьей малине на аппаратный UART повесили Bluetooth
Ну и код пишите, который не работает. Экстрасенсов нет

ءlinnenemy


Сообщений: 6

отправлено 31 Январь 2018 в 19:12

Код из примера библиотеки python-fingerprint:

#!/usr/bin/env python
# -*- coding: utf-8 -*-

"""
PyFingerprint
Copyright (C) 2015 Bastian Raschke <bastian.raschke@posteo.de>
All rights reserved.

"""

from pyfingerprint.pyfingerprint import PyFingerprint


## Shows the template index table
##

## Tries to initialize the sensor
try:
    f = PyFingerprint('/dev/ttyAMA0', 9600, 0xFFFFFFFF, 0x00000000)

    if ( f.verifyPassword() == False ):
        raise ValueError('The given fingerprint sensor password is wrong!')

except Exception as e:
    print('The fingerprint sensor could not be initialized!')
    print('Exception message: ' + str(e))
    exit(1)

## Gets some sensor information
print('Currently used templates: ' + str(f.getTemplateCount()) +'/'+ str(f.getStorageCapacity()))

## Tries to show a template index table page
try:
    page = input('Please enter the index page (0, 1, 2, 3) you want to see: ')
    page = int(page)

    tableIndex = f.getTemplateIndex(page)

    for i in range(0, len(tableIndex)):
        print('Template at position #' + str(i) + ' is used: ' + str(tableIndex[i]))

except Exception as e:
    print('Operation failed!')
    print('Exception message: ' + str(e))
    exit(1)

Если замкнуть RX и TX то эхо проскакивает, но подключение сканера отпечатка пальца и запуск вышеуказанного кода дает exception.
P.S. Может кто подскажет как зовется виндовое приложение для работы с этим считывателем отпечатка по USB?

ءlinnenemy


Сообщений: 6

отправлено 31 Январь 2018 в 19:29

Windows приложение называется SFGDemo

M_C


Сообщений: 1

отправлено 31 Январь 2018 в 23:36

/dev/ttyAMA0 - такое устройство точно есть?

Программный UART на Raspberry Pi 3 - /dev/ttyS0
плюс нужно зафиксировать частоту ядра процессора core_freq=250 в /boot/config.txt ,
т.к в Pi3 программный UART тактируется от частоты процессора, а она постоянно меняется, если core_freq=250 не прописать в конфиг

ءlinnenemy


Сообщений: 6

отправлено 01 Февраль 2018 в 08:28

/dev/ttyAMA0 - такое устройство точно есть, при замыкании GPIO 14 и 15 эхо проходит именно по этому устройству.
Про частоту ядра читал, но не думал, что это в данном вопросе критично, сегодня попробую зафиксировать, посмотрим на результат. Хотя что-то мне подсказывает, что надо дождаться переходника USB-UART и юзать его, а пальчики прописать в виндовом приложении.
Отпишусь как опробую.

ءlinnenemy


Сообщений: 6

отправлено 01 Февраль 2018 в 10:52

К слову сказать, в статье http://raspberrypi.ru/blog/627.html указано, что
Разработчики предлагают абсолютно гениальные решения для решения проблемы с UART:
1.Зафиксировать частоту core_freq на уровне 250mhz, прописав core_freq=250 в конфиг /boot/config.txt, что естественно повлечёт за собой снижение производительности компьютера

2."Вернуть всё в зад", фактически отключив Bluetooth , добавив в конфиг
dtoverlay=pi3-miniuart-bt
Мне в работе Bluetooth не требуется, не мудствуя лукаво я и отключил его в вышеуказанной строчкой. Уважаемый M_C же утверждает, что надо еще и частоту проца снизить.
И да, странно, что у меня есть устройство ttyAMA0, в то время как в статье указано, что ныне UART зовется ttyS0.

Для того, чтобы написать сообщение в тему, необходимо авторизоваться!