Roll and pitch values of your iPhone for optimal horizontal positioning of your compass.
The values in the upper right corner must be both < 0.009xx in order to show the same heading as the official Apple iPhone compass app, given there are no other disturbing influences on the magnetometer.
As I already said above, the official iPhone compass app is more robust and you don’t need to treat it like a raw egg to ensure precision, but I don’t know what Apple does to achieve this.
Please find my latest addition for the iPhone version: a sun compass that uses the iPhone magnetometer and GPS.
The compass is precise, but you might need to calibrate the compass by moving the iPhone in the shape of a horizontal „8“.
When using the compass, hold the iPhone horizontal and parallel to the ground and rotate without rolling or pitching your phone, otherwise the compass fails.
I don’t know the magic the iOS compass app from Apple does to keep the value stable even if you roll and pitch the phone around.
Thecompass is realtime-tracking the time, your heading and the sun position and the app stays permanently open, but the GPS coordinate are not updated permanently, I decided it to be CPU waste to do so.
Instead, you get a position refresh at each new launch.
The app recognizes your time zone and DST Status, also if the sun does not rise or set at all. It works all offline, only GPS is required.
I had also memory leak issues with ui.imageview and bytesio first and switched to using scene. The app ran much longer but Pythonista still crashed. I finally fixed the issue by placing a gc command at the end of my while loop.
I stopped measuring run time with active Display after 1 hour. Note that your battery is being sucked empty quicker when the app is running.
@nerdtron Thanks, I know the console displays the whole text.
I was just wondering if there is an easy way to place print commands with coordinates into a scene wirhout having to use labelnodes.
The old 8 Bit Basic dialects had this, and for Python being a mental descendant of this programming Culture I wish there was the same easy approach.
Hello, I added an additional script to both archives
This program (works both on iPad and iPhone) shows instant sun data of your current location at the current time, no matter where in the world you are.
The program works offline, you only need GPS enabled. A correct timezone recognition is implemented, too.
This program was originally supposed to be a widget but Pythonista won‘t display it because it is too complex.
Instead, I released it as a regular Pythonista Script. I hope it is useful to some of you.
For everyone who has already downloaded the App from Github, please go to
for iPad and
and import the current file suncalc.py from there to your local Pythonista app directory.
When you use „My Location“ and „Current date“ the app did not recognize switch to Standard time since Oct 31st 2021.
This should now be fixed on both iPhone and ipad.