Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
d2fea56
fix: save persistent
chrisgalanis Jul 21, 2025
195d75e
Merge branch 'main' of github.com:worldcoin/orb-software
chrisgalanis Jul 25, 2025
d02e2b5
Merge branch 'main' of github.com:worldcoin/orb-software
chrisgalanis Jul 30, 2025
9040984
Merge branch 'main' of github.com:worldcoin/orb-software
chrisgalanis Aug 7, 2025
9ba8e91
Merge branch 'main' of github.com:worldcoin/orb-software
chrisgalanis Aug 8, 2025
8866016
Merge branch 'main' of github.com:worldcoin/orb-software
chrisgalanis Aug 15, 2025
b7f0532
Merge branch 'main' of github.com:worldcoin/orb-software
chrisgalanis Aug 19, 2025
a950a82
Merge branch 'main' of github.com:worldcoin/orb-software
chrisgalanis Sep 1, 2025
f85882a
Merge branch 'main' of github.com:worldcoin/orb-software
chrisgalanis Sep 1, 2025
912df00
Merge github.com:worldcoin/orb-software
chrisgalanis Sep 3, 2025
68cb5cd
Merge branch 'main' of github.com:worldcoin/orb-software
chrisgalanis Oct 17, 2025
1543d27
Merge github.com:worldcoin/orb-software
chrisgalanis Oct 19, 2025
b75b812
Merge branch 'main' of github.com:worldcoin/orb-software
chrisgalanis Nov 7, 2025
8dda1fb
Merge github.com:worldcoin/orb-software
chrisgalanis Nov 9, 2025
3725ede
Merge branch 'main' of github.com:worldcoin/orb-software
chrisgalanis Nov 12, 2025
7b12495
Merge branch 'main' of github.com:worldcoin/orb-software
chrisgalanis Nov 12, 2025
2466287
Merge github.com:worldcoin/orb-software
chrisgalanis Dec 6, 2025
7940035
Merge branch 'main' of github.com:worldcoin/orb-software
chrisgalanis Dec 9, 2025
f92ac94
Merge branch 'main' of github.com:worldcoin/orb-software
chrisgalanis Dec 11, 2025
1f65059
Merge branch 'main' of github.com:worldcoin/orb-software
chrisgalanis Jan 3, 2026
60e01cd
feat: vocal preflight check
chrisgalanis Jan 3, 2026
b7ddabf
fix: remove upload-certs.sh , staged by mistake
chrisgalanis Jan 3, 2026
e690fa4
Merge branch 'main' into chris/vocal-preflight
chrisgalanis Jan 4, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
49 changes: 49 additions & 0 deletions ui/src/engine/diamond.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1079,6 +1079,55 @@ impl EventHandler for Runner<DIAMOND_RING_LED_COUNT, DIAMOND_CENTER_LED_COUNT> {
)?;
}

Event::VoiceOcclusionGlasses => {
self.sound.queue(
sound::Type::Voice(sound::Voice::OcclusionGlasses),
Duration::ZERO,
)?;
}

Event::VoiceOcclusionMask => {
self.sound.queue(
sound::Type::Voice(sound::Voice::OcclusionMask),
Duration::ZERO,
)?;
}

Event::VoiceOcclusionHair => {
self.sound.queue(
sound::Type::Voice(sound::Voice::OcclusionHair),
Duration::ZERO,
)?;
}

Event::VoiceOcclusionSunglasses => {
self.sound.queue(
sound::Type::Voice(sound::Voice::OcclusionSunglasses),
Duration::ZERO,
)?;
}

Event::VoiceOcclusionSegmentation => {
self.sound.queue(
sound::Type::Voice(sound::Voice::OcclusionSegmentation),
Duration::ZERO,
)?;
}

Event::VoiceOcclusionOther => {
self.sound.queue(
sound::Type::Voice(sound::Voice::OcclusionOther),
Duration::ZERO,
)?;
}

Event::VoiceOcclusionEye => {
self.sound.queue(
sound::Type::Voice(sound::Voice::OcclusionEye),
Duration::ZERO,
)?;
}

Event::GoodInternet => {
self.operator_idle.good_internet();
}
Expand Down
28 changes: 28 additions & 0 deletions ui/src/engine/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -402,6 +402,34 @@ event_enum! {
#[event_enum(method = voice_open_eyes)]
VoiceOpenEyes,

/// Voice: glasses occlusion detected
#[event_enum(method = voice_occlusion_glasses)]
VoiceOcclusionGlasses,

/// Voice: mask occlusion detected
#[event_enum(method = voice_occlusion_mask)]
VoiceOcclusionMask,

/// Voice: hair occlusion detected
#[event_enum(method = voice_occlusion_hair)]
VoiceOcclusionHair,

/// Voice: sunglasses occlusion detected
#[event_enum(method = voice_occlusion_sunglasses)]
VoiceOcclusionSunglasses,

/// Voice: segmentation occlusion detected
#[event_enum(method = voice_occlusion_segmentation)]
VoiceOcclusionSegmentation,

/// Voice: other face occlusion detected
#[event_enum(method = voice_occlusion_other)]
VoiceOcclusionOther,

/// Voice: eye occlusion detected
#[event_enum(method = voice_occlusion_eye)]
VoiceOcclusionEye,

/// Set volume [0..100]
#[event_enum(method = sound_volume)]
SoundVolume {
Expand Down
42 changes: 42 additions & 0 deletions ui/src/engine/pearl/self_serve.rs
Original file line number Diff line number Diff line change
Expand Up @@ -741,6 +741,48 @@ impl Runner<PEARL_RING_LED_COUNT, PEARL_CENTER_LED_COUNT> {
Duration::ZERO,
)?;
}
Event::VoiceOcclusionGlasses => {
self.sound.queue(
sound::Type::Voice(sound::Voice::OcclusionGlasses),
Duration::ZERO,
)?;
}
Event::VoiceOcclusionMask => {
self.sound.queue(
sound::Type::Voice(sound::Voice::OcclusionMask),
Duration::ZERO,
)?;
}
Event::VoiceOcclusionHair => {
self.sound.queue(
sound::Type::Voice(sound::Voice::OcclusionHair),
Duration::ZERO,
)?;
}
Event::VoiceOcclusionSunglasses => {
self.sound.queue(
sound::Type::Voice(sound::Voice::OcclusionSunglasses),
Duration::ZERO,
)?;
}
Event::VoiceOcclusionSegmentation => {
self.sound.queue(
sound::Type::Voice(sound::Voice::OcclusionSegmentation),
Duration::ZERO,
)?;
}
Event::VoiceOcclusionOther => {
self.sound.queue(
sound::Type::Voice(sound::Voice::OcclusionOther),
Duration::ZERO,
)?;
}
Event::VoiceOcclusionEye => {
self.sound.queue(
sound::Type::Voice(sound::Voice::OcclusionEye),
Duration::ZERO,
)?;
}
_ => {}
}
Ok(())
Expand Down
14 changes: 14 additions & 0 deletions ui/src/sound/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -248,6 +248,20 @@ sound_enum! {
PleaseDontShutDown,
#[sound_enum(file = "voice_iris_open")]
OpenEyes,
#[sound_enum(file = "voice_occlusion_glasses")]
OcclusionGlasses,
#[sound_enum(file = "voice_occlusion_mask")]
OcclusionMask,
#[sound_enum(file = "voice_occlusion_hair")]
OcclusionHair,
#[sound_enum(file = "voice_occlusion_sunglasses")]
OcclusionSunglasses,
#[sound_enum(file = "voice_occlusion_segmentation")]
OcclusionSegmentation,
#[sound_enum(file = "voice_occlusion_other")]
OcclusionOther,
#[sound_enum(file = "voice_occlusion_eye")]
OcclusionEye,
}
}

Expand Down
Loading