Troubleshooting
Things that go wrong, and why. Every entry here is known behaviour of the app as it ships today, not a guess.
Alarms and reminders
An alarm fired late, or not at all
Almost always the exact alarm permission. Without it Android is free to batch your alarm into a convenient wake-up window to save battery, which can mean minutes late.
Calendite has to ask for this separately from notifications because Android treats it as a special access. The setup wizard requests it; if you skipped that, it's in system settings under Alarms & reminders.
Also check:
- Notification permission. Without it nothing appears at all.
- Battery optimisation. Aggressive vendor battery managers (common on Xiaomi, Huawei, OnePlus and Samsung phones) kill background work regardless of what Android promises. Exempt Calendite if alarms are unreliable.
A reminder didn't ring while I was in a meeting
That's Do Not Interrupt, and it's deliberate. A reminder with it switched on defers itself until the event you're in has ended, rather than ringing over you.
It gives up after three automatic deferrals, so it can't be postponed forever. All-day events don't count as "in progress"; otherwise a single all-day event would silence an entire day.
A repeating reminder isn't where I expect
Check its recurrence anchor:
- On schedule: dates come from the rule. Completing late changes nothing.
- After completion: the next one is computed from when you actually finished.
"Water the plants every 3 days" behaves completely differently under the two. See Reminders and alerts.
Alarms stopped after a reboot
They shouldn't; alarms are re-armed on boot. If they didn't, Calendite was most likely blocked from running at startup by battery optimisation.
Sharing and pairing
Pairing fails and nothing explains why
This is a known bug. On Android 13 and later, Calendite is currently missing a permission Android requires for the local network discovery that pairing uses.
Without it, discovery fails silently: the two phones never find each other, and the app looks broken rather than blocked.
Meanwhile, check the ordinary causes too:
- Both phones must be on the same Wi-Fi. Not one on mobile data. Not on a guest network that isolates clients from each other.
- Client isolation on some routers and most public Wi-Fi blocks phone-to-phone traffic entirely.
- The invite screen must be open. The inviting phone only advertises while that screen is showing.
The six digits don't match
Stop and tap They Don't Match. Nothing has been exchanged yet (the calendar key isn't sent until both sides confirm), so nothing is lost by starting over.
Matching digits are the whole security of the ceremony. Never tap through them.
Sharing doesn't work when we're apart
This is expected behaviour: the default is same network only, with no server involved.
To sync when apart, pick a sync server at More → Settings → Sync Server. Until you do, the phones have no way to reach each other. See What leaves your device for what a relay can and can't see.
I scanned an invite link and it told me to ask for a code
Invite links you accept later aren't available yet. Use a live pairing: both phones present, QR scanned, digits confirmed.
I removed someone but their events are still there
That shouldn't happen. Removal purges their events and tags, revokes their device and rotates the calendar key. If events remain, report it as a bug.
Note what removal can't do: anything they already synced is on their device. Revocation protects the future.
A partner's events look exactly like mine
This is a known gap. Owner markers, hatched "Busy" blocks and the read-only protection on partner events aren't drawn yet, even though the underlying data syncs correctly. So a partner's event currently looks like your own and appears editable.
Notes
My notes aren't moving between Past / Today / Future
If you've pointed Calendite at your own folder (for example an Obsidian vault), the nightly sweep doesn't run there. It only ever sweeps the app's private storage.
So bucket re-filing and description propagation silently don't happen for vault users. It's a known gap, not something you've misconfigured. Notes are still saved and readable; they just stay in the bucket they were created in.
Tables and checkboxes show as raw text
The rendered view uses plain CommonMark, so GitHub extensions (pipe tables, - [ ] task lists,
~~strikethrough~~) don't render. Checkboxes aren't tappable either.
A table or code block turned into [Table · 0] and then broke
This one can lose content.
Blocks the rich editor can't represent (code fences, tables, dividers, quotes, task lines) are
swapped for placeholder lines like [Table · 0] while you're in Edit mode, and restored when
you leave. But the placeholder is shown as ordinary editable text with nothing guarding it, so
editing or deleting that line destroys the block.
Edit those in Markdown mode instead.
Toolbar buttons do nothing
Five of them aren't available yet: Heading, Strikethrough, Inline code, Link and Clear formatting. The heading button draws a caret implying a menu that never opens.
Working: Bold, Italic, Bullet list, Numbered list, and the four that insert literal markdown (Divider, Quote, Task, Table). For anything else use Markdown mode.
Rules and repeats
My rule produces no dates at all
Most likely a data-backed rule with no data. Tag(Work), Event(Work), Feed(BankHolidays)
and bare categories like BankHolidays resolve to nothing unless the app has the matching data.
An event whose only rule is Tag(Work) with no Work events will never fire.
Also check WORKDAY: it's an alias for Tag(Work) and has the same requirement.
An excluded day came back
Order matters. Rules apply left to right; ! rules remove, ordinary rules add.
WD, !Fri
weekdays except Friday
!Fri, WD
removes Friday, then adds all weekdays back
Put inclusions first, exclusions last.
2Sat and 2_Sat give different days
They're different rules. 2Sat is the 2nd Saturday. 2_Sat is the Saturday in the 2nd week.
They diverge whenever a month starts mid-week.
My variant didn't replace the base event
It isn't supposed to. A variant supersedes the base only on the days the variant itself fires. Every other day, the base still fires.
If you want variants to be the whole schedule, give the base a rule that produces nothing on those days, or no rule at all.
I changed the base event and the variants didn't follow
This is expected behaviour. Times, duration, title, tag, colour and location are stored on the variant when it's saved. Only alerts, tags-by-fallback and visibility resolve live. Edit the variants.
The "Applies to…" checkboxes on an inner event do nothing
The checkboxes save and display correctly, but aren't applied when occurrences are generated yet. Don't rely on them.
Feeds
My feed isn't updating
There's no refresh schedule. Feeds sync when you save one and when you bring the app to the foreground. No background polling, no "refresh now" button.
The form saved but the rule doesn't work
Probably the category name. The form only rejects empty names and ones starting with a digit, but
the rule parser is stricter: it requires at least one lowercase letter. UEFA and Sports2024 pass
the form and then fail to parse.
Use names like BankHolidays, TermDates, BinCollections.
I can't save a feed at all
Feeds are Android only for now. On iOS and web the form appears but can't be saved yet.
Platform
Several features aren't available outside Android yet. If something is missing rather than broken, check here first:
| Feature | Android | iOS | Web |
|---|---|---|---|
| Calendar, events, rules | yes | yes | yes |
| Alarms and notifications | yes | no | no |
| Natural-language input | yes | no | no |
| Notes | yes | no | no |
| Data source feeds | yes | no | no |
| Location search and map | yes | no | no |
| Calendar sharing | yes | no | no |
| Device calendar import | yes | recurring only | no |
On iOS, Change folder… under Notes & files does nothing: the folder picker isn't available on iOS yet.