Monitor and control your Simbase IoT SIM cards from Home Assistant.
Data usage, costs, SMS, location and full activation control — one device per SIM.
Note
Unofficial, community-developed integration. Not affiliated with or endorsed by Simbase.
| 📊 Usage & cost tracking | Data, SMS and spend per SIM and across the account, in your billing currency |
| 🎛️ Full control | Activate SIMs, set data/SMS limits, assign rate plans, schedule auto-disable |
| 🔒 Theft protection | Toggle the IMEI lock so a stolen SIM stops working in another device |
| 📍 Map presence | Each SIM becomes a device tracker using its cell location |
| 💬 SMS | Send and read messages straight from automations |
| ⚙️ Pick your entities | Every sensor and control group can be switched off during setup |
Simbase is in the default HACS store — open it straight from your instance:
Or, by hand: HACS → search for Simbase → Download → restart Home Assistant.
Manual installation
- Download the latest release
- Copy
custom_components/simbaseinto yourconfig/custom_components/directory - Restart Home Assistant
- Grab an API key from the Simbase Dashboard → Settings → API Key
- Settings → Devices & Services → Add Integration → Simbase
- Paste the key, then tick the sensors and control groups you want
Everything you choose here can be changed later via Configure on the integration entry, including the polling interval (60–3600 s, default 5 minutes).
Each SIM card becomes its own device, named after its Simbase label (or SIM ...1234 as a fallback). Account-wide totals live on a separate device.
| Entity | Type | What it does |
|---|---|---|
| SIM Activation | Switch | Enable/disable an individual SIM |
| Theft Protection | Switch | IMEI lock — Simbase disables the SIM if it's moved to another device |
| Data Limit | Number | Data threshold in MB |
| Data Limit Enabled | Switch | Turn the data limit on/off (off clears the threshold) |
| SMS Limit | Number | SMS threshold, in messages |
| SMS Limit Enabled | Switch | Turn the SMS limit on/off |
| Auto Re-enable Monthly | Switch | Re-enable the SIM at the start of each month |
| Auto-disable Date | Date | Date the SIM is automatically disabled |
| Rate Plan | Select | Assign a rate plan (options come from your account) |
| Reset Connection | Button | Cancel the SIM's current data session |
| Activate All / Deactivate All | Button | Enable/disable every SIM at once |
Tip
Setting a Data/SMS Limit turns its Enabled switch on automatically. Toggle that switch off to clear the limit entirely. To clear the Auto-disable Date, call simbase.set_autodisable with an empty date — a Date entity can't represent "none".
Warning
Turning on Theft Protection locks the SIM to whichever device it's in right now. Make sure it's in the right one first.
Per-SIM sensors
| Sensor | Description |
|---|---|
| Data Usage | Current month data consumption |
| Status | SIM state (enabled/disabled) |
| Monthly Cost | Current month costs |
| SMS Sent / Received / Total | Message counts |
| Coverage Plan | Current plan |
| Network Operator | Carrier the SIM is connected to (MCC/MNC, country) |
| Session Status | Whether the SIM has an active data session |
| Location | Country and cell location (lat/lon/cell ID when available) |
| Hardware | Device info |
| ICCID / IMEI / MSISDN | Identifiers |
| IP Address | Assigned IP |
Binary sensors: Online (enabled/connected) and Throttled.
Device tracker: places the SIM on the Home Assistant map using its cell-derived latitude/longitude. Coordinates are approximate — they come from the serving cell, not GPS — and may be unavailable when the network returns no position.
Account sensors
| Sensor | Description |
|---|---|
| Account Balance | Credit balance |
| Total / Active / Inactive SIMs | SIM counts |
| Total Data Usage | Aggregate data consumption |
| Total Monthly Cost | Sum of all SIM costs |
| Total SMS | Aggregate message counts |
Units. Data is reported in decimal megabytes (1 MB = 1,000,000 bytes), matching both the Simbase dashboard and Home Assistant's
MBunit — a 10 MB limit set here is exactly 10 MB there.Currency. All monetary sensors use your account's billing currency as reported by the API (
USD,EUR,GBP,AUD,CAD, …), falling back toUSDonly if the balance endpoint is unavailable.
| Service | Description |
|---|---|
simbase.activate_sim |
Activate a SIM card |
simbase.deactivate_sim |
Deactivate a SIM card |
simbase.send_sms |
Send an SMS to a SIM card |
simbase.read_sms |
Read SMS messages (returns a response) |
simbase.reset_connection |
Cancel the SIM's current data session |
simbase.set_autodisable |
Schedule or clear an automatic disable date |
simbase.set_usage_limits |
Set data/SMS thresholds and monthly auto re-enable |
simbase.set_rateplan |
Assign a rate plan |
All services target a SIM by device_id, so they work with the device picker in the UI.
Alert when a SIM burns through its data
automation:
- alias: "Tracker SIM data warning"
triggers:
- trigger: numeric_state
entity_id: sensor.tracker_sim_data_usage
above: 800 # MB
actions:
- action: notify.mobile_app
data:
message: >-
Tracker SIM has used {{ states('sensor.tracker_sim_data_usage') }} MB this month.Cut a SIM off when it goes over budget
automation:
- alias: "Kill switch on runaway usage"
triggers:
- trigger: numeric_state
entity_id: sensor.tracker_sim_monthly_cost
above: 25
actions:
- action: switch.turn_off
target:
entity_id: switch.tracker_sim_activePrefer letting Simbase enforce it? Set Data Limit instead and turn on Auto Re-enable Monthly so the SIM comes back by itself next month.
Notice when a SIM drops offline
automation:
- alias: "SIM offline for 30 minutes"
triggers:
- trigger: state
entity_id: binary_sensor.tracker_sim_online
to: "off"
for: "00:30:00"
actions:
- action: notify.mobile_app
data:
message: "Tracker SIM has been offline for 30 minutes."Send an SMS to a device
script:
reboot_via_sms:
sequence:
- action: simbase.send_sms
data:
device_id: !input sim_device
message: "REBOOT"These are missing because the Simbase API doesn't expose them: signal strength, connection type, and roaming status.
Issues and pull requests are welcome at manjotsc/ha-simbase. Bug reports are much easier to act on with the integration's Download diagnostics output attached (identifiers are redacted automatically).
MIT · Trademark notice: Simbase is a trademark of its respective owner. This project is not affiliated with Simbase.