Eugen Barilyuk
Published: 9 May 2025
←🏠 Back to eb43.github.io articles list
There is a mystery thing going on with every Samsung smartphone existing today. You cannot set more than 100 alarms on your Galaxy device. Moreover, this number is a recent improvement of the previously existing limit of 50 alarms.
You can verify this fact on any of your own Samsung Galaxy smartphone. Simply start adding alarms, and, depending on the OneUI version of your device, you will be stopped either on adding the 50-th or adding the 100-th alarm. The popup leaves no second explanation.
While this fact may seem a funny quirk, it actually highlights an important problem of any modern smartphone - you are not the owner of your smartphone. Because actually you can add more than 100 alarms, but only when you fight the vendor for the access rights.
Here is a demonstration how it is possible to overcome the limit on number of alarms in Samsung Galaxy smartphones. You can do it only after you get root access.
Android stores data of each installed app in a
/data/datafolder. You will be blocked from accessing this folder because vendor limits your rights on the smartphone. For some phones, if you are lucky enough, you can fight with the vendor’s obstacles and grant yourself root access rights. Root access allows viewing and editing of Android system folders.
When having root access, use any file manager with root access support, for example, Total Commander.
On my Samsung Galaxy J4 2018 with Samsung Experience 9 firmware, the clock app has a package name com.sec.android.app.clockpackage. Therefore, all clock’s data is stored in
/data/data/com.sec.android.app.clockpackagefolder.
Here you can see three files: alarm.db, alarm.db-wal, alarm.db-shm. The first one is the actual database to be replaced. The last two are temporary files and have to be deleted each time.
Transfer the alarm.db file on your computer. It is an SQLite database, and, for example, Total Commander for Windows offers embedded database viewer. Simply press F3 on the database file to view it.
Alternatively, you can use the in-browser SQLite to CSV / Excel XLSX Converter to convert the .DB file into Excel spreadsheet and view it in Excel. You will need to specify the alarm table.
Use any tool you know to edit the alarm.db file and fill it with 100 alarms or more.
You can add alarms in Excel, if you used the SQLite to XLSX converter, and then convert XLSX to SQLite using the CSV / Excel XLSX to SQLite Converter available on the same web page. You will then have to replace the existing alarm table with the new one in the alarm.db file.
Alternatively, you can use a dedicated database editing app, namely DB Browser for SQLite v3.13.1.
Since we live in an AI era, I simply asked the Artificial Intelligence to fill the database with records. And who would have expected that - AI refused to do the task for me. But AI agreed to create a Python script that clones one alarm specified number of times so I could do it on my PC by myself.
import sqlite3 # Path to your alarm.db file db_path = "alarm.db" # Connect to the database conn = sqlite3.connect(db_path) cursor = conn.cursor() # Fetch the template record with _id = 19 cursor.execute("SELECT * FROM alarm WHERE _id = 19;") template_record = cursor.fetchone() if not template_record: raise ValueError("Record with _id = 19 not found.") # Get the highest existing _id to continue from there cursor.execute("SELECT MAX(_id) FROM alarm;") max_id = cursor.fetchone()[0] or 0 # Prepare new records base_record = list(template_record) new_records = [] for i in range(1, 100): # Create 99 records new_record = base_record[:] new_record[0] = max_id + i # New _id new_record[20] = str(i) # Set 'name' field to the queue number new_records.append(tuple(new_record)) # Insert the new records cursor.executemany("INSERT INTO alarm VALUES (" + ",".join("?" * len(new_records[0])) + ")", new_records) # Commit and close conn.commit() conn.close() print(f"{len(new_records)} records successfully inserted.")
If you have Python installed on your computer and want to use this method – simply copy the script into the folder with the alarm.db file and execute the Python script.
Since the script copies an existing alarm, you may have to specify the ID of your existing alarm. Just look for it in the alarm.db file.
Copy this newly obtained alarm.db file to your Samsung smartphone.
Before replacing old file with this one, go to the Settings > Apps > Clock and force stop the clock app.
Open Total Commander on your phone and delete existing files alarm.db, alarm.db-wal, alarm.db-shm. Now, copy the new alarm.db file in the clock’s data folder.
Open the clock app on the alarm tab, an you will see on your own eyes how the list of your existing alarms will be replaced with a list of 100+ alarms.
The Samsung clock app allows to activate / deactivate, change time, edit alarm name, alter sound, and do every other action you can do with an alarm. However, you will not be able to add a new alarm – the clock app will notify you about that with a popup.