Compare commits

..

10 Commits

19 changed files with 1883 additions and 1577 deletions

View File

@ -17,7 +17,7 @@ root_overlay/root/.ssh/authorized_keys: ~/.ssh/id_rsa.pub
mkdir -p `dirname $@` mkdir -p `dirname $@`
cp $< $@ cp $< $@
buildroot/.config: config buildroot/.config:
ln -sf ../config $@ ln -sf ../config $@
root_overlay/etc/door_tokens: root_overlay/etc/door_tokens:
@ -42,7 +42,7 @@ clean:
rm -f root_overlay/root/.ssh/authorized_keys rm -f root_overlay/root/.ssh/authorized_keys
menuconfig: buildroot/.config menuconfig: buildroot/.config
make -C buildroot menuconfig make -C buildroot BR2_EXTERNAL=../br_external menuconfig
if [[ ! -L buildroot/.config ]]; then mv buildroot/.config config && ln -s ../config buildroot/.config; fi if [[ ! -L buildroot/.config ]]; then mv buildroot/.config config && ln -s ../config buildroot/.config; fi
.PHONY: all clean sdcard.img menuconfig root_overlay root_overlay/etc/dropbear/dropbear_ecdsa_host_key .PHONY: all clean sdcard.img menuconfig root_overlay root_overlay/etc/dropbear/dropbear_ecdsa_host_key

View File

@ -2,3 +2,4 @@ source "$BR2_EXTERNAL_DOOR_PI_PATH/package/poll_desfire/Config.in"
source "$BR2_EXTERNAL_DOOR_PI_PATH/package/libfreefare_git/Config.in" source "$BR2_EXTERNAL_DOOR_PI_PATH/package/libfreefare_git/Config.in"
source "$BR2_EXTERNAL_DOOR_PI_PATH/package/python-door-admin/Config.in" source "$BR2_EXTERNAL_DOOR_PI_PATH/package/python-door-admin/Config.in"
source "$BR2_EXTERNAL_DOOR_PI_PATH/package/door_pi_control/Config.in" source "$BR2_EXTERNAL_DOOR_PI_PATH/package/door_pi_control/Config.in"
source "$BR2_EXTERNAL_DOOR_PI_PATH/package/python_wheel/Config.in.host"

View File

@ -3,5 +3,6 @@ config BR2_PACKAGE_DOOR_PI_CONTROL
select BR2_PACKAGE_PYTHON3 select BR2_PACKAGE_PYTHON3
select BR2_PACKAGE_PYTHON_PAHO_MQTT select BR2_PACKAGE_PYTHON_PAHO_MQTT
select BR2_PACKAGE_PYTHON_SERIAL select BR2_PACKAGE_PYTHON_SERIAL
select BR2_PACKAGE_HOST_PYTHON_WHEEL
help help
https://git.imaginaerraum.de/apo/DoorControl https://git.imaginaerraum.de/apo/DoorControl

View File

@ -1,8 +1,8 @@
DOOR_PI_CONTROL_VERSION = 6f7e8eab79c728bd807a285b647710f60181caf7 DOOR_PI_CONTROL_VERSION = 9358dfc74b119840c868157c075a53302263a958
DOOR_PI_CONTROL_SOURCE = $(DOOR_PI_CONTROL_VERSION).tar.gz DOOR_PI_CONTROL_SOURCE = $(DOOR_PI_CONTROL_VERSION).tar.gz
DOOR_PI_CONTROL_SITE = https://git.imaginaerraum.de/apo/DoorControl/archive DOOR_PI_CONTROL_SITE = https://git.imaginaerraum.de/apo/DoorControl/archive
DOOR_PI_CONTROL_LICENSE = GPL-3.0 DOOR_PI_CONTROL_LICENSE = GPL-3.0
DOOR_PI_CONTROL_LICENSE_FILES = LICENSE DOOR_PI_CONTROL_LICENSE_FILES = LICENSE
DOOR_PI_CONTROL_SETUP_TYPE = setuptools DOOR_PI_CONTROL_SETUP_TYPE = pep517
DOOR_PI_CONTROL_DEPENDENCIES = host-python_wheel
$(eval $(python-package)) $(eval $(python-package))

View File

@ -1,5 +1,5 @@
POLL_DESFIRE_VERSION = 0.0.1 POLL_DESFIRE_VERSION = e39aa4abb0f8cd635d9f88f8a750ad00ca3546b5
POLL_DESFIRE_SOURCE = poll_desfire_v$(POLL_DESFIRE_VERSION).tar.gz POLL_DESFIRE_SOURCE = $(POLL_DESFIRE_VERSION).tar.gz
POLL_DESFIRE_SITE = https://git.imaginaerraum.de/apo/PollDesfire/archive POLL_DESFIRE_SITE = https://git.imaginaerraum.de/apo/PollDesfire/archive
POLL_DESFIRE_DEPENDENCIES = libfreefare_git host-pkgconf POLL_DESFIRE_DEPENDENCIES = libfreefare_git host-pkgconf
POLL_DESFIRE_LICENSE = GPL-3.0 POLL_DESFIRE_LICENSE = GPL-3.0

View File

@ -1,8 +1,6 @@
#PYTHON_DOOR_ADMIN_VERSION = blueprint_refactoring PYTHON_DOOR_ADMIN_VERSION = 8e868f16747fc56daa29a0cdcd77d9b7fff10711
#PYTHON_DOOR_ADMIN_VERSION = master PYTHON_DOOR_ADMIN_SOURCE = $(PYTHON_DOOR_ADMIN_VERSION).tar.gz
PYTHON_DOOR_ADMIN_VERSION = a13e7b3e294d0300ab75da2042cf93ea840eb2e2 PYTHON_DOOR_ADMIN_SITE = https://git.imaginaerraum.de/Telos4/DoorAdmin/archive
PYTHON_DOOR_ADMIN_SITE = https://git.imaginaerraum.de/Telos4/DoorAdmin
PYTHON_DOOR_ADMIN_SITE_METHOD = git
PYTHON_DOOR_ADMIN_LICENSE = GPL-3.0 PYTHON_DOOR_ADMIN_LICENSE = GPL-3.0
PYTHON_DOOR_ADMIN_LICENSE_FILES = LICENSE PYTHON_DOOR_ADMIN_LICENSE_FILES = LICENSE
PYTHON_DOOR_ADMIN_SETUP_TYPE = setuptools PYTHON_DOOR_ADMIN_SETUP_TYPE = setuptools

View File

@ -0,0 +1,5 @@
config BR2_PACKAGE_HOST_PYTHON_WHEEL
bool "host python-wheel"
select BR2_PACKAGE_PYTHON3
help
https://github.com/pypa/wheel

View File

@ -0,0 +1,7 @@
PYTHON_WHEEL_VERSION = 0.38.2
PYTHON_WHEEL_SOURCE = $(PYTHON_WHEEL_VERSION).tar.gz
PYTHON_WHEEL_SITE = https://github.com/pypa/wheel/archive/refs/tags
PYTHON_WHEEL_LICENSE = GPL-3.0
PYTHON_WHEEL_LICENSE_FILES = LICENSE
PYTHON_WHEEL_SETUP_TYPE = distutils
$(eval $(host-python-package))

@ -1 +1 @@
Subproject commit d6d9ed7400ae2761cd08ce8e0d534585fee38e01 Subproject commit 4ffa34edc1b26ff038c95bf62eccada4bf0c1492

2124
config

File diff suppressed because it is too large Load Diff

View File

@ -20,3 +20,28 @@ CONFIG_WLAN=y
CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
CONFIG_USB_ACM=y CONFIG_USB_ACM=y
CONFIG_OF_LIBFDT_OVERLAY=y
CONFIG_ARM=y
CONFIG_SOUND=y
CONFIG_SOUND_OSS_CORE=y
CONFIG_SOUND_OSS_CORE_PRECLAIM=y
CONFIG_SND=y
CONFIG_SND_TIMER=y
CONFIG_SND_PCM=y
CONFIG_SND_DRIVERS=y
CONFIG_SND_ARM=y
CONFIG_SND_SPI=y
CONFIG_SND_USB=y
CONFIG_SND_SOC=y
CONFIG_SND_SOC_DMAENGINE_PCM=y
CONFIG_SND_SUNXI_SOC_AUDIOCODEC=y
CONFIG_SND_SUNXI_SOC_PUBLUC_MACHINE=y
CONFIG_SND_SUN8IW7_SNDCODEC=y
CONFIG_SND_SUNXI_SOC_DAUDIO0_INTERFACE=y
CONFIG_SND_SUNXI_SOC_DAUDIO1_INTERFACE=y
CONFIG_SND_SUNXI_SOC_SPDIF=y
CONFIG_SND_SUNXI_SOC_AUDIOHUB_INTERFACE=y
CONFIG_SND_SUN8IW7_AUDIOHUB=y
CONFIG_SND_SOC_I2C_AND_SPI=y

View File

@ -1,3 +0,0 @@
#!/usr/bin/python3
from door_pi_control import main
main()

View File

@ -0,0 +1,13 @@
#!/usr/bin/python
import socket
import sys
sock = socket.socket(socket.AF_UNIX)
sock.connect("/tmp/nfc.sock")
sock.settimeout(1)
for cmd in sys.argv[1:]:
sock.send(cmd.encode('utf-8') + b'\n')
try:
print(sock.recv(1024))
except socket.timeout:
continue

View File

@ -1,13 +0,0 @@
#!/bin/sh
# This script acts as a dead-man-switch for the door pi.
# It sends a ping to healthchecks.io in regular intervals.
# When a ping is missed (e.g. because the pi crashes) healtchecks
# is configured to send a notification that the pi is down.
LOGFILE=/var/log/healthcheck.log
URL=http://hc-ping.com/7cfd6716-ac74-420a-b322-ef8d5746e0fe
while true; do
echo -n "`date +"[%Y-%m-%d %H:%M:%S]"` " >> $LOGFILE
wget -q -O - $URL >> $LOGFILE
echo "" >> $LOGFILE
sleep 15m
done

View File

@ -1,8 +1,11 @@
#!/bin/sh #!/bin/sh
while true; do while true; do
if [ ! -f /tmp/debugging_poll_desfire ]; then
start-stop-daemon -S -m -p /tmp/poll_desfire.pid -x /bin/poll_desfire -b -- /root/key /tmp/nfc_fifo start-stop-daemon -S -m -p /tmp/poll_desfire.pid -x /bin/poll_desfire -b -- /root/key /tmp/nfc_fifo
start-stop-daemon -v -p /tmp/fcpy.pid -S -b -m -v -x /usr/bin/python -- /bin/door.py fi
start-stop-daemon -v -p /tmp/webiface.pid -S -b -m -v -x /usr/bin/python -- /usr/bin/launch_webadmin if [ ! -f /tmp/debugging_door_pi_control ]; then
start-stop-daemon -v -p /tmp/healthchecks.pid -S -b -m -v -x /bin/sh -- /bin/healthcheck.sh start-stop-daemon -v -p /tmp/fcpy.pid -S -b -m -v -x /usr/bin/python -- /usr/bin/door_pi_control --log_host 10.11.1.1:5556
fi
#start-stop-daemon -v -p /tmp/webiface.pid -S -b -m -v -x /usr/bin/python -- /usr/bin/launch_webadmin
sleep 5 sleep 5
done done

View File

@ -0,0 +1,2 @@
Telos4 simon.pirkelmann@gmail.com LDAP
apo a@0au.de LDAP

View File

@ -1,2 +1,3 @@
device.name="reader" device.name="reader"
device.connstring="pn532_uart:/dev/serial/by-id/usb-Imaginaerraum.de_DoorControl_43363220195053573A002C0-if03" device.connstring="pn532_uart:/dev/serial/by-id/usb-Imaginaerraum.de_DoorControl_433632201350535727003F0-if03"

View File

@ -0,0 +1,37 @@
# Beware! This file is rewritten by htop when settings are changed in the interface.
# The parser is also very primitive, and not human-friendly.
fields=0 48 17 18 38 39 40 2 46 47 49 1
sort_key=46
sort_direction=1
tree_sort_key=0
tree_sort_direction=1
hide_kernel_threads=1
hide_userland_threads=1
shadow_other_users=0
show_thread_names=0
show_program_path=1
highlight_base_name=0
highlight_megabytes=1
highlight_threads=1
highlight_changes=0
highlight_changes_delay_secs=5
find_comm_in_cmdline=1
strip_exe_from_cmdline=1
show_merged_command=0
tree_view=1
tree_view_always_by_pid=0
header_margin=1
detailed_cpu_time=0
cpu_count_from_one=0
show_cpu_usage=1
show_cpu_frequency=0
update_process_names=0
account_guest_in_cpu_meter=0
color_scheme=0
enable_mouse=1
delay=15
left_meters=AllCPUs Memory Swap
left_meter_modes=1 1 1
right_meters=Tasks LoadAverage Uptime
right_meter_modes=2 2 2
hide_function_bar=0

File diff suppressed because it is too large Load Diff