Nora Public Drops Today
Well I’m super excited to now say that my Nora code has been published: https://github.com/JCSmillie/Nora-PUBLIC
Nora is my answer to a question we were having at work about iPads, their batteries, and is anyone charging these things? Quite often students bring their device to the help desk with the complaint that “My iPad won’t charge” or “My iPad doesn’t last long”. Up till now our best effort has been to look at //Settings->Battery//, enable diagnostic logs, and send the iPad back with the student. If it came back then we would try to parse those new logs for things like:
- An app crashed because there wasn’t enough power to run it under load.
- Device turned off/crashed because of low battery. This one is really only helpful if we know the iPad did in fact charge before this.
As a Mosyle Schools site we can see the battery level as of the last time a device checked in, but Mosyle doesn’t give you any sort of device history. I wanted to be able to generate a report based on battery levels when the device checked in a few times. The more data points the better it would reflect if the device was being charged at all. Using Nora I can do just that. See the example. Those are data points grabbed from Mosyle over the course of 14 days.

As another example as to why historics on devices could be useful check this out:

At a glance you can easily see some critical data as of the last few times the device checked in. We can easily show:
- Check In IP Address
- Battery Level
- Disk/Storage Use
- OS / Update Needs (wish I had a better example of that)
- Any Mosyle tags that are on the device at that time
In my setup I use Mosyle tags on devices to both symbolize something happening with the iPad (maybe it’s out for repair to AGI or broken) or maybe something about the User (like they are in the Cyber program.)
So effectively as of now you too can setup Nora for your site and start generating reports of your own. Now the screenshots I included all come through Musky and at least right now those upgrades are not released yet, but don’t worry they will be before PSU MacAdmins. To maybe keep your interest captive though Nora’s Quick Setup document today can quickly get you into Docker, databasing your own archive of data, and generating reports in no time. Oh and I even included a rework of Musky’s device report, but for terminal –>
Maybe at this point you’re wondering about the name. Like are the letters some wild pseudonym for something. Something catchy or the next iSomething. Nope. Just like Musky was named and dedicated to my Dad who sadly passed way too soon the Nora project is named after Nora Smillie. My Grandmother. My Dad’s mom. She left us like 10 months before my Dad.
My Grandmother always had like a ledger notebook within arm’s reach at all times. When I was young it was at the head of the kitchen table as she rarely hung out in the living room or in the later years on her side table when she was bedridden. This book was her own database so to speak. Names, addresses, important numbers, combinations, birthdays, purchase dates of major appliances along with their warranty service numbers. There was always extra scrap paper under it. Pen, Pencil, and much later on as my kids got to know her a spoon was added to the group. I’m assuming it had something to do with coffee but I never really thought at the time to ask.
Like Nora’s book my database project is a gathering of all the important tidbits about my Mosyle deployment. In my current Musky deployment Nora also handles a backend instruction portal of tasks. I call this “errands” to stick with the Grandma Nora theme. The Nora project also currently contains my work Student Help Desk’s device repair history and internal District Insurance program usage of parts.
As Musky was named/designed around a Muskrat I thought it was proper to create grandma Muskrat for this case since this project directly ties back to Musky. So from last year here is Musky:

And here is Nora:

In closing I want to tell you that the bulk of Nora’s inception, base coding, and other underpinnings were principally designed between October 25’ to December 25’. During that time I was recovering from arm surgery (wild bowling accident… LoL) and needing something to keep my mind going. Learning more about PHP and MariaDB.
To be honest prior to starting this project I knew really nothing about SQL at all. I mean I’ve always had MySQL on at least one Linux box at work to support the needs of whatever projects we were running, but it was always someone else’s project. Roundcube, Mantis, Dovecot configurations, Moodle, and all the crazy stuff Miko writes all use MySQL and so we needed it. I knew how to back it up and how to restore it.
Now… well I know that..
and I’ve typed commands directly into MySQL to see things in the database (will be posting about that soon too) and make some changes, but by no means an expert. I’d say fairly that I know enough to be dangerous!
So now that Nora-PUBLIC is out its time to revisit Musky-PUBLIC. Yet another stop on the way to PSU MacAdmins 2026 where I’m currently planning to present on whats changed in Musky and a good bit of that is What I’ve been able to add through Nora.
Bye for now.
