Nachdem Almut die Sponsorenschaft für einen Bart verweigert (sie zahlt nur für die Rasur), bin ich bisher mein einziger Sponsor für den Movember. Stand heute ist folgendermassen:
Und heute hat mich eine Studentin angesprochen, dass mir der Bart stünde. Es geht weiter. Thiemo ist auch noch mit dabei, ich werde seinen Vorsprung schon noch einholen.
Thiemo and I agreed to not shave in April for a good cause. We have not worked out the details (like where to donate to and where the money actually comes from), but I will be looking weird in April. This is the start as of today:
Ich habe als Teenager mal gelernt wie man analoge Fotos entwickelt (Hallo Karsten Bandlow!). Und auch in der Schule haben wir die Dunkelkammer benutzt, allerdings nicht immer auf die Art und Weise die unser Kunstlehrer bevorzugt hätte.
Und jetzt, wo Oliver die alte Zeiss-Icon geschenkt bekommen hat, mussten wir das Ganze doch mal ausprobieren. Eine alte Dunkelkammer haben wir auf nebenan.de auf Anfrage sofort geschenkt bekommen (wir haben sogar fast 3 Dunkelkammern innerhalb eines Tages angeboten bekommen). Dann hat doch alles etwas länger herumgelegen als gedacht, aber heute war es soweit. Wir hatten vor einiger Zeit ein paar Filme mit der Kamera verknipst, die Filme selber entwickelt (AUFREGEND!), und heute Papierabzüge hergestellt.
Das Ganze war ziemlich spannend und nach ein paar Versuchen ging es ziemlich gut. Wir haben dier ersten 16 Bilder entwickelt. Und Oliver und Johanna wissen jetzt jedenfalls wie man Bilder auf die altmodische Art herstellt.
Letzten Donnerstag verstarb mein Kamerad bei der Freiwilligen Feuerwehr Volksdorf bei einem tragischen Autounfall. Er wurde 27 Jahre alt. Das Auto gehörte seiner Mutter, die es braucht, um seine im Rollstuhl sitzende Schwester zu transportieren. Um zumindest einen Teil Ihrer Sorgen und Schmerzen zu lindern bitten wir um Spenden auf ein eingerichtetes Spendenkonto. Details dazu finden sich im Aufruf unseres Landesbereichsführers Harald Burghart.
I thought I am too old to write rants, but I need to get this one of my chest: we own a Garmin Drive 51 LMT-S, which currently (July 2022) is still being sold by Garmin. It is right now advertized as “Provides real-time services² such as live traffic and live parking³” with the caveat “²To access live information, you must download the free Smartphone Link app.” OK, so far so good.
Now, the problem is that Smartphone Link app! I could go on about the trackers included in the app (Facebook Analytics, Facebook Login, Facebook Places, Facebook Share, Google Analytics) or the fact that it does not work unless you are logged into your mobile with a Google Play account. Or the excessive permissions (WRITE_EXTERNAL_STORAGE, READ_PHONE_STATE, READ_EXTERNAL_STORAGE, READ_CONTACTS, GET_ACCOUNTS, ACCESS_FINE_LOCATION) that is requests.
But let us keep all that aside for now. The important thing: IT DOES NOT WORK!
The Link app was last updated three years ago on Oct 31, 2019 which might indicate the priority Garmin assigns to the app. It works exactly once after pairing, and fails to reconnect on ALL subsequent connection attemps (mind, that the Android mobile phone automatically and successfully connects to the Garmin device, but the Smartlink app would not be able to see or establish a connection. It does not matter how often on clicks the reconnect button, it will only work for me if I remove the bluetooth pairing and restart the thing from scratch. And even than it will only work in about 40% of all cases!
Furthermore the Smartlink app likes to pop up erratically and “ding” even when there is not Garmin close by. Reviews on Google Play say that the Smartlink app easily cuts their battery life in half. So, to sum it up: THERE IS NO WAY I CAN ENJOY THE FEATURES THAT GARMIN ADVERTIZES AND PROMISES. IT NEGLECTS THE ONLY TOOL THAT ALLOWS TO GET REAL-TIME TRAFFIC INFORMATION ON A POPULAR ENTRY-LEVEL GPS NAVIGATION DEVICE. I FEEL CHEATED AND DISAPPOINTED BY GARMIN! AND I WILL NEVER BUY A GARMIN NAVIGATION DEVICE AGAIN BECAUSE OF THIS!
Without real-time information I can just use a local offline navigation app, thank you, Garmin!
There are 16.3k reviews on Google play and it receives an average rating of 2.7 (it is only that high as the ones from many years ago were mostly positive, but basically every rating from the last years is 1-2 stars). Does Garmin have a marketing department and is somebody reading these Google store reviews? They are enlightening:
“need to constantly “forget” and “pair” my Drive 5 to make it accept Smartphone Link.” (June 15, 2019)
Most of the time trying to establish a Bluetooth connection is a chore. I’ve tried three different devices this year and none can establish a link to the Garmin Navigator via this app without fumbling and retrying for at least 15 Minutes each time.” (May 1, 2022)
It won’t shut off, comes on even when you aren’t using the device or anywhere near it. Even if you force stop the app, it comes on again trying to connect to the device. (January 8, 2020)
When one door closes, another one opens. And so we have our own craftbeer shop and microbrewery in Volksdorf now: Locksmith brewing . And our fridge looks like this:
I recently discovered jazda, which is a hackable bike computer. Well, actually, right now, it is a smart watch with a half-finished bare-bones core app that wants to become a biking app when it is grown up. You need to compile your own rust-based operating system and flash it using an STLink 2.0 pluged into a SWD breakout board dev kit, plugged into the charging cable, attached to the watch. So what can possibly go wrong? 🙂
The devkit arrived quickly, containing the Bangle2js watch, a STLink 2.0 and the breakout board to connect the STLINK to the charging cable and a few stickers. Do NOT expect a manual yet!
In this post, I am going to describe the steps to setup jazda, based on my first experiences.
Install required things
You will need tockloader to flash things to the watch. I just installed it as regular user (python setup.py install --user), ideally one could do this in a container or python venv to avoid polluting your local python modules. The upstream tockloader did not know the board name(?!), TODO: check out if/why upstream tockloader is not sufficient.
The example app later requires python3-z3, so install that from your package manager or via pip, if you want to run the test app.
You need openocd (which is used by tockloader) to do the actual flashing. The version in Debian testing/bookworm (0.11.0-1(?)) was sufficiently up to date.
You need to install the stlink-tools (otherwise, openocd produced a Error: libusb_open() failed with LIBUSB_ERROR_ACCESS error message). The reason is that this adds udev rules that permit any user in the plugdev group to do flashing to the STLINK without being root. Note: restarting udev and re-plugging the stlink is required to make use of the added udev rules.
Install rust (which is required for all the compiling) I first installed rust-all and rust-src on my Debian testing, in order to avoid the rustup script. (I just don’t like to cheat on my package manager). After failing with the rust version provided by the Debian package manager, I uninstalled everything and locally installed rust via rustup for my user. (sorry package manager, I hope you’ll forgive me!)
just is a command line something (similar to make, but less powerful). Debian did not have a package ready, but cargo install just provides it to you. You need it to build the jazda Core app.
Compile and flash the tock kernel
Compile the tock kernel The board setup is described in https://framagit.org/jazda/tock/-/tree/flashil/boards/nordic/sma_q3
Just run make in the directory boards/nordic/sma_q3.
This resulted in the file: a907d5297a74f999bb98f860151a1dea87c021b3cf9fa247f7fae299615b88c2 target/thumbv7em-none-eabi/release/sma_q3.bin
I then issued make flash with the STLINK plugged in and the running watch attached. This flashed the file sma_q3.bin to the watch. and output a success info on the terminal. There was NO change of the display in the watch which continued to show the time, and the display simply froze dead. (not even 30s button pressed will cause any reset or anything) You might be forgiven if you believe that you just bricked your brand new watch. Your watch is running the tock kernel, but does not do anything useful yet. The next step is to compile and run an example app, so see if things worked out.
Compile/run an example test app
So, next I compiled the libtock-rs sample app (note: you need python3-z3 installed for it, see requirements section above!). The jazda wiki explains how:
This made the watch blink and vibrate until I killed the app with ctrl-c.
Once you are sure, it worked great, you need to uninstall the example app, or you’ll end up with a full memory and you’ll be unable to install anything else.
use tockloader list –board sma_q3 –openocd and tockloader uninstall –board sma_q3 –openocd to remove apps.
Compile and run the real jazda “core” app
Now on to the real application. You need two repositories checked out in the same directory: Core, yanp. libtock-rs (yes, the one from the sample app above will be automatically checked out and build as part of the Core build process, so it is not needed to keep around anymore).
Before compiling succeeded, I needed to add the thumbv7em-none-eabi target to rust. That went like this:
rustup target add thumbv7em-none-eabi
If you have just installed (see requirements section), it will be as easy as entering the “core” repository and issueing
just build_bin map
If all this goes well, you’ll end up with an app as: target/thumbv7em-none-eabi/release/map.tab
To install the app, connect your watch, and try to install the app
Olivers Traxxas Summit (which is a cool car, and an expensive one!) has two LiPo batteries which have a female Traxxas iD plug (TRX). And it has a balancing connection built in. Unfortunately, Traxxas chargers are horribly expensive, and we have a nice one. It just does not have a Traxxas iD plug for charging.
Solder iron to the rescue, now we have a nicely working adapter. But all that aside, what was REALLY difficult to find out is the pin layout of the XT plug used for balancing of a S2 battery. So without further ado: This is the plug that goes into the balancing port of the charger:
Looking at the plug with the metal pins visible from the top from left to right: