This time porting Python code to MicroPython wasn’t only about fixing syntax and API. It turns out that for the e-paper display library that uses relatively big amounts of data at once, you have to sweat a bit more to get satisfactory results.
This is a story of how I got the air quality sensor to transmit its data via LoRa, from the balcony of my flat, over LoRaWAN nano-gateway to TTN router in the Netherlands, then to my relay server elsewhere in Europe, and to the database on the Raspberry Pi in the living room of the same flat. (Not) just because it can™.
It’s been a while since I deployed the WiPy-powered air quality monitor on my balcony. I have since replaced the microcontroller with a LoPy4 to enable LoRa connectivity, and I switched to a custom-made PCB.
Accidentally inspired by my colleagues during a casual chat, I developed the the ESP32-powered Bluetooth Low Energy button that triggers shell commands on a Mac.
Base iOS client version 3.5.2 is a build number 2259. Base 2.3 from January 2013 was a build number 270. Roughly 2000 builds in 5 years means roughly 8 builds every week, and if you won’t optimize it to be a streamlined task, it can become a painful experience.
If I told you Base iOS client takes around 3.5 minutes for a clean build on a decent MacBook Pro (Mid 2015) you would probably say it’s not that bad, considering around 2000 classes and 30+ cocoapods. However, since we haven’t ever worked specifically on build time optimization, we surely could do something to cut it down a bit.