I built a free open-source dashboard that shows where your M365 storage actually goes (mailboxes, OneDrive, SharePoint), because our backup provider bills by volume
▲ 35 r/SysAdminBlogs+1 crossposts

I built a free open-source dashboard that shows where your M365 storage actually goes (mailboxes, OneDrive, SharePoint), because our backup provider bills by volume

Like many SMBs, we back up Microsoft 365 through a managed service that bills by data volume. The invoice kept growing every month, and nobody could tell why, the Admin Center spreads this information across three different portals, and you end up exporting CSVs to Excel anyway.

So I built a small dashboard for it and open-sourced it:

https://github.com/AussieCH/m365-usage-dashboard

What it shows:

  • Total tenant storage across mailboxes, OneDrive and SharePoint, with a growth chart over time (weekly snapshots), so you can see whether cleanup actions actually work
  • Per-user list, sortable/filterable: mailbox + OneDrive usage, quota utilization with warning thresholds, license type, and automatic detection of shared mailboxes (the classic silent growers: info@, accounting@ …)
  • All SharePoint sites with real display names, storage, owner, file count, page views and last activity — sites inactive for 90+ days get flagged as archiving candidates. Great for finding the dead sites left behind by Teams sprawl.

Tech: PowerShell 7 + Pode web server, data via the official Microsoft Graph Reports API (read-only permissions), stored locally in a single SQLite file. No cloud dependency, no telemetry, nothing leaves your network. Runs on any Windows box (dev also works on macOS/Linux).

Setup: there's a step-by-step guide (PDF) plus PowerShell scripts that automate the whole app registration incl. permissions, or you click through Entra manually in ~10 minutes. A built-in demo mode generates sample data so you can try it without touching your tenant. Screenshots are in the README.

Two gotchas the guide covers because they cost me time: report pseudonymization must be disabled in the Admin Center (otherwise you only get hashes), and the usage reports no longer include SharePoint site URLs in many tenants, the dashboard resolves real site names via Graph instead.

It grew out of a customer project and is free/MIT-ish open source, feedback, issues and PRs very welcome. Happy to answer questions about the Graph endpoints used.

u/Squeeech — 2 days ago
▲ 9 r/SCADA

Wrote a book chapter on why „Security at AI Speed" thinking breaks in OT environments. Core argument inside

I'm CISO at a Swiss utility and just published a book on our national ICT security standard. One chapter tackles the current „AI-speed security" hype, and I'd genuinely like this community's take on the core argument:

The claim: defence must operate at machine speed, pre-authorized automated responses, AI agents handling containment.

My counterargument for OT: an AI agent that revokes a compromised session costs someone an hour of work. An AI agent that isolates a „compromised" controller can black out a substation. The model that learned traffic patterns doesn't know which physical process hangs off that module. The person who knows sits in operations and no automation should override them.

My rule in the book: automate in IT where blast radius is recoverable; in OT, automation prepares the decision but a human executes it. Maintenance windows, four-eyes on interventions, keyswitches in RUN, the „slowness" of OT is a safety feature, not a bug.

Curious where practitioners here draw the line. Anyone actually running automated containment that touches control systems?

reddit.com
u/Squeeech — 21 days ago
▲ 15 r/cissp

Wrote a 700-page security book as a CISSP — sharing what the process taught me (and yes, it counts as CPE)

After 25 years in security, I just published my first book: a practitioner's guide to Switzerland's mandatory ICT Minimum Standard for energy utilities (based on the NIST CSF, 108 controls).

A few things I learned that might interest fellow CISSPs:

Writing forces clarity. I thought I understood the controls until I had to explain each one to a non-technical managing director. Roughly a third of my „understanding" turned out to be pattern matching, not comprehension.

The domain knowledge maps beautifully. Structuring implementation guidance for 108 controls felt like a guided tour through the CBK — asset security, IAM, security operations, the lot.

It's solid CPE. Book authorship falls under Group A — check the current CPE handbook for the credit calculation before submitting.

Happy to answer questions about the writing process, self-publishing technical content, or translating frameworks for non-technical audiences. (Book is in German — link in comments if anyone asks.)

reddit.com
u/Squeeech — 22 days ago
▲ 16 r/esp32+2 crossposts

Turned a LILYGO T-Display into a little Claude usage meter,

A few days ago I ran into alessandro-001's ESP32-claude-usage-display and really liked the idea: a tiny always-on screen that shows how much of your Claude limits you've burned through. I forked it, then ended up rewriting a big chunk, so figured I'd share where it landed.

I'm running it on a LILYGO T-Display S3 (the small 1.9" color one).

The part of the original that bugged me was the auth. It grabs your usage by pasting your claude.ai browser session cookie straight onto the device. That cookie lives in the ESP32's flash and expires/rotates, so you're re-pasting it every so often, and I wasn't thrilled about a live session token sitting on a microcontroller on my wifi.

So I moved the whole credential side off the device. There's now a small Python proxy that runs as a Home Assistant add-on. It talks to Anthropic's OAuth usage endpoint (same data Claude Code's /usage shows), does the token refresh itself, caches the result, and hands the ESP32 a stripped-down JSON with just the percentages and reset times. The Claude token never leaves my HA box; the display only ever talks to the proxy. When I'm not home I expose the proxy through Tailscale Funnel, so it's a single URL that works everywhere with a proper cert.

Couple of other things I added:

  • Multiple wifi networks (up to 4). I wanted to actually carry it to the office, so it connects to whichever saved network is in range and switches on its own when I move.
  • Redid the UI. Dropped the old number-plus-bar for a ring gauge with the percentage in the middle (color-coded by how close I am to the cap), a countdown to the next 5h reset, and the 7-day reset as an actual local date/time.

Repo and a v1.0 release with a prebuilt binary: https://github.com/AussieCH/ESP32-claude-usage-display

Fair warning that's also in the readme: polling that usage endpoint from a third-party thing is a bit of a ToS grey area, so treat it as a "your own account, at your own risk" project.

Happy to answer anything. Also fully prepared to be told I overengineered the wifi part.

u/Squeeech — 2 months ago

My cousin lost his career to a knee injury. We just need CHF 600 to help him rebuild his strength.

Hi everyone,

I'll keep this honest and simple. Tommy is my cousin. He's in his early 50s (born in 1972) and has worked hard his whole life — over 20 years as a painter on construction sites, most of it at the same company. Physical work was his everyday, and he was proud of it.

About two years ago he injured his knee at work, and he still hasn't recovered from it. He can't do his old trade anymore, so he's now retraining for a completely new career and is currently doing an internship to make that happen — a brave fresh start in his 50s.

The downside of two years mostly stuck at home is that he's lost a lot of the strength and stamina he used to have. He feels it every single day in the internship now, and it's wearing him down. He wants to do something about it by training regularly at the gym — for his health, to keep up at work, and to finish his retraining. I'm at the gym three times a week anyway, so we'd train together and I'd help keep him on track.

The problem is money. His income dropped during the retraining, so a gym membership just isn't affordable for him right now. His health insurance covers part of the cost. For the annual membership he's still about CHF 900 short. I'm chipping in CHF 300 myself, so we're trying to raise the remaining CHF 600.

That's the whole ask, CHF 600. Anything beyond that goes straight toward his recovery and training. Even just sharing the post helps a lot.

https://gofund.me/5e9b2382c

Happy to answer any questions in the comments. Thanks for taking the time to read this.

u/Squeeech — 2 months ago

A smart home panel for your entrance that even the cat sitter can use

Designed a wall mount for a smart home touch panel that hides a 230V PSU and NFC reader inside the enclosure. Printed in PLA, held together with M3 heat-set inserts. More details and files in the original post! https://www.reddit.com/r/homeassistant/comments/1txjepl/

https://preview.redd.it/3tfbfd3vkg5h1.png?width=1860&format=png&auto=webp&s=1551df92aa5e0d4f51a0422113c2298cbc458dc7

reddit.com
u/Squeeech — 3 months ago

A smart home panel for your entrance that even the cat sitter can use

Built an entrance panel that lets guests control the home with NFC cards – no app, no login, no explanation needed. Touch display + hidden NFC reader + mains PSU, all in one 3D printed wall mount. Full write-up here: https://www.reddit.com/r/homeassistant/comments/1txjepl/

https://preview.redd.it/n4lfbs94lg5h1.png?width=1860&format=png&auto=webp&s=aa0b19722cadd280da43a610664576b251de4049

reddit.com
u/Squeeech — 3 months ago

A smart home panel for your entrance that even the cat sitter can use

Wall Mount for Guition ESP32-S3 4848S040 – A smart home panel for your entrance that even the cat sitter can use

Hey everyone! Long-time lurker, first-time poster here – wanted to share a little project that started with a very specific frustration: every time someone else needs access to our flat – the cat sitter, a family member, an Airbnb guest – I'd end up writing a two-page instruction manual for the smart home. Not ideal.

The solution I landed on is a wall-mounted panel right at the entrance, combining a touch display with a hidden NFC reader. Hand someone a card, they tap it on the way in, and the right things just happen – lights turn on, the heating adjusts, whatever scene you've set up in Home Assistant. No app, no login, no explanation needed.

The hardware side of things

The enclosure is a custom-designed PLA print that fits the Guition ESP32-S3 4848S040 touch display and hides everything behind the wall plate. The bottom compartment houses a Mean Well IRM-05-5 AC/DC power supply – mains voltage in, clean 5V/1A out. No power brick, no USB cable creeping down the wall. The display connects via a 4-pin MX1.25 connector (PIN1 = GND, PIN4 = +5V), and the ATOM Lite for the NFC reader gets its power from a second 4-pin socket in the same compartment.

The NFC reader sits behind the top panel, completely invisible from the outside but close enough to scan reliably. It's based on the excellent "No Soldering DIY NFC TagReader" project – if you haven't seen it, definitely worth a look. The idea is simple: you hand out pre-programmed NFC cards to whoever needs them. The cat sitter gets a "cat sitter card" that triggers exactly the automations she needs – nothing more, nothing less. No fumbling with apps, no accidentally turning off the heating.

Software

The display runs ESPControl (an ESPHome-based project by jtenniswood) paired with Home Assistant. Fully local, no cloud dependency, and fast enough that it actually feels responsive to the touch. The NFC side is handled entirely within Home Assistant automations – each card has its own tag ID and triggers whatever scene you've assigned to it.

Assembly

The enclosure prints in PLA and goes together with 4× M3 heat-set inserts and 4× M3×8 hex screws. Solid wall mount, no glue, no friction-fit guesswork.

Files are available on Makerworld: https://makerworld.com/de/models/2892428-combined-display-mount-for-the-guition-4-display#profileId-3231998

Happy to answer questions in the comments – and curious whether anyone else has gone down the "NFC for guests" rabbit hole!

Quick safety note: this build involves mains voltage (230V AC). If you're not comfortable working with line voltage, please have a qualified electrician handle the wiring.

https://preview.redd.it/0eipqyxsig5h1.png?width=1860&format=png&auto=webp&s=54adda54a2a688ab187438e8723c589d4aacbddf

reddit.com
u/Squeeech — 3 months ago

How to activate this entity?

I have a SwitchBot robot vacume with HA integration. The device has three entities. Battery, Bluetooth signal and the Robot it self K11+Vacuum 784C. If I click the entity I get this card with two possible actions to chose:

https://preview.redd.it/2olczxrwtg1h1.png?width=1112&format=png&auto=webp&s=c8383fb2a23a3e1220926e98a9d2e4c682d0affc

How can I trigger this, as exampe in a automation or on a device/dashboard through a button?

reddit.com
u/Squeeech — 3 months ago