Compare commits

..

12 Commits

42 changed files with 5 additions and 339 deletions

View File

@ -7,7 +7,7 @@ steps:
commands:
- git submodule update --init --recursive
- name: build
image: xperimental/hugo:0.101.0
image: xperimental/hugo:0.80.0
commands:
- hugo
- name: publish

1
.gitignore vendored
View File

@ -3,4 +3,3 @@ _site
/public/
/resources/
*~
.hugo_build.lock

View File

@ -1,6 +0,0 @@
{
"line-length": false,
"no-inline-html": {
"allowed_elements": [ "br", "div" ]
}
}

View File

@ -20,9 +20,6 @@ brand = "hacKNology"
subtitle = "Hackerspace in Konstanz"
dateFormat = "02. Jan 2006"
[social]
mastodon = "https://chaos.social/@hacknology"
[markup.goldmark.renderer]
unsafe=true

View File

@ -4,9 +4,6 @@ title: hacKNology e.V.
## Nächste Veranstaltungen
* **07.10.2023** Repair Café von 14 - 17 Uhr bei [Miteinander in Konstanz e.V.](https://www.miteinander-konstanz.de/miteinander/aktiv-sein/)
* **18.11.2023** Repair Café von 14 - 17 Uhr bei [Miteinander in Konstanz e.V.](https://www.miteinander-konstanz.de/miteinander/aktiv-sein/)
> **Aktueller Hinweis:** Der Weg in unsere Räumlichkeiten hat sich geändert! Schaut auf der [Treffpunkt-Seite]({{< ref "treffpunkt.md" >}}) für eine aktuelle Wegbeschreibung nach.
## Was Wir Tun

Binary file not shown.

Before

Width:  |  Height:  |  Size: 475 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 181 KiB

View File

@ -1,56 +0,0 @@
---
title: Chaos Communication Camp 2023
author: junkrat
date: 2023-09-12
---
Nach vier Jahren kommen endlich wieder viele begeisterte Hacker aus aller Welt auf einem nerdigen Camp irgendwo im Nirgendwo nördlich von Berlin zusammen; und einige Mitglieder von hacKNology e.V. haben sich unter diese begeben.
<!--more-->
Noch bevor das Camp offiziell gestartet war, gab es schon die ersten Probleme - so wie immer in der IT:
Unsere Paletten kamen vier Tage zu spät an, weshalb wir die Kuppel unseres Villages "Chaos Bodensee", in welcher wir für die nächsten fünf Tage zusammen mit Hackern der Toolbox Bodensee hausen würden, erst am Tag 0 aufbauen konnten. Auch die zuvor versprochene Bierbankgarnitur hatte sich wie das UDP-&zwj;Protokoll verhalten und ist nie bei uns angekommen.
Doch natürlich sollte das nicht die letzte Problematik darstellen, welche uns auf dem Camp begegnet. Schon morgens gab es Probleme mit unverlässlichen Duschen und Wespen beim Frühstück. Doch auch diese konnten uns nicht davon abhalten, das Camp bei einem Soundcheck mit "Never Gonna Give You Up" von Rick Astley zu beschallen.
Unser Markenzeichen, der [bewegungsappar.at] darf auf solch einem Event natürlich auch nicht fehlen. Phail konnte so, selbst auf einem nicht überfluteten Camp, viele Kanufahrten anbieten. Auch unser Postbote Psycho, der gefühlt im Dauerengeleinsatz war, fuhr fröhlich mit dem Postauto durchs Camp. Die ChaosPost erfuhr so - im Vergleich zu den Postboten, die zu Fuß unterwegs waren - ein Update.
Das Wetter wurde besser als angekündigt - das Camp wurde nicht zu einem Wacken 2.0 - doch die Hitze konnten wir trotzdem nicht aufhalten. Vor allem in unserer Kuppel, wo es zeitweise um 40°C hatte. Auch ein Datenzwerg hat am 16.08. in der Sonne 44°C gemessen, weshalb sich einige von uns über den kühlen Badesee neben dem Camp gefreut haben, um ein Überhitzen der Hacker-CPUs zu vermeiden.
Dementsprechend war der Hinweis vor jedem Talk "Drink more water. And if you think you've drunken enough water, drink MORE water!" definitiv sinnvoll und hat unsere Körper vor einem DoS-Angriff bewahrt.
Diese Technik war hingegen bei unseren lieben DECT-Telefonen nicht wirksam, da die Gespräche häufig abgebrochen sind. Aber ansonsten waren sie trotzdem sehr cool. An dieser Stelle vielen Dank an Eventphone!
Die meisten interessanten Vorträge waren beim Village Milliways und somit erfreulicherweise direkt gegenüber. Doch auch auf dem Marktplatz konnte man Shows wie "Hacken, dass…" oder "Schlag den Nerd" anschauen. Bei unterschiedlichen Workshops haben wir außerdem coole Dinge, wie z.B. Löten gelernt. Events, wie das Karaoke um vier Uhr nachts hingegen, haben uns beigebracht, wie man bei sehr lautem Lärm auf dem ganzen Camp - teilweise ohne Ohrstöpsel - schläft … oder eben auch nicht! Die Erkenntnis daraus: Einige von uns sind im Zuge dessen zu Schlafhackern geworden.
Während es auf den meisten "normalen Camps" nicht selbstverständlich ist überhaupt Internet zu haben, waren wir enttäuscht keinen 10&nbsp;Gbps Glasfaser Port an unserem Switch zu haben und mussten uns so mit einem 1&nbsp;Gbps Kupferkabel zufrieden geben. Die Infrastruktur auf Seiten der Lichtinstallationen war hingegen deutlich fortschrittlicher ausgebaut.
Das Camp wäre natürlich ohne die Engel nicht möglich gewesen. Auch auf den Engelschichten haben wir sehr verschiedene Kompetenzen erlernt und coole andere Hacker kennengelernt. (Psycho hatte außerdem sehr viel Spaß beim Zugfahren durchs Camp)
Trotz der kleineren Bugs im Camp-Projekt, hat dies unsere Erwartungen stark übertroffen und unser Hackerherz mit nerdigen Sprüchen, Talks und Workshops höher schlagen lassen. Die Mate hat natürlich auch ihres dazu beigetragen.
Die Datenzwerge bestätigten uns nochmals die extreme Hitze:
{{< image alt="Ein kleiner, weißer Zwerg aus 3D-gedrucktem Plastik. Auf dem Sockel eine Plakette die erklärt, dass er ein Sensor ist der Daten sammelt." src="datenzwerg.jpeg" >}}
Genauso wie reguläre Messgeräte:
{{< image alt="Eine kleine digitale Temperaturanzeige die 39,8°C anzeigt, Luftfeuchte 33%" src="temperatur.jpeg" >}}
Es war einmal ein Postauto… wurde durch Psycho schnell zu einem privaten Gefährt der Chaos Post.
{{< image alt="Foto des Chaospost Landboots" src="postauto.jpg" >}}
Mit unserem [bewegungsappar.at] konnte phail begeisterte Bewegungshacker unterschiedlichen Alters erfreuen:
{{< image alt="Foto von unserem landgestützten Kanu, dem Bewegungsapparat." src="bewegungsapparat.jpg" >}}
Zum Abschluß noch ein paar Impressionen aus der bunt beleuchteten Nacht:
{{< image alt="Bunt beleuchtetes Camp bei Nacht" src="licht-1.jpg" >}}
{{< image alt="Bunt beleuchtete Spirale aus Metall und Glas bei Nacht" src="licht-2.jpg" >}}
{{< image alt="Blick über einige Zelte bei Nacht, alles ist bunt beleuchtet. Am rechten Rand unsere geodätische Kuppel." src="licht-3.jpg" >}}
[bewegungsappar.at]: https://bewegungsappar.at/

Binary file not shown.

Before

Width:  |  Height:  |  Size: 392 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 325 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 229 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 487 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 283 KiB

View File

@ -1,19 +0,0 @@
---
title: Sommergrillen 2023
author: xperimental
date: 2023-06-16
---
Wir wollen auch diesen Sommer bei uns im Innenhof grillen!
Für Getränke und einen Grill ist gesorgt.
Um eine kurze Anmeldung in unserem Matrix Raum ([Treffpunkt Garage](https://matrix.to/#/#garage:hacknology.de)) oder per E-Mail an [info@hacknology.de](mailto:info@hacknology.de) würden wir uns freuen.
___Wann:___
> 01.07.2023 ab 18:00Uhr
___Wo:___
> Parkplatz im Grenzbachareal, Tor am Ende der Schulthaißstraße (siehe [Treffpunkt]({{< ref "treffpunkt.md" >}}))

Binary file not shown.

Before

Width:  |  Height:  |  Size: 813 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 511 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 605 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 406 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 332 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 362 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 262 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 332 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 409 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 442 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 598 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 412 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 361 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 370 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 278 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 391 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 404 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 312 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 333 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 452 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 510 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 268 KiB

View File

@ -1,197 +0,0 @@
---
title: SmartSwitch
author: nerdyscout
status: Aktiv
difficulty: yes
time: ~2j
date: 2023-07-13
image: IMG_20221031_222240.jpg
keywords: iot, esp8266, switch, smart
---
{{< image alt="3 Platinen mir wilden Kabelgewirr" src="IMG_20221031_222240.jpg">}}
## 🚫 WARNUNG ##
Das hier vorgestellte Projekte beinhaltet Arbeiten an 230V Wechselspannung. Diese sollten nur von einer elektrischen Fachkraft durchgeführt werden.
Die [5 Sicherheitsregeln](https://de.wikipedia.org/wiki/F%C3%BCnf_Sicherheitsregeln) müssen jederzeit beachtet werden!
## 🎯 Motivation ##
Heutzutage muss ja alles "smart" sein und sich irgendwie in die Heimautomatisierung integrieren lassen. Um eine schnelle Lösung zu haben hatte ich vor einigen Jahren einfache IR-Bewegungsmelder gekauft, damit hatte ich eine autarke Insellösung. Jetzt war es an der Zeit diese mit einem zusätzlichen Wifi-Mikrocontroller auszustatten, sodass dann eine Integration in mein neues [HomeAssistent](https://www.home-assistant.io/) möglich ist.
## ⚒️ Demontage & Analyse ##
Im Vorfeld des Projektes wusste ich nicht ob eine Umsetzung mit den bereits vorhandenen Bewegungsmelder möglich sein wird, dies hat sich erst durch einiges experimentieren bestätigt. Grundsätzlich lässt sich alles folgende sicherlich auch mit anderen Bewegungsmeldern realisieren, wer das wirklich nachbauen will empfehle ich "conecto Infrarot Wand-Bewegungsmelder IP20" da ich hier gute Erfahrungen habe.
Als Erstes wurde der Bewegungsmelder komplett zerlegt sodas an den beiden darin befindlichen Platinen gemessen werden konnte.
<div class="pure-g">
{{< image alt="zwei demontierte Leiterplatten" src="IMG_20230706_203936.jpg" class="pure-u-1 pure-u-md-1-3">}}
{{< image alt="zwei Leiterplatten mit ihren Verbindungen zueinander" src="IMG_20230706_221236.jpg" class="pure-u-1 pure-u-md-1-3">}}
</div>
Die im Gehäuse unten befindliche Platine ist der Wechselspannungsteil, diese sollte niemals unter Spannungs angefasst werden! Schnell lässt sich erkennen dass das 12V Relais von einem Transistor geschalten wird. Ein weiterer Spannungsregler erzeugt 3.3Volt für die weitere interne Beschaltung.
Über das graue, abgeschnitte Flachbandkabel sind die beiden Platinen miteinander verbunden. Der linke Pin im Kabel ist Masse, ganz rechts außen befindet sich die Versorgungsspannung. Der vorletzte Pin rechts hat sich nach einigen messen als das relevante Signal herausgestellt um das Relais zu schalten, wofür die anderen Leitungen sind habe ich nie rausgefunden.
Auf der rechten Platine sind mittig der Infrarotsensor sowie eine Infrarotdiode. Mit den beiden Potis läst sich die Sensitivität einstellen bei welcher Beleuchtungsstärke eine Bewegung erkannt wird sowie die Dauer wie lange der Kontakt angeschalten bleibt. Leider konnte ich nicht mit Sicherheit rausfinden was der IC rechts unten genau ist. Meine Vermutung jedoch ist das es sich um ein Derivat eines NE556 handelt und es damit, zusammen mit den Potis und Kondensatoren, zwei monostabile Kippstufen sind.
<div class="pure-g">
{{< image alt="provisorischer Aufbau mit allen Komponenten" src="IMG_20220814-2216a.jpg" class="pure-u-1 pure-u-md-1-3">}}
{{< image alt="provisorischer Aufbau mit allen Komponenten" src="IMG_20221031_222240.jpg" class="pure-u-1 pure-u-md-1-3">}}
</div>
Hier sieht man wie das Flachbandkabel gegen eine provisorische Verdrahtung ausgetauscht wurde. Die beiden blauen Kabelenden im linken Bild sind das Schaltsignal was ich hier händisch betätigen konnte.
Da die Platine intern 3.3Volt verwendet versuchte ich lange Zeit den ESP8266 mit dieser Betriebsspannung zu versorgen - leider erfolglos. Ich vermute das durch die zusätzliche Stromaufnahme die Spannungsquelle an ihr Limit kommt und zusammen bricht. Damit war klar das ein zusätzlicher kleiner Spannungswandler mit angeschlossen werden muss. Dieser versorgt sich aus der 12V Leitung.
Damit der ESP8266 von seinem Flash bootet müssen die beiden Pins GPIO00 und GPIO02 (während des Bootvorgang) logisch high sein. Dies gilt es zu beachten wenn man ein vorhandenes Signal verbinden will, schließlich wäre es ärgerlich wenn der Kontroller nicht mehr bootet nachdem man alles eingebaut hat.
Somit waren alle relevanten Informationen zusammengetragen und Zeit sich um die Software zu kümmern.
## 👨‍💻 Software & Controller ##
Um möglich wenig Software selbst schreiben zu müssen griff ich auf das bestehende [espHome](https://esphome.io/) zurück. Damit lässt sich innerhalb kürzester Zeit die notwendigen Softwarekomponenten zusammenkonfigureren. Aufgrund des geringen verfügbaren Raums im Gehäuse ist für mir nur ein ESP01 Modul infrage gekommen. Daraus ergab sich eine Konfigurationsdatei wie folgt:
````
esphome:
name: esp
friendly_name: motion
name_add_mac_suffix: true
esp8266:
board: esp01_1m
ota:
password: !secret ota_password
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
ap: {}
captive_portal:
web_server:
port: 80
mqtt:
broker: !secret mqtt_broker
username: !secret mqtt_username
password: !secret mqtt_password
discovery: true
logger:
level: DEBUG
baud_rate: 0
#dallas:
# - pin: GPIO0
#sensor:
# - platform: dallas
# index: 0
# name: temperature
# - platform: adc
# pin: VCC
# name: voltage
binary_sensor:
- platform: gpio
id: input
name: presence
device_class: motion
pin:
number: GPIO2
inverted: false
mode:
input: true
pullup: true
switch:
- platform: gpio
id: status
name: led
pin:
number: GPIO1
inverted: true
- platform: gpio
id: output
name: relay
pin:
number: GPIO3
````
Zugangsdaten zum WLAN sowie MQTT Broker müssen in einer seperaten `secrets.yml` gesetzt werden. Auskommentiert ist eine zusätzliche Option einen Temperatursensor anzuschließen, dies sollte zwar funktionieren, habe ich jedoch nie versucht.
Die Konfiguration lässt sich mit `esphome run config.yml` über eine serielle Schnittstelle auf den ESP flashen. Jeder weitere Programmiervorgang kann später auch über das WIFI erfolgen.
Da ich drei der Sensoren umgebaut habe wurden gleich alle ESP geflashen und mit ihren IPs beschriftet. Das sich alle mit dem Gerätenamen "motion-{id}" melden lassen sich diese sonst später nur schwer unterscheiden.
## ⚒️ Neumontage ##
Jetzt ging es daran wieder alles zusammen zu bauen. Dabei waren noch ein paar kleine Modifikationen vorzunehmen:
<div class="pure-g">
{{< image alt="Sensorplatine" src="IMG_20230706_204217.jpg" class="pure-u-1 pure-u-md-1-3">}}
</div>
Auf dieser Platine musste der Schiebeschalter ausgelötet werden. Einerseits braucht es diesen nicht mehr da der ESP künftig genau dessen Funktion übernehmen wird, zum anderen ist er schlicht im Weg. Die beiden mittleren Pins wurden mit einem Lötklecks verbunden.
<div class="pure-g">
{{< image alt="ESP Modul von hinten" src="IMG_20230706_212444.jpg" class="pure-u-1 pure-u-md-1-3">}}
{{< image alt="ESP Modul von vorne" src="IMG_20230707_212916.jpg" class="pure-u-1 pure-u-md-1-3">}}
</div>
Am ESP wurden zwei Kabel angelötet und etwas Schrumpfschlauch vorgesehen. Der Widerstand ist ein 220k Pull-Down zwischen GPIO2 und GND, ein 0603 SMD Widerstand sollte sich alternativ auf der Vorderseite gut zwischen die Pins löten lassen. Die Pins VCC, /RESET und CH_PD wurden ebenfalls vorne miteinander verbunden.
<div class="pure-g">
{{< image alt="DCDC Wandler von vorne" src="IMG_20230707_195528.jpg" class="pure-u-1 pure-u-md-1-3">}}
{{< image alt="DCDC Wandler von hinten" src="IMG_20230707_195535.jpg" class="pure-u-1 pure-u-md-1-3">}}
</div>
Der Spannungswandler wir mit je einem roten Kabel für Ein- und Ausgangsspannung, sowie zwei schwarzen Kabeln, vorbereitet.
Auf der Rückseite lässt sich über eine Lötstelle die gewünschte Ausgangsspannung einstellen. Auf dem Bild ist noch die Option einer einstellbaren Spannung selektiert, besser ist es eine Lötverbindung bei 3.3V zu machen und den Kontakt bei ADJ zu unterbrechen.
<div class="pure-g">
{{< image alt="Frontdeckel mit markiertem Ausschnitt" src="IMG_20230706_212705.jpg" class="pure-u-1 pure-u-md-1-3">}}
{{< image alt="Frontdeckel mit ESP im vergrößertem Ausschnitt" src="IMG_20230706_213145.jpg" class="pure-u-1 pure-u-md-1-3">}}
{{< image alt="Frontdeckel mit eingefügtem DCDC-Wandler" src="IMG_20230706_213432.jpg" class="pure-u-1 pure-u-md-1-3">}}
</div>
Um genügend Platz für den ESP zu haben musste die Öffnung, wo bislang der Schiebeschalter drin war, etwas erweitert werden.
Ebenfalls ist auf dem Bild zu sehen das, neben den beiden Drehschaltern, ein zusätzliches Loch gebohrt wurde. Hier kommt der Spannungswandler durch.
<div class="pure-g">
{{< image alt="Frontdeckel von innen mit eingefügten ESP Modul und Verkabellung" src="IMG_20230706_215204.jpg" class="pure-u-1 pure-u-md-1-3">}}
{{< image alt="Frontdeckel mit DCDC-Wandler und ESP Modul" src="IMG_20230706_214619.jpg" class="pure-u-1 pure-u-md-1-3">}}
{{< image alt="Frontdeckel mit ESP Modul, DCDC Wandler, sowie beide original PCBs" src="IMG_20230706_222247.jpg" class="pure-u-1 pure-u-md-1-3">}}
</div>
Nun konnten die Komponenten Stück für Stück zusammen gesetzt werden. Angefangen mit dem ESP selbst, diesen in seine Öffnung reinschieben und dabei darauf achten das alle Kabel um die beiden Öffnungen für Infrarotsensor und -diode frei bleiben. Hierfür muste man die Pins ein klein wenig biegen.
Den Spannungsregler ebenfalls einfädeln und die Versorgungspins am ESP anschließen. Die Eingangsspannung des Reglers wurde an einem 12V Punkt von der Wechselspannungsplatine abgenommen.
<div class="pure-g">
{{< image alt="Verschraubt Frontplatine und eingefügte hintere Platine" src="IMG_20230707_215150.jpg" class="pure-u-1 pure-u-md-1-3">}}
{{< image alt="geschlossener Front mir herausragenden ESP Modul und DCDC Wandler" src="IMG_20230716_200415.jpg" class="pure-u-1 pure-u-md-1-3">}}
{{< image alt="Position beim Schließen der Reflektorfront" src="IMG_20230716_200827.jpg" class="pure-u-1 pure-u-md-1-3">}}
</div>
Anschließend kann die Frontplatine wider auf das Frontgehäuseteil geschraubt werden. Dabei ist darauf zu achten das kein Kabel eingequetscht wird. Ebenso kann es sein dass die Achsen der Potis verdreht sind.
Bevor das Frontteil wieder mit dem Unterteil zusammengefügt wurde unbedingt darauf achten dass der durchsichtige Kunststoffisolator wieder an seinem Platz ist!
ESP und Spannungsregler kommen dann in den Freiraum des äußersten Gehäuseteils.
<div class="pure-g">
{{< image alt="geschlossene Frontansicht" src="IMG_20230716_200948.jpg" class="pure-u-1 pure-u-md-1-3">}}
{{< image alt="geschlossene Frontansicht mit roter LED" src="IMG_20230716_201011.jpg" class="pure-u-1 pure-u-md-1-3">}}
{{< image alt="geschlossene Frontansicht mit blauer LED" src="IMG_20230716_201032.jpg" class="pure-u-1 pure-u-md-1-3">}}
</div>
Der Deckel passt drauf, alles ist wieder verbaut! Im ausgeschaltenen Zustand ist von der Modifikation nichts zu sehen. Wenn der Schalter regulär in der Wand verbaut ist wird die rote LED dauerhaft leuchten da es eine einfache Power-on LED auf dem ESP01 Modul ist.
<div class="pure-g">
{{< image alt="Screenshot der Weboberfläche von espHome" src="Screenshot.png" class="pure-u-1 pure-u-md-1-1">}}
</div>
Über das Webinterface des ESP Modules lässt sich dieses einfach bedienen. Mit dem Schiebeschalter "led" geht die blaue LED an/aus. Dies ist nützliche wenn man auf der Suche nach dem richtigem Gerät im Haus ist. Genauso könnte man natürlich auch einfach mit dem Schalter "relay" das Licht ein/aus schalten.
Eine Integration ins HomeAssistent erfolgt per [MQTT](http://wikipedia.org/wiki/MQTT/) hierfür wurden Topics angelegt:
````
home/raum1/motion-{id}/presence # Sensor status
home/raum1/motion-{id}/led ON # blaue Status LED
home/raum1/motion-{id}/relay OFF # schaltet den Ausgang aus
````

View File

@ -24,7 +24,7 @@ oder eingescannt per E-Mail an [vorstand@hacknology.de](mailto:vorstand@hacknolo
### Spenden
hacKNology erfüllt laut Bescheid des Finanzamts Konstanz vom 19.06.2023 die Voraussetzungen der §§ 51 ff. AO (Gemeinnützigkeit), und ist damit berechtigt, steuerbegünstigende Zuwendungsbestätigungen auszustellen.
hacKNology erfüllt laut Bescheid des Finanzamts Konstanz vom 19.7.2016 die Voraussetzungen der §§ 51, 59, 60 und 61 AO (Gemeinnützigkeit), und ist damit berechtigt, steuerbegünstigende Zuwendungsbestätigungen auszustellen.
Wir freuen uns über Geld- und [Sachspenden](sachspenden)!

View File

@ -13,12 +13,6 @@
<!-- SNS microblogging -->
{{ if .Site.Social.mastodon }}
<li class="pure-menu-item">
<a class="pure-menu-link" href="{{ .Site.Social.mastodon }}" target="_blank"><img src="{{ .Site.BaseURL }}images/mastodon.svg" />Mastodon</a>
</li>
{{ end }}
{{ with .Site.Social.twitter }}
<li class="pure-menu-item">
<a class="pure-menu-link" href="https://twitter.com/{{ . }}" target="_blank"><i class="fa fa-twitter-square fa-fw"></i>Twitter</a>

View File

@ -1,43 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
viewBox="0 0 658.2857 511.99999"
version="1.1"
id="svg4"
sodipodi:docname="mastodon.svg"
width="18"
height="14"
inkscape:export-filename="mastodon.png"
inkscape:export-xdpi="2.625"
inkscape:export-ydpi="2.625"
inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs8" />
<sodipodi:namedview
id="namedview6"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
showgrid="false"
inkscape:zoom="22.67957"
inkscape:cx="16.711075"
inkscape:cy="8.2453062"
inkscape:window-width="1366"
inkscape:window-height="699"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg4" />
<!--! Font Awesome Pro 6.2.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc. -->
<path
d="m 538.12652,179.11 c 0,-97.2 -63.71,-125.7 -63.71,-125.7 -62.52,-28.7 -228.56,-28.4 -290.48,0 0,0 -63.72,28.5 -63.72,125.7 0,115.7 -6.6,259.4 105.63,289.1 40.51,10.7 75.32,13 103.33,11.4 50.81,-2.8 79.32,-18.1 79.32,-18.1 l -1.7,-36.9 c 0,0 -36.31,11.4 -77.12,10.1 -40.41,-1.4 -83,-4.4 -89.63,-54 a 102.54,102.54 0 0 1 -0.9,-13.9 c 85.63,20.9 158.65,9.1 178.75,6.7 56.12,-6.7 105,-41.3 111.23,-72.9 9.8,-49.8 9,-121.5 9,-121.5 z m -75.12,125.2 h -46.63 v -114.2 c 0,-49.7 -64,-51.6 -64,6.9 v 62.5 h -46.33 V 197 c 0,-58.5 -64,-56.6 -64,-6.9 v 114.2 h -46.73 c 0,-122.1 -5.2,-147.9 18.41,-175 25.9,-28.9 79.82,-30.8 103.83,6.1 l 11.6,19.5 11.6,-19.5 c 24.11,-37.1 78.12,-34.8 103.83,-6.1 23.71,27.3 18.4,53 18.4,175 z"
id="path2"
style="fill:#999999;fill-opacity:1" />
</svg>

Before

Width:  |  Height:  |  Size: 2.1 KiB

View File

@ -5,8 +5,8 @@
"url": "https://www.hacknology.de",
"location": {
"address": "Blarerstraße 56, 78462 Konstanz, Germany",
"lon": 9.16594,
"lat": 47.65942
"lon": 9.1663822,
"lat": 47.6588626
},
"contact": {
"matrix": "#garage:hacknology.de",

@ -1 +1 @@
Subproject commit 99cf136a06f37375d26bda5d6dfadd6943fe8a58
Subproject commit 4c748f2e02b2e6964c424ac5e40b807919c3418f