Doorduino2

From RevSpace
Revision as of 21:40, 16 September 2015 by Eightdot (talk | contribs) (→‎Schematics)
Jump to navigation Jump to search
Project Doorduino 2
Status Completed
Contact hansg
Last Update 2015-09-16

Doorduino 2 is een her-implementatie van de ideeen van Doorduino 1.

Verschillen t.o.v. Doorduino 1

Doorduino 1 Doorduino 2
Arduino + Ethernet Shield Arduino + Raspberry Pi
iButtons in EEPROM iButtons in /home/pi/ibuttons.acl.d/*.acl
Management via knopjes en iButtons Management via SSH
Noodstroom Geen noodstroom
Een exemplaar Meerdere exemplaren
Triviaal kloonbaar Iets veiliger; zie SecureIButton

Inrichting Raspberry Pi

Fedora met read-only filesystem (hansg, wil jij dit stukje uitbreiden?)

Source code

https://github.com/RevelationSpace/doorduino2.5

Schematics

In de comments van doorduino2alt.ino

Exemplaren

Voordeur

  • Locatie: serverhok
  • IP: 10.42.42.42

Kelder

  • Locatie: rechts naast de Spacestatus-schakelaar
  • IP: 10.42.42.43
  • Implementeert de optionele BUTTON-interface voor Knopje X
  • Heeft twee arduino's, eentje voor de klusbunker, een voor het meukhok

Kantoor

  • Locatie: Direct naast de deur
  • IP: 10.42.42.44

Provisioning

Samengevat: gewoon met rsync. Daaromheen worden filesystems geremount om ze tijdelijk schrijfbaar te maken.

#!/bin/sh
SSH="ssh -qi sshkey.rsa"

eval $(ssh-agent)
ssh-add sshkey.rsa 

for host in 10.42.42.42  10.42.42.43  10.42.42.44; do
    echo Pushing to $host
    $SSH -t pi@$host 'sudo mount -o rw,remount /' &&
    rsync -e "$SSH" global.acl pi@$host:ibuttons.acl.d/global.acl &&
    $SSH -t pi@$host 'sudo mount -o ro,remount /' ||
    echo "$host failed";
    echo done!
done

eval $(ssh-agent -k)  # kill

Wie werk(t)en eraan?

Op chonologische volgorde: Juerd, morphje, hansg, bertrik