Posted: 04/30/2026 ![[c3X-touchbar.png]] TL;DR: The current Driver Monitoring Icon(DMoji) is not expressive enough. The DMoji Bar solves this. Install link to try out design `installer.comma.ai/ugtthis/dmojibar`. Jump to [[#DMoji Bar]]. # Beef I’ve had beef with the stock DMoji since the beginning of my comma 3X journey. The old DMoji showed you if DM was on, and the green lines moved depending on where you looked. It looked cool but felt like the old Mac Touch Bar — mostly cool at first sight but not very useful. Now what if we could make the DMoji communicate how distracted I am in an early, subtle but expressive, opinionated way? # Lvl 2 [openpilot](https://github.com/commaai/openpilot) is a [level 2 ADAS system](https://www.nhtsa.gov/sites/nhtsa.gov/files/2022-05/Level-of-Automation-052522-tag.pdf) which "requires the driver to be alert and to pay attention **at all times**"([docs.comma.ai](https://docs.comma.ai/concepts/safety/)). It's not your robot chauffeur but more so your teammate. And as your teammate it will try to communicate different aspects of the system. Currently, openpilot on comma four is able to communicate the confidence state about a given driving scenario through the confidence ball and steering arc. But there isn't yet(in the current release [0.11](https://github.com/commaai/openpilot/releases/tag/v0.11.0)) a way for openpilot to communicate in an early, subtle but expressive, opinionated way on how attentive the driver is. As openpilot gets better, Driver Monitoring(DM) only gets more important. # Attention ![[bball.png]] I remember there was this one time I was playing basketball as a kid, and for some reason I got distracted, then I turned where I heard the yelling. Next thing you know it, the ball went right to my face. I bet my teammate were making eye contact with me, then tried to talk to get my attention, until it escalated to the yelling, then the physical intervention of a ball to the face. The way this escalated is a pattern that can happen while communicating with others. eye contact + body language -> talking -> yelling -> physical intervention Now lets convert that to how openpilot communicates with the driver depending on how attentive the driver is. - Alert Level 1: talking - Alert Level 2: yelling - Alert Level 3: physical intervention ![[alert-levels.png]] *Mainly focus on the background colors and wording. The steering arc and confidence ball won't always be in that position pictured above.* In [Weixing's talk](https://www.youtube.com/watch?v=S2n5BFGcCv0&t=342s) he mentions how paying attention in the context of openpilot is when the driver is ready to take control. openpilot's current ways to ensure this is from the above alerts. Now you might be wondering. What about the eye contact + body language equivalent type of alert you mentioned in the story? This is where the DMoji Bar comes into place, but before that lets check out a recent openpilot [commit](https://github.com/commaai/openpilot/pull/37826). # Orange Cone Gotta give credit where credits due. The new comma four UI is better than what the comma 3X was. Although it's better, the same idea DMoji was still there. Well at least until I found out a couple days ago. Now on the master branch the green cone goes orange if your awareness/attention drops. Is this progress, I'd say so! Finally the DMoji has an opinion! ![[orange-cone.mp4]] **Early, subtle but expressive, opinionated.** This is what I think makes the ideal DMoji. I'd make the argument that the Orange Cone idea is early, opinionated, and subtle. But it's not as expressive. Before the Orange Cone idea, there was no eye contact + body language equivalent type of alert in the UI. But with the Orange Cone, we now have eye contact type communication, but we are missing the partner. # DMoji Bar Eye contact + body language Combine these 2 things and you have a tool that can help communicate an idea faster and more effectively. Below is a summary of the main changes: - DMoji and bar fades in and out - Neon green cone goes to a neutral color because device has small screen, any sort of color should be meaningful and more biased towards either intentionally indicating OP is engaged or a warning - Bar with 3 levels. gray -> white -> yellow(w/ring) ![[dmojibar--1.mp4]] As you get distracted, the bar grows and becomes most noticeable at its peak which shows a full yellow bar and ring. If you are still distracted, it then escalates to the alert level 1 UI shown previously. # In Action ![[new-ui-dm-1.mp4]] This DMoji Bar is meant to blend in with the scene until it wants to make the equivalent eye contact + body language communication with you. It's not meant to be an adversary but your teammate to remind you to stay attentive. It's meant to be early, subtle but expressive, and clearly show if it disagrees with the drivers current attention. Without a clear obvious disagreement it takes longer for the driver to notice and adjust there attention. # Try it out Message on Discord in the channel [openpilot-ui](https://discord.com/channels/469524606043160576/1120514126783979540) if you try it out and what the experience was like. Try it out on your comma four with the install link below. It is current with commits from master up to April 23rd. ``` installer.comma.ai/ugtthis/dmojibar ``` Github Repo: [https://github.com/ugtthis/openpilot/tree/dmojibar](https://github.com/ugtthis/openpilot/tree/dmojibar) Keep in mind i'm still in the process of refactoring the code but the UI/UX is generally there. More info on DM and openpilot: - Weixing's talk: [A Tour Through Driver Monitoring](https://youtu.be/x6a_vlkMn54) - Weixing's talk: [Human-Machine Cooperation in openpilot](https://youtu.be/S2n5BFGcCv0?si=85wWaatRISMJdpjP) - SAFETY.md: [/docs/SAFETY.md](https://github.com/commaai/openpilot/blob/master/docs/SAFETY.md) - DM Policy: [selfdrive/monitoring/policy](https://github.com/commaai/openpilot/blob/f7644c913ef1d6a7932b5c1021cf3fb36759f8b9/selfdrive/monitoring/policy.py)