Here’s a scene every hybrid-meeting admin has debugged at least once. A large conference room has a Teams Rooms on Android front-of-room bar driving the displays, plus an Android touch board on the table for whiteboarding and content. Both are Teams-certified endpoints. Both have a resource account. Someone starts the meeting on the touch board, someone else taps Join on the front-of-room console, and now the room is in the call twice — two participants, two audio pipelines, one glorious feedback loop until somebody mutes the wrong device and kills the room mic for everyone.
That is the exact problem coordinated meetings solves, and roadmap item 569420 confirms it’s finally coming to Teams Rooms on Android and Android-based touch boards. The catch: general availability is slated for January CY2027. Windows-based Teams Rooms and Surface Hub have had this for years. Android is getting parity — eventually.
What “coordinated meetings” actually does
Coordinated meetings pairs two room devices so Teams treats them as a single logical room presence rather than two independent participants. Concretely, once you pair a front-of-room device with a companion touch console:
- Coordinated join and leave — start or end the meeting on one device and the paired device follows. No double-join, no orphaned endpoint sitting in the lobby.
- Split roles across the glass — the front-of-room display shows remote participants and shared content; the touch board becomes the collaboration surface (whiteboard, annotations, content-in) without both surfaces fighting over the same audio path.
- One audio identity — the paired devices coordinate mic and speaker so you don’t get the echo cascade described above.
If you’ve deployed a Surface Hub next to a Windows MTR, you already know the pattern. The news here is narrow but real: Android endpoints — which now make up a large share of new Teams Rooms deployments because the hardware is cheaper — join the club.
My honest read: this is a catch-up feature, not an innovation. The interesting question isn’t whether coordinated meetings is good (it is), it’s why Android buyers spent years without it while Microsoft steered enterprises toward Android bars on cost. Plan your dual-device rooms accordingly and don’t let a vendor tell you Android has “full parity” today — it doesn’t until this ships.
The part nobody puts on the roadmap card: licensing
Coordinated meetings is a Teams Rooms Pro capability, and it needs Pro on both paired devices. A room running one Pro license and one Basic license won’t pair. Teams Rooms Basic is capped at 25 rooms per tenant and deliberately omits the advanced in-room experiences, coordinated meetings among them.
So the spend lands before the feature does. If you’re standardizing dual-screen Android rooms for a 2027 rollout, you’re buying two Pro licenses per room now, during your FY26 planning cycle — not when GA hits. That’s the thing Microsoft isn’t loud about on the roadmap entry.
Report what you’ve actually got, before you plan pairings
Before anyone talks about pairing, you need an accurate inventory: which rooms run Android vs Windows, which have more than one Teams-certified device, and which resource accounts carry a Pro license. The Microsoft Graph Teamwork Devices API (currently beta) is the cleanest source for the device side. Use the Microsoft.Graph.Beta module — never the retired AzureAD or MSOnline modules.
# Requires: Microsoft.Graph.Beta module
# Scopes: TeamworkDevice.Read.All, Directory.Read.All, Organization.Read.All
Connect-MgGraph -Scopes "TeamworkDevice.Read.All","Directory.Read.All","Organization.Read.All"
# Pull ALL Teams-certified devices. -All handles paging for you;
# the raw endpoint returns @odata.nextLink pages of 100.
$devices = Get-MgBetaTeamworkDevice -All -ErrorAction Stop
$report = foreach ($d in $devices) {
# Device categories: collaborationBar, touchDisplay, teamsRoom, ipPhone, panel...
# Android room bars usually surface as 'collaborationBar' or 'teamsRoom';
# touch boards as 'touchDisplay'.
try {
$health = Get-MgBetaTeamworkDeviceHealth -TeamworkDeviceId $d.Id -ErrorAction Stop
} catch {
$health = $null
Write-Warning "Health lookup failed for $($d.Id): $($_.Exception.Message)"
}
[pscustomobject]@{
DeviceId = $d.Id
DisplayName = $d.CurrentUser.DisplayName
ResourceUPN = $d.CurrentUser.UserPrincipalName
DeviceType = $d.DeviceType
HardwareModel = $d.HardwareDetail.Model
Manufacturer = $d.HardwareDetail.Manufacturer
Platform = $d.HardwareDetail.UniqueId # correlate to OS via model
HealthStatus = $health.HealthStatus
ActivityState = $d.ActivityState
}
}
# Rooms with more than one device = your coordinated-meeting candidates
$report | Group-Object ResourceUPN | Where-Object Count -gt 1 |
Select-Object Name, Count | Sort-Object Count -Descending
$report | Export-Csv .\TeamsRoomDeviceInventory.csv -NoTypeInformation
Grouping by resource account only gets you part of the way — coordinated pairs typically use two different resource accounts in the same physical room, so cross-reference against your room-naming convention or the room list. Which brings us to the license check.
# Confirm which room resource accounts hold Teams Rooms Pro.
# Pro SKU part number: Microsoft_Teams_Rooms_Pro
$proSku = Get-MgSubscribedSku -All |
Where-Object SkuPartNumber -eq 'Microsoft_Teams_Rooms_Pro'
$roomAccounts = Get-MgUser -All -Filter "accountEnabled eq true" `
-Property Id,UserPrincipalName,DisplayName,AssignedLicenses |
Where-Object { $_.UserPrincipalName -like 'room-*' -or $_.DisplayName -like '*Room*' }
$roomAccounts | ForEach-Object {
[pscustomobject]@{
Room = $_.DisplayName
UPN = $_.UserPrincipalName
HasPro = ($_.AssignedLicenses.SkuId -contains $proSku.SkuId)
}
} | Sort-Object HasPro | Format-Table -AutoSize
Any candidate room where one device’s account shows HasPro = False is a room that won’t support coordinated meetings until you fix the license. That’s your gap list.
Assigning the missing Pro licenses — dry run first, always
Do not pipe a live Graph query straight into a license assignment. Export the gap list, eyeball it, and feed the reviewed CSV back in. The script below defaults to a dry run and touches nothing until you explicitly pass -Execute.
param(
[string]$InputCsv = ".\ProGaps-Reviewed.csv",
[switch]$Execute # omit this and the script only reports
)
$proSku = (Get-MgSubscribedSku -All |
Where-Object SkuPartNumber -eq 'Microsoft_Teams_Rooms_Pro').SkuId
Import-Csv $InputCsv | ForEach-Object {
$target = $_.UPN
if (-not $Execute) {
Write-Host "[DRY RUN] Would assign Teams Rooms Pro to $target" -ForegroundColor Yellow
return
}
try {
Set-MgUserLicense -UserId $target `
-AddLicenses @{ SkuId = $proSku } `
-RemoveLicenses @() -ErrorAction Stop
Write-Host "[APPLIED] Pro assigned to $target" -ForegroundColor Green
} catch {
Write-Warning "FAILED for $target : $($_.Exception.Message)"
}
}
Run it once with no switch, read every line, then re-run with -Execute. There is no undo button on a bulk license change that strips something you didn’t mean to touch.
Where you’ll configure the pairing itself
The actual pairing is not a PowerShell operation — it’s device configuration. When the feature ships you’ll enable it in two places:
- On the device: Teams Rooms on Android settings → Coordinated meetings, where you nominate the paired device’s account and set which device owns front-of-room vs console roles.
- Centrally, in the Teams Rooms Pro Management portal (
pro.teams.microsoft.com) and the Teams admin center under Teams Rooms → Android, where you’ll manage configuration profiles, firmware, and health at scale rather than walking room to room.
The wider Android room story you should be planning around
Coordinated meetings doesn’t arrive in isolation. Several Android room workstreams are converging, and they touch the same admin muscle:
- AOSP management via Intune. Microsoft is moving Teams Rooms on Android off legacy Android Device Administrator enrollment toward AOSP-based management. If your MDM posture still assumes Device Administrator, that assumption has an expiry date. Get your Android room enrollment strategy onto Intune AOSP now.
- Cloud IntelliFrame and multi-stream on Android. The intelligent speaker-framing and multi-camera experiences that shipped on Windows first are landing on Android endpoints, which is part of why the platform gap is closing.
- Teams Rooms Pro Management parity. The centralized management, analytics, and health monitoring that Windows rooms enjoy continue to expand coverage for Android fleets — the same portal, more device types.
The through-line: Android Teams Rooms are being pulled up to feature and management parity with Windows, and coordinated meetings is one visible marker on that road. Budget for Pro licensing across dual-device rooms, and get your Intune AOSP enrollment sorted regardless of coordinated meetings, because that migration will bite fleets that ignore it.
What to do this quarter
- Inventory now. Run the Graph Teamwork device report and flag every room with two certified endpoints. That’s your coordinated-meetings target list.
- Close the license gaps. Confirm Pro on both devices in every candidate room. This is the real dependency and the one with lead time — do it in FY26 planning, not in January 2027.
- Fix enrollment. Move Android rooms to Intune AOSP management independent of this feature. It’s the bigger operational shift.
- Don’t over-promise the date. GA is January 2027 and Microsoft roadmap dates slip. Design the rooms, buy the licenses, but keep the “single-join room” wording out of your user comms until it’s actually in your tenant.
Coordinated meetings is a genuinely good fix for a genuinely annoying problem. Just remember what the roadmap card doesn’t say: the feature is free with a license you’re already paying a premium for, on both devices, and the value only shows up in rooms you’ve bothered to pair correctly. Inventory first. Everything else follows from that.