EduBridge Timetable Engine
Click Solve. Walk away. A constraint-solver (CSP) engine that turns your period grid, teaching requirements, rooms and teacher availability into a complete, clash-free master timetable — with pinned lessons it never moves and a conflict report for anything it could not place.
Assignments placed by a single Solve click on the live demo — the full weekly grid for every section, teacher and room at once.
Conflict kinds the audit tracks: teacher, room and section clashes, availability breaches, over-capacity, under-scheduling and clumping.
Backtracking-step budget per solve — adjustable in the wizard, with a random seed so any good run can be reproduced exactly.
Exactly what your purchase installs
Your download is one module. It installs on top of EduBridge Core and EduBridge Academic (each sold separately on this store) — beyond those two, everything it needs is free, standard Odoo.
ep_timetable)EduBridge Core and EduBridge Academic (the foundation this solver installs on) are separate purchases, as are the other EduBridge apps (Fees, Library, Transport and the rest of the suite). Student- and parent-facing per-class display timetables ship with EduBridge Academic — this app is the engine that builds the master grid behind them.
Five screens. The whole master grid.
Every animation below cycles through real screens from a working install — verified end-to-end on our live demo.
Define it once, solve it in one click
Create a cycle — dates, days per week, the period grid with breaks and assembly — list every requirement (section × subject × teacher, periods per week), then hit Solve: the CSP engine fills the whole school grid, the cycle flips to Solved and every placed lesson lands in Assignments, ready to filter, group and pin.
The rules the solver never breaks
Model rooms with types (labs, studios, gyms), bookable features and capacity, and per-period teacher availability with preference weights — hard constraints the engine obeys on every placement, soft preferences it works to honour.
Every feature, at a glance
One app, every screen below — each card is a real screen from a working install, captured on our live demo.
Dates, periods, requirements and conflicts per term — with a Solved state.
One click runs the CSP engine; step budget and random seed are yours to tune.
Every solved cell — group by teacher or room, pin what must not move.
Labs, studios and gyms with capacity, types and bookable features.
Block periods out or weight preferred slots, per teacher and period.
Under the hood
Engine-room features that do their work without a screen of their own — audited from the module source, not invented.
- CSP backtracking with forward-checked (period, room) domains per requirement
- MRV variable ordering with degree tie-break — hardest lessons placed first
- Step ceiling (default 200,000) — partial solution plus conflict report when exhausted
- Random seed in the wizard so a good solve is exactly reproducible
- Hard: one booking per teacher, room and section per period — no clashes, ever
- Teacher availability honoured; teachers with no records count as fully available
- Room type and required-feature matching — projector, smartboard, wifi, aircon seeded
- Soft: spread-evenly across distinct days; double-period flag per requirement
- Pinned assignments are excluded from the solver’s domains — never moved
- Re-solving deletes only unpinned assignments before writing the new grid
- SQL constraints: one assignment per section-period, unique room codes
- Seven conflict kinds, from teacher clashes to under-scheduling and clumping
- Hard / soft severity with the related assignments linked on each conflict
- Conflicts are read-only for regular users — only administrators may edit them
- Cycle states draft, solving, solved, published — state changes tracked in the chatter
- Mail-thread chatter on every cycle for the scheduling discussion
- Seven language files shipped — French, Arabic, Portuguese, Spanish, German, Chinese, Swahili — with translatable room features
Live in an afternoon
Create a cycle with dates and days per week, key in the period grid — breaks and assembly included — then list every requirement: section, subject, teacher and periods per week, with room type, double-period and spread-evenly flags.
Enter your rooms with types, features and capacity, mark teacher availability, then run the Solve wizard — the grid appears under Assignments, anything unplaceable is listed as a conflict on the cycle, and pinned lessons stay exactly where you put them.
One platform, every part of the school
Every EduBridge app shares the same student record and security. Install what you need today and add the rest as you grow — each app installs on top, nothing to re-key.
Other Odoo services we offer
Common questions
Does it work without EduBridge Core?
What happens when no perfect timetable exists?
Can I lock lessons the solver must not move?
How does it handle labs and special rooms?
Where do students and parents see the timetable?
Will two runs give the same timetable?
Talk to us today
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Discuss (mail)
• Calendar (calendar) • Employees (hr) • Attendances (hr_attendance) • Contacts (contacts) • Email Marketing (mass_mailing) • Website (website) |
| Community Apps Dependencies | Show |
| Lines of code | 28522 |
| Technical Name |
ep_timetable |
| License | OPL-1 |
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module