alles

epa­per tags und an­de­re bild­schirm­chen

felix schwenzel in artikel

im lau­fe der jah­re habe ich in der au­to­ma­ti­schen woh­nung re­la­tiv vie­le bild­schirm­chen auf­ge­stellt, weil die au­to­ma­ti­sche woh­nung nicht nur ohne app und mo­bil­te­le­fon be­dien­bar sein soll, son­dern auch aus­ser­halb von apps und mo­bil­te­le­fo­nen mit uns kom­mu­ni­zie­ren kön­nen soll.

mei­ne weit­aus am häu­figs­ten ge­nutz­te in­for­ma­ti­on die ich ger­ne auf ei­nen blick er­ken­nen möch­te sind uhr­zeit. und da­tum. des­halb hängt die woh­nung voll mit uh­ren, nicht nur ku­ckucks­uh­ren, auch LED-ma­trix dis­plays. na­tür­lich ste­hen uhr­zeit und da­tum auch auf han­dies, arm­band­uh­ren, lap­tops und ipads, aber of­fen­sicht­lich ist es mir wich­tig über­all hin­se­hen zu kön­nen um die uhr­zeit oder das da­tum zu er­fah­ren. wenn ich kei­ne lust habe zu schau­en, be­ob­ach­te ich mich er­staun­lich oft dass ich im kin­der­zim­mer oder in der kü­che siri oder snips nach der uhr­zeit oder dem da­tum fra­ge. das ist vor al­lem prak­tisch, wenn man mit ge­schlos­se­nen oder ver­quol­le­nen au­gen im bett liegt. ge­gen den home­pod von ap­ple und app­les siri kann man viel sa­gen, aber was der wirk­lich gut kann ist auch die sehr lei­se ge­spro­che­ne fra­ge nach der uhr­zeit zu hö­ren und zu be­ant­wor­ten.

noch wich­ti­ger ist mir die zeit­um­stel­lun­gen zwei­mal im jahr nicht ma­nu­ell durch­füh­ren zu müs­sen. com­pu­ter und te­le­fo­ne be­kom­men das mitt­ler­wei­le gut al­lei­ne hin, aber na­tür­lich auch alle uh­ren die ir­gend­wie am home as­sistant hän­gen. die ein­zi­ge uhr die ich bei uns noch ma­nu­ell um­stel­len muss ist die der mi­cro­wel­le.

die mehr­heit un­se­rer dis­plays braucht eine kon­stan­te strom­ver­sor­gung. dis­plays, sen­so­ren oder ak­to­ren selbst aus esp8266s, esp32s oder ar­dui­nos zu bau­en ist dank es­phome wirk­lich ein­fach. bat­te­rie­be­trie­be­ne ge­rä­te selbst zu bau­en ist hin­ge­gen ver­gleichs­wei­se schwer. und mei­nen ers­ten selbst­ge­bau­ten epa­per-dis­play hat es auch schnell da­hin­ge­rafft, ent­we­der weil die trei­ber nicht gut op­ti­miert wa­ren oder ich ein­fach zu doof war das al­les her­stel­ler­spe­zi­fisch zu im­ple­men­tie­ren.

des­halb wur­de ich hell­hö­rig als ich hör­te, dass man die epa­per preis­schil­der die man mitt­ler­wei­le über­all sieht und be­kommt, leicht ha­cken kann. in­for­ma­tio­nen zu ein­zel­nen preis­schil­dern, ih­rer hacka­bi­li­ty und steue­rung wer­den im Ope­nE­Pa­per­Link re­po­si­ti­to­ry auf git­hub ge­sam­melt.

so sehr ich die idee mag aus­ge­mus­ter­te oder neue güns­ti­ge epa­per-dis­plays für ei­ge­ne zwe­cke zu nut­zen, so we­nig lust hat­te ich die auf­zu­ma­chen und ei­ge­ne firm­ware ein­zu­spie­len. im prin­zip ist das nicht all zu schwer, aber ich ent­schied mich den ein­fa­che­ren weg zu ge­hen: epa­per-schil­der zu kau­fen, die be­reits kom­pa­ti­bel sind.

da­mals, als ich da­für eine quel­le such­te, habe ich die kom­pa­ti­blen und BLE fä­hi­gen schild­chen nur bei ali­baba ge­fun­den (da­mals für ca. $10/stück). der pri­mä­re such­be­griff ist „Picksmart“, der pro­dukt­na­me bei ali­baba lau­tet:

Picksmart ODM 2.9 Inch 3 Co­lor Eink Elec­tro­nic Shelf La­bel ESL Epa­per BLE 5.0 Elec­tro­nic Pri­ce Tag Di­gi­tal Re­tail RED Dis­play

das schild­chen im flur zeigt an wenns (laut re­gen­ra­dar) re­gent, sonst ein wet­ter­sym­bol und die aus­sen­tem­pe­ra­tur. und na­tür­lich das da­tum.

um die din­ger zu steu­ern braucht man dann aber noch ei­nen zu­gangs­punkt, ac­cess point. auch dazu gibt es es ton­nen­wei­se doku bei Ope­nE­Pa­per­Link. ich habe mir ei­nen „AP“ aus ei­nen ESP32-S3 mit dis­play und ESP32-C6 ge­baut (spa­ghet­ti AP). den fer­tig ge­bau­ten AP hab ich dann in un­se­ren „ser­ver­raum“ ge­stellt, wo er sich gut mit den drei preis­schil­dern ver­bin­den kann.

der Ope­nE­Pa­per­Link „spa­ghet­ti AP“ im ser­ver­raum. theo­re­tisch kann man auf dem auch rum­ma­len oder be­li­bi­ge in­hal­te an­zei­gen las­sen, aber die sieht im ser­ver­raum ja nie­mand.

im web­in­ter­face des APs kann man be­reits in­hal­te de­fi­nie­ren, die auf den epa­per-schild­chen ge­zeigt wer­den kön­nen (da­tum, count­downs, wet­ter, bil­der, ka­len­der, etc.) aber richtg in­ter­es­sant wird das na­tür­lich erst mit home as­sistant, dort lie­gen schliess­lich alle mei­ne da­ten, vor al­lem ge­nau die wet­ter­da­ten, die ich auch an­zei­gen will: reg­nets? wenn ja, wann ge­nau und wie stark? und die ewi­ge fra­ge: wel­cher tag ist heu­te?

die home as­sistant in­te­gra­ti­on für den Ope­nE­Pa­per­Link hat ge­ra­de ei­nen gros­sen ver­si­ons­sprung hin­ge­legt und kann an­geb­lich auch ohne den AP mit be­stimm­ten tags re­den.

This re­lease in­tro­du­ces sup­port for di­rect com­mu­ni­ca­ti­on with ATC BLE tags via Blue­tooth Low En­er­gy (BLE). This me­ans an AP is no lon­ger re­qui­red for in­ter­ac­ting with tags that sup­port BLE.

wel­che preis­schil­der das sind habe ich noch nicht re­cher­chiert, mei­ne wer­den je­den­falls nicht ge­fun­den und ATC BLE be­deu­tet wohl: tags mit der ge­flash­ten/ge­hack­ten ATC cus­tom firm­ware.

in home as­sistant kann man mit der in­te­gra­ti­on dann be­lie­big auf den preis­schil­dern rum­ma­len. so sieht die ak­ti­on aus, mit der ich ein wet­ter-icon, die tem­pe­ra­tur und das da­tum auf die din­ger schrei­be.

action: open_epaper_link.drawcustom
target:
  device_id:
    - 0757317ceda12c6b521765bdf6987139
    - bc59cd23287f1d22d3f2d90b5900cdbd
data:
  background: white
  dry-run: false
  ttl: 360
  payload:
    - type: text
      font: ppb.ttf
      x: 198
      "y": 42
      anchor: mm
      color: red
      value: >-
        {{
        ['Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag','Sonntag'][now().weekday()]
        }}
      size: >-
        {% set tagesname =
        ['Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag','Sonntag']
        [now().weekday()]  %} {% if tagesname|length == 6 %} 48 {% elif
        tagesname|length == 7 %} 41 {% elif tagesname|length == 8 %} 36 {% elif
        tagesname|length == 10 %} 26 {% else %} 26 {% endif %}
    - type: text
      value: >-
        {% set tagesdatum = now().day|string %}  {% set monatsname =
        ['Januar','Februar','März','April','Mai','Juni','Juli','August','September','Oktober','November','Dezember']
        [now().month|int()-1]  %} {{ tagesdatum }}. {{ monatsname }}      
      font: ppb.ttf
      x: 198
      "y": 84
      anchor: mm
      size: 28
      color: black
    - type: icon
      value: >-
        {% set condition = states('weather.dwd_berlin_tegel') %}  {%if
        (condition == "sunny") %}{{"weather-sunny"}} {%elif (condition ==
        "clear-night") %}{{"weather-night"}} {%elif (condition ==
        "cloudy")%}{{"weather-cloudy"}} {%elif (condition ==
        "fair")%}{{"weather-sunny"}} {%elif (condition ==
        "sunny")%}{{"weather-sunny"}} {%elif (condition == "fog")%}
        {{"weather-fog"}} {%elif (condition == "pouring")%}
        {{"weather-pouring"}} {%elif (condition == "heavyrainandthunder")%}
        {{"weather-lightning-rainy"}} {%elif (condition == "heavyrainshowers")%}
        {{"weather-pouring"}} {%elif (condition ==
        "heavyrainshowersandthunder")%}{{"weather-fog"}} {%elif (condition ==
        "heavysleet")%}{{"weather-snowy-heavy"}} {%elif (condition ==
        "heavysleetandthunder")%}{{"weather-snowy-heavy"}} {%elif (condition ==
        "heavysleetshowers")%}{{"weather-snowy-rainy"}} {%elif (condition ==
        "heavysleetshowersandthunder")%}{{"weather-snowy-rainy"}} {%elif
        (condition == "heavysnow")%}{{"weather-snowy-heavy"}} {%elif (condition
        == "heavysnowandthunder")%}{{"wweather-snowy-rainy"}} {%elif (condition
        == "heavysnowshowers")%}{{"weather-snowy-heavy"}} {%elif (condition ==
        "heavysnowshowersandthunder")%}{{"weather-snowy-heavy"}} {%elif
        (condition == "lightrain")%}{{"weather-rainy"}} {%elif (condition ==
        "lightrainandthunder")%}{{"weather-lightning-rainy"}} {%elif (condition
        == "lightrainshowers")%}{{"weather-partly-rainy"}} {%elif (condition ==
        "lightrainshowersandthunder")%}{{"weather-partly-lightning"}} {%elif
        (condition == "lightsleet")%}  {{"weather-snowy-rainy"}} {%elif
        (condition == "lightsleetandthunder")%}{{"weather-snowy-rainy"}} {%elif
        (condition == "lightsleetshowers")%}  {{"weather-snowy-rainy"}} {%elif
        (condition == "lightsnow")%}  {{"weather-snowy"}} {%elif (condition ==
        "lightsnowandthunder")%}{{"weather-snowy"}} {%elif (condition ==
        "lightsnowshowers")%}{{"weather-snowy-rainy"}} {%elif (condition ==
        "lightssleetshowersandthunder")%}{{"weather-snowy-rainy"}} {%elif
        (condition == "lightssnowshowersandthunder")%}{{"weather-snowy-rainy"}}
        {% elif (condition == "partlycloudy") and states("sun.sun") ==
        "above_horizon"%}{{"weather-partly-cloudy"}} {% elif (condition ==
        "partlycloudy") and states("sun.sun") ==
        "below_horizon"%}{{"weather-night-partly-cloudy"}} {% elif (condition ==
        "rainy")%}{{"weather-rainy"}} {%elif (condition ==
        "rainandthunder")%}{{"weather-lightning-rainy"}} {%elif (condition ==
        "rainshowers")%}{{"weather-partly-rainy"}} {%elif (condition ==
        "rainshowersandthunder")%}{{"weather-lightning-rainy"}} {%elif
        (condition == "sleet")%}{{"weather-snowy"}} {%elif (condition ==
        "sleetandthunder")%}{{"weather-snowy"}} {%elif (condition ==
        "sleetshowers")%}{{"weather-snowy"}} {%elif (condition ==
        "sleetshowersandthunder")%}{{"weather-snowy"}} {%elif (condition ==
        "snow")%}{{"weather-snowy"}} {%elif (condition ==
        "snowandthunder")%}{{"weather-snowy"}} {%elif (condition ==
        "snowshowers")%}{{"weather-snowy"}} {%elif (condition ==
        "snowshowersandthunder")%}{{"weather-snowy"}} {%elif (condition ==
        "snowy")%}{{"weather-snowy"}} {% else %} {{"cloud-question"}} {% endif
        %}
      x: 10
      "y": 10
      size: 80
      color: black
    - type: text
      value: "{{ states(\"sensor.temperature_berlin_tegel\") | float(-1) | round(0) }}°"
      font: ppb.ttf
      x: 50
      "y": 104
      size: 32
      color: black
      anchor: mm

die epa­per schild­chen lau­fen hier jetzt seit ok­to­ber 2024 pro­blem­los. die bat­te­rien las­sen sich tau­schen und weil die tags ma­gne­tisch sind, las­sen sie sich auch über­all hin­hän­gen. ich mag die dis­plays sehr, auch weil sie gut ab­les­bar sind, aber mehr von de­nen muss ich mir nicht un­be­dingt kau­fen. aus­ser mir fällt noch was ein, wo sie wirk­lich nütl­zich sein könn­ten.










ta­ge­buch 13.09.2025

felix schwenzel in artikel

die bei­fah­re­rin fuhr heu­te ins ate­lier, so hat­ten fri­da und ich heu­te nach dem mor­gen­spa­zier­gang sturm­freie bude. nach dem mit­tags­schlaf habe ich mich mal wie­der um die au­to­ma­ti­sche woh­nung ge­küm­mert. die hat in letz­ter zeit we­nig auf­merk­sam­keit und lie­be be­kom­men. er­freu­lich ist aber, dass trotz ver­nach­läs­si­gung wei­ter­hin (meis­tens) (fast) al­les funk­tio­niert. bis auf ein paar sa­chen die nicht mehr funk­tio­nier­ten oder nach up­dates rie­fen.

die meis­ten un­se­rer lich­ter sind mitt­ler­wei­le nicht nur LEDs, son­dern auch zig­bee ge­steu­ert. eine wil­de mi­schung aus ikea, phil­ips hue und al­len mög­li­chen an­de­ren her­stel­lern, die sich aber sehr gut mit zig­bee2mqtt zu­sam­men­fas­sen, grup­pie­ren und steu­ern las­sen. ich habe ei­nen LAUN­CHXL-CC26X2R1 con­trol­ler der an ei­nem raspber­ry pi hängt auf dem zig­bee2mqtt läuft. ei­gent­lich klappt das ganz gut, aber nach vier bis acht wo­chen zickt der con­trol­ler ge­le­gent­lich und das sys­tem will neu­ge­star­tet wer­den. ner­vi­ger­wei­se star­tet der raspber­ry seit ei­ner wei­le nicht mehr, wenn der zig­bee-con­trol­ler per usb ein­ge­stöp­selt ist. al­les, was nicht ohne ma­nu­el­len ein­griff au­to­ma­ti­sier­bar ist, nervt. wenn der raspber­ry sich ein­fach neu­star­ten lies­se und ohne ste­cker-stöp­seln wie­der hoch­kä­me, könn­te ich ein­fach eine au­to­ma­ti­on schrei­ben, die alle vier wo­chen, sonn­tags um vier uhr den raspber­ry neu­star­tet.

also de­bug­gen, zu­erst habe ich die 32 bit ver­si­on des be­treibs­sys­tems auf ei­ner neu­en SD kar­te in­stal­liert, aber auch so liess er sich nicht mit ein­ge­stöp­sel­tem zig­bee-con­trol­ler neu­star­ten. port wech­sel brach­ten auch nichts, bis ich den se­rie­len an­schluss mit dem ich un­se­rer un­ter­bre­chungs­freie strom­ver­sor­gung (USV) mo­ni­to­re mal test­wei­se raus­zog. ohne den liess sich der raspber­ry auch mit zig­bee-con­trol­ler neu­star­ten! weil der USV an ei­nem usb-ver­län­ge­rungs­ka­bel hing, hat­te ich das ka­bel im ver­dacht, tausch­te es aus und: voi­là! klappt!

dann noch zig­bee2mqtt auf die neu­es­te ver­si­on ak­tua­li­siert, lief auch gut.

was mich auch nerv­te war ei­ner un­se­rer epa­per tags der ei­gent­lich fei­er­ta­ge oder doo­fe KI-ge­ne­rier­te sprü­che an­zei­gen soll­te, zeig­te seit über drei mo­na­ten „heu­te ist pfingst­mon­tag“ an. ich habe da jetzt erst­mal was phan­ta­sie­lo­ses selbst drauf ge­schrie­ben und mir über­legt dort viel­leicht die raum­luft-qua­li­tät an­zu­zei­gen, bzw. ei­nen lüf­tungs-re­min­der draus zu ma­chen. be­vor ich das an­gingt woll­te die steu­er­soft­ware und die home as­sistant in­te­gra­ti­on ak­tua­li­siert wer­den. er­staun­li­cher­wei­se lief das auch glatt, trotz ei­nes kit­ze­klei­nen brea­king ch­an­ges.

next: un­ser bil­li­ger chi­ne­si­scher GPS tra­cker lie­fer­te seit dem 13.08.2025 kei­nen GPS fix mehr. also hab ich mir mal die logs an­ge­schaut, chatGPT um tipps ge­fragt, bis wir merk­ten, dass wei­ter­hin GPS da­ten an trac­car ge­lie­fert wer­den, al­ler­dings mit ei­nem zeit­stem­pel vom ja­nu­ar 2006 — und zwar dau­er­haft. trac­car ver­wirft die­se GPS da­ten als un­gül­tig, wer will denn auch 19 jah­re alte GPS da­ten ver­ar­bei­ten? er­freu­li­cher­wei­se lässt sich trac­car über­re­den die da­ten dann doch an­zu­neh­men wenn man dies der kon­fi­gu­ra­ti­on hin­zu­fügt:

<entry key='time.override'>serverTime</entry>
<entry key='time.protocols'>h02</entry>

dann noch­mal zig­bee: auch wenn ich die vie­len xiao­mi sen­so­ren die wir hier nut­zen sehr lie­be, fie­len sie stän­dig aus dem zig­bee-netz­werk. das ist wohl ein be­kann­tes pro­blem und hängt mit dem zu­sam­men­spiel mit an­de­ren zig­bee-ge­rä­ten zu­sam­men. ir­gend­wann hat­te ich die idee mei­nen in der schub­la­de lie­gen­den ZBT 1 zu ak­ti­vie­ren und für die xiao­mi sen­so­ren ein ei­ge­nes zig­bee-netz­werk auf­zu­span­nen. die zwei­te zig­bee2mqtt in­stal­la­ti­on die ich auf ei­nem wei­te­ren raspber­ry pi in­stal­lier­te war ein durch­schla­gen­der er­folg: die sen­so­ren blei­ben dau­er­haft ver­bun­den. weil ich noch nicht alle sen­so­ren um­ge­zo­gen hat­te, wa­ren heu­te zwei wei­te­re dran, die noch im al­ten netz­werk wa­ren und sich da be­reits aus dem al­ten netz­werk ent­bun­den hat­ten.

nach­dem ich noch ein paar bat­te­rien von zig­bee-schal­tern aus­ge­tauscht habe, hat sich fri­da ge­mel­det und woll­te lang­sam zum nach­mit­tags­spa­zier­gang raus. wir sind dann vom wed­ding zur beus­sel­stras­se ge­lau­fen um dort die bei­fah­re­rin kurz zu be­su­chen.

auf dem weg fiel mir er­neut auf, dass die BSR of­fen­bar über­all in ber­lin die müll­ei­mer noch oben ge­scho­ben hat. ent­we­der will die BSR ver­hin­dern dass roll­stuhl­fah­rer und kin­der müll dort ein­fül­len kön­nen oder will er­rei­chen, dass die pfand­fi­scher ihre arme nicht mehr in die müll­ei­mer ein­füh­ren kön­nen. bei­des ist spe­ku­la­tiv und fühlt sich ir­gend­wie aso­zi­al an. viel­leicht is­ses aber auch nur was ganz harm­lo­ses oder bü­ro­kra­ti­sches, wie ar­beits­si­cher­heit oder er­go­no­mie, da­mit sich die BSR-mit­ar­bei­ten­den nicht mehr beim ent­lee­ren bü­cken müs­sen.

bild eines ICE an der s-bahnhaltestelle beusselstrasse

als ich die­sen blick von der beus­sel­stras­sen-brü­cke sah, dach­te ich: ber­lin sieht manch­mal schon wie eine bül­ler­bü-mo­de­lei­sen­bahn aus. dann fiel mir das gute alte tilt-shift ein und ich bat chatGPT das bild tilt zu shif­ten.

bild eines ICE an der s-bahnhaltestelle beusselstrasse mit tilt-shift-filter

was mich an die­sem bild am meis­ten wun­der­te: chatGPT be­haup­te­te nicht nur dass es die­sen fil­ter an­wen­den könn­te, son­dern es mach­te es dann auch tat­säch­lich und liess mich das bild run­ter­la­den. nor­ma­ler­wei­se fin­det es im­mer ir­gend­wel­che aus­re­den, war­um et­was dann doch nicht geht.

auf der waa­ge stan­den heu­te zum ers­ten mal 101 kilo. zwar nach dem kom­ma im­mer noch mit ei­ner neun, aber das heisst seit­dem ich die 102 vor dem kom­ma hier er­wähnt habe, sind 9 tage ver­gan­gen und das wie­der­rum heißt, ich neh­me wei­ter ab, aber et­was lang­sa­mer als im au­gust. da wa­ren es so um die 200 gramm/tag, jetzt so um die 110 gramm/tag. die ge­glät­te­te kur­ve mei­ner wää­gun­gen be­stä­tigt das.

geglättete grafik meines gewichts seit dem januar 2025. man sieht seit dem juni eine fallende kurve die im juli steiler als im august und september ist.

mus­kel­ab­bau scheint bis­her noch kein pro­blem zu sein, den par­ty­trick mit dem ich das kind vor 15 jah­ren er­folg­reich be­ein­druck­te, in dem ich die bei­fah­re­rin mit ei­ner hand hoch­hob, den kann ich im­mer noch. das­nuf pro­vo­zier­te mich aus­zu­pro­bie­ren, ob ich mit ei­nem beim aus dem sit­zen auf­ste­hen kön­ne — und tat­säch­lich so­wohl von dem ho­cker auf dem ich ar­bei­te, als auch vom sofa kann ich mit ei­nem beim auf­ste­hen. also nicht ganz: im lin­ken bein fehl­te mir et­was kraft um vom sofa hö­her als 30 cm zu kom­men. aber aus ho­cker-po­si­ti­on, klappts mit bei­den bei­nen. klimm­zü­ge klap­pen wei­ter­hin nur zu ca. 30%, aber da­für kann ich das drei­mal wie­der­ho­len. bei den lie­ge­stüt­zen hab ich mich lang­sam wie­der zu 20 stück hoch­trai­niert, da will ich wie­der zu 100 kom­men, wie vor 30 jah­ren.



ana­log zum „wenn ein baum um­fällt und nie­mand hört es, macht er dann ein ge­räusch?“ habe ich mich eben ge­fragt: „wenn ich 1,5 ki­lo­me­ter lau­fe und die ap­ple watch zeich­net die stre­cke nicht auf (weil sie ge­ra­de lädt), bin ich die 1,5 ki­lo­me­ter dann ge­lau­fen?



mi­ni-park an der ex­er­zier­stras­se

felix schwenzel in bilder

wenn fri­da und ich durch die stadt strei­fen zieht es fri­da im­mer in ecken in de­nen es grün ist, wo sie dann hofft im un­ter­holz nach beu­te stö­bern zu kön­nen, oder wo es nach dö­ner riecht, wo sie dann res­te auf dem bo­den auf­stö­bern kann. ich schau im­mer da­nach, ob man ir­gend­wo ab­bie­gen kann oder es eine ab­kür­zung oder fo­to­mo­ti­ve gibt. heu­te ha­ben wir an der ex­er­zier­stras­se bei­de ei­nen weg ge­se­hen, der uns vor­her ent­gan­gen war, aber in­ter­es­sant für uns bei­de aus­sah.

am weg, oder der ein­fahrt stand zwar „pri­vat“ und ein­tritt nur für an­woh­ner (oder so), aber im hin­ter­grund der ein­fahrt, die eher ein brei­ter weg war, gab es dort müll­ei­mer, die aus­sa­hen wie müll­ei­mer die sonst nur in parks ste­hen.

tat­säch­lich ka­men wir nach ein paar wohn­häu­sern, ei­nem kin­der­gar­ten und ei­nem spiel­platz in so­et­was wie ei­nen park, ei­nen hin­ter­hof-park mit bän­ken, müll­ei­mern und viel grün. durch­gän­ge zu den um­lie­gen­den häu­sern gabs kei­ne. al­les her­me­tisch ab­ge­zäunt. für ei­nen mini-park war die grün­flä­che dann schon recht gross und ich nahm mir vor zu­hau­se auf goog­le maps zu schau­en wie der park heißt. aber auf goog­le maps gibts dazu nichts, kei­nen na­men, kei­ne mar­kie­rung. nur in der sa­tel­li­ten­an­sicht sieht man das un­be­bau­te grün.

panoramabild des unbenannten parks an der exerzierstrasse
pan­ora­ma­bild (nach dem klick)


ge­fan­gen in der ge­gen­wart

felix schwenzel

YouTube Video Vorschaubild
youtube-video laden, info, direktlink

et­was an­stren­gend die oben ein­ge­bett­te fol­ge star talk weil der si­de­kick zu wit­zig sein will. aber neil de­gras­se ty­son und charles liu ha­ben zwei schö­ne zi­ta­te fal­len las­sen, die ich ger­ne no­tie­ren möch­te.

We are pri­soners of the pre­sent, fo­re­ver tran­si­tio­ning bet­ween our in­ac­ces­si­ble past and our unkno­wa­ble fu­ture.
neil degrasse tyson
Yes­ter­day is histo­ry,
to­mor­row is a mys­tery, 
and to­day is a gift... 
tha­t's why they call it pre­sent


prä­sen­tie­ren

felix schwenzel

für mich ist bei prä­sen­ta­tio­nen oft der weg in­ter­es­san­ter als das prä­sen­tier­te. so schaue ich die sen­dung mit der maus mit der in­ten­ti­on an, ge­ge­be­nen­falls et­was neu­es zu ler­nen oder zu er­fah­ren, aber ge­nau so in­ter­es­sant fin­de ich die di­dak­tik da­hin­ter. das glei­che gilt auch für ver­an­stal­tun­gen, auf de­nen neue pro­duk­te vor­ge­stellt wer­den. das ei­gent­lich in­ter­es­san­te sind die me­tho­den, mit de­nen be­gehr­lich­kei­ten oder neu­gier ge­weckt wer­den.

ste­ve jobs mar­ke­ting-di­dak­tik zu se­hen, war ein gros­ses ver­gnü­gen. bes­tes bei­spiel: sei­ne ipho­ne-vor­stel­lung. er kün­dig­te da­mals drei „re­vo­lu­tio­nä­re“ neue pro­duk­te an: ei­nen ipod mit touch­screen, ein neu­es mo­bil-te­le­fon und ein neu­ar­ti­ges In­ter­net-Kom­mu­ni­ka­ti­ons­ge­rät.

in echt sei­en das aber kei­ne drei ge­rä­te, er­zähl­te er dann, son­dern eins. und ap­ple wür­de es „ipho­ne“ nen­nen. und so sähe es aus.

ste­ve jobs bau­te sei­ne prä­sen­ta­tio­nen eben nicht nur di­dak­tisch, er­zäh­le­risch klug und hu­mor­voll auf, son­dern vor al­lem un­lang­wei­lig und un­vor­her­seh­bar.

je­den­falls ha­ben ste­ve jobs’ prä­sen­ta­ti­on dazu ge­führt, dass ich mir die­se ver­an­stal­tun­gen re­gel­mäs­sig (wie die sen­dung it der maus) an­schaue. mal in der hoff­nung neu­es zu er­fah­ren, mal um un­ter­hal­ten zu wer­den, mal in der hoff­nung et­was über das hand­werks­zeug zu ler­nen, wie man be­gehr­lich­kei­ten weckt, wie man ein pu­bli­kum fes­selt (im wahrs­ten sin­ne des wor­tes), wie man er­in­ne­run­gen pro­du­ziert. seit ges­tern habe ich die lust dar­an ver­lo­ren, mir die­se ver­an­stal­tun­gen an­zu­se­hen. app­les pro­dukt­vor­stel­lun­gen ha­ben sich seit jobs tod im­mer wie­der ge­wan­delt, die prä­sen­ta­ti­ons­las­ten wur­den auf meh­re­re schul­tern ver­teilt, die er­zähl­struk­tu­ren wur­den ge­strafft und zur pan­de­mie wech­sel­te man von ei­nem live-for­mat auf ein durch­cho­reo­grap­fier­tes vor-auf­ge­zeich­ntes for­mat. das war teil­wei­se im­mer noch fas­zi­nie­rend an­zu­se­hen, vor al­lem we­gen der im­mer aus­ge­feil­te­ren tech­ni­schen per­fek­ti­on, dem of­fen­sicht­li­chen wil­len auch hu­mor ein­zu­streu­en und der nach wie vor (ge­le­gent­lich) vor­han­de­nen über­ra­schungs­mo­men­ten.

ges­tern hab ich ich wohl eine über­do­sis be­kom­men. die prä­sen­ta­ti­on war so steif, so vor­her­seh­bar, hu­mor­be­freit und voll­ge­stopft mit su­per­la­ti­ven und ad­jek­ti­ven, dass ich mich zu tode lang­weil­te und bei­na­he ekel­te, als hät­te ich mich über­fres­sen.

am vor­tag der ap­ple prä­sen­ta­ti­on ver­link­te john gru­ber ein pro­dukt­vor­stel­lungs­vi­deo von dys­on. das vi­deo ist vor alem im kon­trast zur ap­ple ver­an­stal­tung be­mer­kens­wert. ob­wohl ich noch nie in mei­nem le­ben ein dys­on pro­dukt ge­kauft habe und das wohl auch nie tun wer­de, hat die prä­sen­ta­ti­on ei­nen völ­lig an­de­ren vibe und doch den glei­chen ef­fekt wie die ap­ple pro­dukt­vor­stel­lun­gen. der schwer­punkt der prä­sen­ta­ti­on ist die funk­ti­on, su­per­lat­ve und ad­jek­ti­ve wer­den durch dys­ons ver­meint­li­che zer­streut­heit und eu­pho­rie auf­ge­lo­ckert. am ende er­reicht dys­on das glei­che ziel wie die ap­ple-prä­sen­ta­tio­nen: man denkt da­nach, die pro­duk­te die man eben ge­se­hen hat schei­nen et­was ganz be­son­de­res zu sein, man merkt sich und macht sich die eben ge­hör­ten tal­king-points zu ei­gen und trägt sie im bes­ten fall wei­ter.

ne­ben all den ner­vi­gen, steif vor­ge­tra­ge­nen ad­jek­tiv-la­wi­nen und su­per­la­ti­ven, war das er­schüt­terns­te an der ap­ple prä­sen­ta­ti­on wohl, dass die stei­fe mar­ke­ting-spra­che aus al­len prä­sen­tie­ren­den das le­ben, die in­di­vi­dua­li­tät eli­mi­nier­te. die auf­tre­ten­den fi­gu­ren wur­den aus­tausch­bar und ro­bo­to­es­que. ich dach­te ap­ple hat­te sich mal der di­ver­si­tät und an­ders­ar­tig­keit ver­schrie­ben? jetzt scheint im ap­ple-mar­ke­ting nur noch glät­te und per­fek­ti­on zu zäh­len. höchs­te zeit, dass ap­ple mal wie­der rich­tig scheis­se baut — oder prä­sen­tiert.



die sa­che mit der of­fen­heit

felix schwenzel in artikel

mike mas­nick ge­wohnt aus­führ­lich, in ca. 2400 wor­ten, über die ten­denz das „of­fe­ne web“ mehr und mehr zu ver­ram­meln:

Across the tech po­li­cy world, peo­p­le who spent de­ca­des fight­ing for an open, ac­ces­si­ble in­ter­net are now chee­ring as that same in­ter­net gets lo­cked down, wal­led off, and rest­ric­ted. Their re­aso­ning? If it hurts AI com­pa­nies, it must be good.

ich bin da ei­ner­seits bei mike mas­nick, an­de­rer­seits … naja, is halt al­les nicht so ein­fach.

ei­ner mei­ner mu­sik­leh­rer, den ich ex­trem doof und un­sym­pa­thisch fand, sag­te mal: „wer nach al­len sei­ten of­fen ist, kann nicht ganz dicht sein.“ im wort­wört­li­chen sin­ne stim­me ich die­sem satz ohne zu zö­gern zu, er stimmt se­man­tisch und py­si­ka­lisch auch. viel­leicht stimmt er aber auch im über­tra­ge­nen sinn? ich ver­mu­te of­fen­heit ist wie gift; es kommt halt auf die do­sis an. kürz­lich habe ich ge­lernt, dass air­pods aus ak­kus­ti­schen grün­den of­fen sein müs­sen, also luft ein-und aus­las­sen müs­sen, an­de­rer­seits aber was­ser draus­sen hal­ten müs­sen. so sind air­pods zwar nach al­len sei­ten of­fen, aber trotz­dem ziem­lich dicht (zu­min­dest nach IPX4).

auf das „of­fe­ne web“ be­zo­gen wür­de ich sa­gen, dass ich es na­tür­lich toll fin­den wür­de wenn in­sta­gram oder mei­net­we­gen auch face­book, goog­le et al of­fe­ne APIs an­bie­ten wür­den, wenn es kei­ne pay­walls ge­ben wür­de oder ich mei­ne lieb­lings­se­ri­en nicht nur emp­feh­len, son­dern auch ver­lin­ken oder gleich hier ein­bet­ten könn­te wie you­tube vi­de­os. ich fän­de es toll wenn we­nigs­tens die öf­fent­lich recht­li­chen sen­der ihre sen­dun­gen mit per­ma­nent links ver­se­hen wür­den die, in­klu­si­ve der mp4-vi­deo­da­tei­en län­ger als 2 mo­na­te gleich blei­ben wür­den. wenn die sen­dung mit der maus ihr sen­d­ung­ar­chiv of­fen im in­ter­net ste­hen ha­ben wür­de. das wür­de ich al­les be­grüs­sen.

aber ge­nau­so ver­ste­he ich, dass über­all in­ter­es­sen ab­ge­wo­gen wer­den, dass ge­schäfts­mo­del­le oder die fä­hig­keit ho­no­ra­re oder ge­häl­ter aus­zu­zah­len, auch im­mer mit ei­ner ein­schrän­kung der of­fen­heit ein­her­ge­hen und es auch schon im­mer ta­ten. nicht dass ich dazu et­was wüss­te, aber was wäre das berg­hain mit ei­ner of­fe­nen tür? manch­mal ent­steht of­fen­heit erst hin­ter ge­schlos­se­nen tü­ren. manch­mal will man luft rein und raus­las­sen, aber feuch­tig­keit draus­sen hal­ten.


ich habe laut ma­to­mo pro tag, an nor­ma­len ta­gen, an de­nen kein an­de­res blog be­su­cher hier­her­schau­felt, so um die 150 bis 200 be­su­cher (uni­que vi­sits). laut cloud­fla­re habe ich in den letz­ten 24 stun­den ca. 7000 uni­que vi­sits ge­habt. wenn ich rich­tig ge­rech­net habe, sind also 97% mei­ner be­su­cher bots, craw­ler oder nut­zer die ja­va­script ab­ge­schal­tet ha­ben oder ma­to­mo blo­cken. vie­le da­von sind si­cher­lich ganz le­gi­tim hier, rss feeds che­cken, sei­ten für die su­che in­de­xie­ren oder um gros­se sparch­mo­del­le zu trai­nie­ren. ich bin da of­fen und schlies­se nie­man­den aus — aus­ser auf sei­ten die äl­ter als 5 jah­re sind. die möch­te ich nicht in­de­xiert ha­ben, weil ich kei­ne lust habe we­gen ei­nes screen­shots oder bil­des des­sen rech­te nicht zu 100% ge­klärt sind post zu be­kom­men. mei­ne of­fen­heit hat also auch gren­zen, man­che aus tech­ni­schen grün­den, man­che weil ich mir da mal was über­legt habe und da­nach nie wie­der in fra­ge ge­stellt habe, man­che aus un­acht­sam­keit.

un­ten im fuss mei­ner web­sei­te steht, dass mei­ne in­hal­te ei­ner (ver­al­te­ten) crea­ti­ve com­mons li­zenz un­ter­lie­gen. die ist so of­fen, dass je­der ar­ti­kel und bil­der von mir neh­men kann und sie tei­len und be­ar­bei­ten darf, so­lan­ge sie mei­nen na­men nen­nen und die wei­ter­ga­be un­ter den glei­chen be­din­gun­gen li­zen­zie­ren wie ich. das ist wohl sehr of­fen, aber eben auch ein biss­chen ver­schlos­sen.

in ame­ri­ka, zu­min­dest auf dem land, las­sen fast alle men­schen ihre tü­ren of­fen. gleich­zei­tig muss man da­mit rech­nen, dass man er­schos­sen wird, wenn man im länd­li­chen ame­ri­ka ein frem­des grund­stück oder haus be­tritt. mein freund hei­ner schloss sei­ne erd­ge­schoss-woh­nung, zu­min­dest den hin­ter­ein­gang, auch nie ab. die woh­nung hat troz­dem nie je­mand be­tre­ten, der sie nicht be­tre­ten soll­te. das liegt wahr­schein­lich auch dar­an, dass auch fast nie­mand das dorf (gi­chen­bach), in dem die woh­nung lag, je­mals be­tre­ten hat. die woh­nungs­tür der bei­fah­re­rin hin­ge­gen, die im­mer ge­schlos­sen war, wur­de ein­mal von ei­nem ver­wirr­ten und be­trun­ke­nem voll­idio­ten ein­ge­tre­ten, aus kei­nem nach­voll­zieh­ba­rem grund.

off­ne­heit, so viel kann man wohl sa­gen, ist kom­pli­ziert und es kommt im­mer auf den kon­text oder die lage an. ob das nun im web ist oder dem rest der welt. trotz­dem hat mike mas­nick na­tür­lich in al­len punk­ten recht und ihr könnt den den text ru­hig mal le­sen.


nach­dem ich mir die ap­ple ad­jek­tiv-schleu­der-ver­an­stal­tung an­ge­se­hen habe, ver­tra­ge ich heu­te und mor­gen kei­ne ad­jek­ti­ve mehr. viel­leicht auch für eine gan­ze wo­che.