Sonntag, 9. August 2026

Antalya: Taxi-Fahrer zocken auch über Uber ab

Gestern ging es von unserem Aparthotel in Muratpasa in die Altstadt von Antalya.

Ich entschied mich auf Grund des Babies und des Kinderwagens für ein Taxi, obwohl wir in fünf Minuten Fussweg vom Hotel eine Bushaltestelle zur Verfügung hätten. Doch der Fussweg schreckte ab, sowie die fragliche Pünktlichkeit der Busse, und schlussendlich auch der Kauf der Tickets (ich kann mich erinnern, dass es letztes Jahr nicht ganz einfach war, Tickets zu kaufen).

Bolt funktioniert hier nicht, aber Uber ist verfügbar. Mit einem kleinen „Haken“: Man kann sich zwar Taxis bestellen, diese fahren dann aber mit dem Zähler und rechnen unabhängig von Uber ab. Aber die Transaktion erfolgt über Uber, sofern man Kreditkartenzahlung wählt. Sprich — wenn ich es richtig verstehe — muss der Taxifahrer am Ende der Fahrt die Zahl vom Zähler manuell in die Uber-App übertragen (ich habe das in beiden Fällen nicht miterlebt — offenbar passierte das, als wir bereits ausgestiegen waren und alle unsere Sachen gepackt hatten).

Immerhin: Uber gibt einem beim Bestellen eines Taxis an, in welcher erwarteten Preisspanne die Fahrtkosten landen werden. Bei der Hinfahrt bemerkte ich diese Mitteilung, dachte mir aber nichts weiter dabei. Bis als wir am Hadrianstor ausgestiegen waren, Uber den geschuldeten Betrag von meiner Revolut-Karte abbuchte, und die Meldung auf meiner Apple Watch Ultra erschien: 500 TRY stand dort. Nicht nur ein äusserst runder Betrag, sondern gemäss meiner Erinnerung auch um ein paar TRY über der oberen Limite, welche mir Uber bei der Buchung angezeigt hatte. Spannend-fragwürdig, doch was soll’s, die Altstadt hatte nun Priorität.

Es folgten heisse Stunden in der sengenden Hitze in der verwinkelten Altstadt, in Cafés und einem Restaurant. Irgendwann einmal hatten wir alles getrunken und gegessen, und das Baby war körperlich und mental mehr als reif für die abendliche Lavabo-Dusche im Hotel.

Wir verliessen die Altstadt, postierten uns in der Nähe des antalyischen Zytglogge — und ich bestellte über Uber wieder ein Taxi. Vor uns standen zwar drei oder vier Taxis in einer Reihe, doch leider habe ich in dem Land trotz weniger Reisen bereits so viele Abzocken erlebt, dass ich auf keinen Fall ein direktes Vertragsverhältnis mit einem Taxifahrer eingehen wollte. Allfällige Diskussionen vor meiner Frau und dem Baby waren mir zuwider, wie auch allfällige Übungen während der Fahrt.

Ich bestellte also das Taxi, und dieses Mal machte ich einen Screenshot der „Fare Range“, welche Uber mir angab:

Ein Taxi akzeptierte die Anfrage sofort, und ich erhielt via Uber Messages eine Nachricht, dass er, Emre, beim „Clock Tower“ auf mich warten würde. Tatsächlich war es das vorderste Taxi in der Schlange, und als ich noch das Nummernschild verglich, rief mir Emre bereits zu „Mario! Is this you?“.

Emre war freundlich und hilfsbereit. Dank seines Dacia Lodgy mit riesigem Kofferraum war es ihm möglich, den Kinderwagen ungefaltet in den Kofferraum zu stellen. Wir nahmen auf dem Rücksitz platz, und er fuhr uns (zeitweise in Höllentempo) zurück nach Muratpasa ins Hotel.

Er half uns beim Ausladen, ich bedankte mich freudig, und bereite mich mental bereits darauf vor, ihm einen nettes Trinkgeld zu senden.

Doch im Hotelzimmer blinkte die Revolut-Notification auf: 700 TRY, 200 TRY über der von Uber angegebenen Obergrenze. What the …

Da schwante es mir: Die dreisten Taxifahrer in Antalya versuchen sogar, einen über Uber abzuzocken. Und zwar offenbar permanent; oder wer hat auf seiner Antalya-Reise auf zwei von zwei Taxifahrten das Glück, eine solche Behandlung zu erfahren?

Andererseits fand ich es sogar etwas mutig: Erstens scheinen die Kollegen runde Beträge zu wählen. Ein paar TRY hier und da würde die Sache doch viel zufälliger und authentischer aussehen lassen. Zweitens scheint es den Taxifahrern schei**egal zu sein, dass die Uber-App die Fahrten aufzeichnet und der Mittelsmann somit nachvollziehen kann, welche Route gefahren wurde, und wie lange das gedauert hat. Weiter kann man zwar schon Fantasiezahlen eingeben, aber im Falle einer Beschwerde des Kundens muss man mit dem Meter (Fahrtenschreiber) dann doch belegen können, dass man eine Strecke in einer bestimmten Dauer gefahren ist, und basierend auf diesen Parametern errechnet sich ja dann der verrechnete Betrag. Und schlussendlich glaube ich kaum, dass Uber sowas auf die Dauer einfach so toleriert. Sowas kann sich doch ein Taxifahrer gegenüber Kunden doch nur ein paar Mal erlauben, bis das im System auffällt und er von der Plattform verbannt wird. In etwa wie: Drei Punkte in Flensburg, Führerscheinentzug!

Mein Fehler, notabene: Beim Aussteigen hätte ich fragen sollen, wie viel der Meter anzeigt (auf der ersten Fahrt achtete ich mich nicht, auf der zweiten Fahrt konnte ich den Zähler hinter dem Beifahrersitz sitzend nicht entdecken).

Das wollte ich nicht auf mir Sitzen lassen. Ich wählte in der Uber App unter Activity die Taxifahrt an, dann ganz unten Customer Support, dann Help with something else, und dann I was charged incorrectly on a Uber Taxi trip (oder sinngemäss). Da ich in beiden Fällen nicht wusste, was der Meter tatsächlich angezeigt hatte, füllte ich dort einfach die erwartete Maximalsumme ein, die mir Uber unterbreitet hatte. Ich sendete die Beschwerde ab, ohne grosse Hoffnung, dass meine Anfrage zu meinen Gunsten entschieden würde.

Heute Sonntag-Nachmittag dann die freudige Überraschung: Beiden Anträgen wurde stattgegeben, und insgesamt 349 TRY rückerstattet (5.91 CHF):

Weiter hat mir der Uber-Kundendienst noch folgendes in einem separaten Email gemeldet (die zwei Emails lauteten exakt identisch):

Hi, Mario.

We are sorry to hear this trip’s fare didn’t meet your expectations. We understand that your time is valuable and that you depend on Uber for a reliable and efficient ride.

I have reviewed your trip and have adjusted the fare. It now reflects accurately the time and the distance traveled at that time of the day, plus the additional surcharges.

You should be able to see the amount back to your account within 3-5 business days.

In addition, we can assure you that the appropriate steps will be taken and we will follow up with your driver about this issue.

Please note that all Taxi fares are set by the state. Taxis have certain surcharges (Airport, Harbor or luggage surcharges) and tiered pricing depending on the time of day.

We appreciate you taking the time to write in.

Zugegeben:

  • Bekannte von mir führen für solche Situation ein virtuelles „Bullshit-Konto“. Dieses füllen sie anfangs Jahr mental mit einer gewissen Summe, und buchen dann solche „Missgeschicke“ virtuell-mental vom Konto ab. Damit ist der Fall für sie erledigt — solcha Lappalien sind die Zeit und Aufregung nicht wert. Sie machen kein Aufhebens darum, und lassen eine Fünf gerade sein.

  • Ich kann das leider nicht, mir geht das Verhalten, welches solche Taxifahrer an den Tag legen, gegen den Strich. Mir geht es um’s Prinzip. Selbst wenn es nur gerade um das Äquivalent eines Kaffees bei Starbucks geht …
  • Ich weiss nicht, ob der Kinderwagen zu einer höheren Gebühr geführt hat?
  • Oder ob ein Gefahrenzuschlag für den Transport eines Babies erhoben wurde?
  • Vielleicht haben die Taxifahrer mit Touristen schlechte Erfahrungen (bspw. kein Trinkgeld) gemacht, weshalb sie sich jetzt das Recht herausholen, selbst für finanzielle Gerechtigkeit zu sorgen?
  • Wird damit die Versteuerungspflicht auf Grund digitaler Spuren „automatisch“ kompensiert?
  • Habe ich einen Fehler gemacht, und hätte ich Bargeldbezahlung auswählen sollen? Hätte man mir hier den effektiven Preis verrechnet? Oder wäre ich jetzt mangels Belegen noch schlechter dran?

Tags: , , , ,
Labels: Reisen

Keine Kommentare | neuen Kommentar verfassen

Samstag, 8. August 2026

Französische Lehnwörter im Türkischen

Wie bereits im letzten Sommer sind wir aktuell wieder (hoffentlich zum letzten Mal) auf einem „Schengen Visum-Verlängerungslauf“ in Antalya, Türkei.

Dieses Mal habe ich mir vorgenommen, über die bereits im letzten Jahr entdeckten französischen Lehnwörter zu bloggen:

  • Büfe (wortwörtlich: Buffet, aber in Realität ein kleines Fast Food-Restaurant im Quartier)
  • Kruvasan (Croissant)
  • Kuaför (Coiffeur)

Zeugen von Zeiten, als Frankreich hier im Ottomanischen Reich (oder war es schon die moderne Türkei?) hoch im Kurs war.

Tags: ,
Labels: Reisen

Keine Kommentare | neuen Kommentar verfassen

Montag, 3. August 2026

Linux Uptime in Sekunden anzeigen

Et voilà:

$ cat /proc/uptime 
2045311.35 15929498.36

Die erste Zahl ist die Uptime in Sekunden, die zweite Nummer ist wie viele Sekunden „im Leerlauf“ („idle“) verbracht wurde (Handbuch-Eintrag).

Via: Bash format uptime to show days, hours, minutes

Wieso ich diese Information gebraucht habe: Ich wollte ein Problem debuggen, und dmesg prefixt alle Einträge mit der Sekunde seit dem Boot. Ich wollte abschätzen, wann ein dmesg Eintrag ungefähr erstellt wurde relative zur aktuellen Zeit.

Tags: , , , , ,
Labels: Linux

1 Kommentar | neuen Kommentar verfassen

Sonntag, 19. Juli 2026

HomePod: „I’m having trouble connecting to the Internet“

Seit mehreren Wochen funktioniert einer unserer zwei HomePod minis unzuverlässig auf Stimmenkommandos. Nach einem „Hey Siri“-Befehl dauert es mehrere Sekunden, bis Siri antwortet, und um etwas Geduld bittet. Schlussendlich meldet Siri: „I’m having trouble connecting to the Internet“.

Was zum Teufel?! Heute habe ich den HomePod vorsorglich einmal vom Strom getrennt, und neu gestartet. Das Problem blieb bestehen. Ich überprüfte auf dem DHCP-Server, dass der HomePod basierend auf seiner MAC-Adresse eine statische IP anfrägt, und erhält, wie auch dass das Gerät über den lokalen DNS-Server Namen auflöst.

Erste Auffälligkeit (just als ich in das Query Log schaute):

...
19-Jul-2026 10:14:28.188 queries: info: client @0x7f294b53e800 10.1.2.3#39271 (nrdp26.appboot.netflix.com): query: nrdp26.appboot.netflix.com IN A + (10.1.2.4)
19-Jul-2026 10:14:28.196 queries: info: client @0x7f294b540400 10.1.2.3#39271 (occ.a.nflxso.net): query: occ.a.nflxso.net IN A + (10.1.2.4)
19-Jul-2026 10:14:28.220 queries: info: client @0x7f294cf0e400 10.1.2.3#39271 (api-global.netflix.com): query: api-global.netflix.com IN A + (10.1.2.4)
...

Wieso löst ein Apple-Lautsprecher Netflix-Domains auf?

Lange nach dem Neustart pingte ich den HomePod, und erhielt auch hier komische Rückmeldungen:

PING 10.1.2.3 (10.1.2.3): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1
Request timeout for icmp_seq 2
Request timeout for icmp_seq 3
Request timeout for icmp_seq 4
64 bytes from 10.1.2.3: icmp_seq=5 ttl=64 time=157.932 ms
64 bytes from 10.1.2.3: icmp_seq=6 ttl=64 time=82.906 ms
64 bytes from 10.1.2.3: icmp_seq=7 ttl=64 time=6.095 ms
...

Was läuft hier?! Dann die Idee: Ich loggte mich auf mein UniFi UCG-Fiber Gateway ein, und durchsuchte die Liste der Geräte nach der IP des HomePods. Da staunte ich nicht schlecht, als sowohl mein TCL-Fernseher als auch der HomePod mini mit derselben IP angezeigt wurden.

Und tatsächlich: In der dhcpd.conf habe ich den MAC-Adressen beider Geräte dieselbe IP zugewiesen — und DHCP hat nie gemotzt, sondern die IP schön brav beiden Geräten ausgehändigt.

Übrigens: arpwatch läuft (selbstverständlich!) im heimischen Netzwerk, und hätte diese Flip Flops längst erkannt. Leider aber sende ich die Alarme per Email an ein Log-Konto, welches ich äusserst selten anschaue (und welches solche Emails aggressiv filtert und in einen Unterordner verschiebt).

Tags: , , , , , , , , , , , , , ,
Labels: Uncategorized

Keine Kommentare | neuen Kommentar verfassen

Samstag, 18. Juli 2026

Kiste mit selbstgemachter Halterung für ein IKEA MALM Kopfteil

Seit November 2025 nenne ich in meiner Mietwohnung in Pfäffikon SZ ein IKEA MALM Bett in der Grösse 180×200cm mein Eigen.

Eigentlich mag ich kein hölzernes, ungepolstertes Kopfteil, weil man sich daran vortrefflich den Kopf anschlägt. Aber ich brauchte schnell ein bezahlbares und lieferbares Bett, deshalb fiel meine Wahl auf dieses Bett.

Kürzlich die Idee: Was, wenn ich eine Kiste mit Halterung am oberen Kopfteil anbringe? Die Babyflasche wäre dort perfekt aufgehoben. Vielleicht auch die Brille, und die Fernbedienung des TVs.

Leider bietet IKEA selber nichts dergleichen an. Deshalb wagte ich es, etwas zu basteln. Und tatsächlich, es hat geklappt:

Optische Eindrücke:

Nachtrag: Fernbedienungshalterung

Für die Lagerung der Fernbedienung meines TCL 55C6K-Fernsehers und des daran angeschlossenen Apple TVs bastelte ich eine ähnliche Konstruktion, aber deutlich weniger breit. Leider fand ich auf Anhieb auch keine Kiste, welche farblich zum Kopfteil des Betts passte:

Tags: , , , , , , , ,
Labels: Shopping

Keine Kommentare | neuen Kommentar verfassen

Montag, 13. Juli 2026

Shelly 2.5 und 3EM können sich nicht mehr mit der Shelly Cloud verbinden

Auf Grund eines Ausfalls eines physischen Servers, und weil ich diesen dann mit VMs ersetzt habe, hatten einige meiner Shelly-Geräte plötzlich Verbindungsprobleme.

Bis zur intensiven Debugging-Session wusste ich aber nicht, wieso.

Die Symptome:

  • Es waren nur Shellys mit dem Web-Interface der ersten Generation betroffen (sprich Shelly 2.5, welche in der Eigentumswohnung die Rollläden steuern, ein Shelly 3EM, der dort den Stromverbrauch misst, sowie Shelly Temperatursonden (die Todessterne))
  • Die Shellys verbanden sich anstandslos mit dem WiFi

  • Die Shellys waren anpingbar
  • Im Web-Interface wurde ganz oben ein gelbes Cloud-Symbol angezeigt, und wenn man mit der Maus darüberfuhr, hiess es „Trying to establish cloud connection“
  • Im Web-Interface wurde oben rechts anstelle der Uhrzeit „–:–“ angezeigt
  • Die Shelly Cloud sandte mir ein Email mit dem Titel „Mass offline devices“

Das Problem, und die Lösung: Offenbar unterstützt das Mongoose OS, welches auf diesen Shellys läuft, nur genau einen DNS-Server (der massgebliche Tipp stammte von hier). Verteilt man die IP mitsamt DNS-Server der Shellys mit einem lokalen DHCP-Server, muss der DNS-Server mit der ersten IP funktionieren, sprich Namen auflösen können. Das tat er in meinem Fall nicht, weshalb die Shellys weder time.google.com auflösen konnten, noch die Adresse(n) der Shelly Cloud. Somit verfügten diese weder über eine Verbindung zum Zeitserver, noch zur Cloud — funktioniertem im lokalen Netzwerk aber tadellos.

Die Shellys mit dem neueren Web-Interface scheinen diese Beschränkung nicht zu haben, denn diese waren immer online.

Doch bis zu dieser Erkenntnis war es ein langer Weg:

Das Problem mit der Uhrzeit löste ich als Workaround, indem ich im Web-Interface anstelle von time.google.com die IP eines NTP-Servers im lokalen LAN angab. Nach einem Reboot wurde die Uhrzeit wieder angezeigt.

Doch wie löste ich nun das Cloud-Problem? Das Debugging führte mich zum neu aufgesetzten, virtualisierten DNS-Server. Interessanterweise erschienen im BIND9 Query Log auf diesem Server ausschliesslich anfragen vom localhost (127.0.0.1). Ich dachte mir anfänglich nicht viel weiteres dabei.

Doch irgendwann einmal machte es Klick: Das Problem mit der Zeit respektive dem NTP-Server und der nicht möglichen Cloud-Verbindung mussten zusammenhängen.

Ich versuchte deshalb, von einem anderen Linux-System im LAN gegen den via DHCP als erstes verteilten DNS-Server eine Domain aufzulösen.

Resultat:

# host emeidi.com 1.2.3.4
;; communications error to 1.2.3.4#53: connection refused
;; communications error to 1.2.3.4#53: connection refused
;; no servers could be reached

Ich nahm die Konfigurationsdatei des BIND 9 auseinander, startete ihn mehrmals neu — das Problem blieb. Bis ich plötzlich realisierte, dass ich via DHCP die IP des DHCP-Servers als ersten DNS-Server verteilte, und nicht die des pimären DNS-Servers. Schwupp-di-Wupp, DHCP-Konfiguration angepasst, Shellys neu gebootet — und siehe da, schön der Reihe nach änderten alle Shellys mit Cloud-Verbindungsproblemen die Farbe des Cloud-Icons von Gelb auf Grün:

Übrigens: Ich habe nun bei all diesen Shellys den Eco-Mode deaktiviert. Nützts nüt, schadts nüt.

Was ich auch noch gelernt habe: Die Shelly 2.5 sterben sehr oft an Altersschwäche eines Kondensators.

Tags: , , , , , , , ,
Labels: Home Automation, IT, Smart Home

Keine Kommentare | neuen Kommentar verfassen

Donnerstag, 9. Juli 2026

Linux Kommandozeile: Ist der Laptop-Deckel geschlossen?

Bei meinen Lenovos und unter Debian 13 fragt man das über CLI folgendermassen ab:

# cat /proc/acpi/button/lid/LID/state 
state:      closed

Tags: , , ,
Labels: IT, Linux

Keine Kommentare | neuen Kommentar verfassen

Donnerstag, 9. Juli 2026

Perfekt passender und optisch ansprechender Ständer für einen Xiaomi Air Purifier 4 Compact

Bei der Rückkehr aus Bangkok habe ich für die Mietwohnung dieselben zwei Luftreiniger gekauft, welche wir auch in der thailändischen Hauptstadt in Betrieb hatten:

Doch wo den Xiaomi Air Purifier 4 Compact hinstellen? Auf dem Fenstersims und dem Nachttischchen war nicht bequem, weil der Luftreiniger viel Platz wegnimmt, und das Fenster nicht mehr so einfach geöffnet werden kann.

Nach Messen, ChatGPT und längerer Recherche fiel meine Wahl dann auf folgendes Möbel:

Yamazaki 2-stöckiger Pflanzenständer mit Rollen TOWER (Herstellernummer B0CC8TMGPZ; englischer Name „YAMAZAKI Home Tower 2-Tier Planter Stand With Casters“) für 85.90 CHF

Das Teller hat einen Durchmesser von 25 Zentimeter (der Luftreiniger hat einen Durchmesser von 23 Zentimeter) und ist 2 Zentimeter hoch (Produktdiagramm mit Massangaben). Am Boden sind Rollen angebracht, mit welchem man die Installation kinderleicht im Zimmer verschieben kann.

Nicht ganz günstig, aber der Air Purifier passt perfekt auf das runde Teller, befindet sich nach der Installation auf einer guten Höhe, um die Raumluft zu filtern, und die Installation sieht sehr ästhetisch aus:

Tags: , , , , , , ,
Labels: Shopping

Keine Kommentare | neuen Kommentar verfassen

Dienstag, 7. Juli 2026

Einen Init7 Nameserver gibt’s nicht mehr …

Momentan migriere ich die Workloads in meinen Heimnetzwerken auf Debian VMs, die unter Proxmox laufen, welches auf einem performanten Lenovo-Hobel (T480s) installiert ist.

Keine Ahnung, wieso mir das erst jetzt, 2026, einfällt. Anstelle einen physischen Debian-Server mit unzähligen Apps zu überladen, und zudem mit Testinstallationen von Apps zu kontaminieren, ziehe ich einfach eine VM hoch, welche spezifische Arbeiten erledigt. Eine für DNS, eine für DHCP, eine als VPN-Endpunkt, eine für LNMS.

Kürzlich habe ich eine DNS VM hochgezogen. Dabei ist mir folgende Fehlermeldung in den Logs aufgefallen:

...
05-Jul-2026 22:42:27.393 lame-servers: info: REFUSED unexpected RCODE resolving '50-courier.push.apple.com/HTTPS/IN': 213.144.129.2#53
...

Nach etwas Recherche war klar, dass das Problem nicht an meinem DNS-Resolver (Forwarder) lag, sondern am Zielserver.

Als ich vor Jahren die Grundkonfiguration für meine DNS-Server erstellt habe, betrieb Init7 noch drei DNS-Server:

...
            213.144.129.2;  // Init7, NS1
            77.109.128.2;   // Init7, NS10
            213.144.129.20; // Init7, NS20
...

Gemäss dieser Webseite sind es mittlerweile nur noch zwei, der NS10, und der NS20:

  • 77.109.128.2
  • 213.144.129.20

Tags: , ,
Labels: IT

Keine Kommentare | neuen Kommentar verfassen

Dienstag, 16. Juni 2026

Taylor Swift: „I could build a castle …“

So richtig mit Taylor Swift auseinandergesetzt habe ich mich im Vorfeld zu ihren zwei Auftritten im Letzigrund im Juli 2024. Ich war an beiden Abenden vor Ort — einmal geplant, einmal spontan.

Damals hörte ich in Antizipation des Konzerts viele Songs rauf und runter. Aufmerksamer als sonst.

Und da hörte ich diesen Juwel:

I could build a castle
Out of all the bricks they threw at me

Quelle: Taylor Swift — New Romantics

Absolute Banger-Line.

Mein Lieblingslied von ihr? Style:

Ganz nah dran: I Can Do It with a Broken Heart

Und die etwas nachdenklicheren, traurigeren Songs, passend für das turbulente 2025 mit seinen vielen Hochs und Tiefs:

Tags: , , , , , , ,
Labels: Musik

Keine Kommentare | neuen Kommentar verfassen