# Unitree G1 EDU email and calendar integration with Pear

Plan a custom Unitree G1 EDU assistant for iCloud Mail and calendars. Includes SDK prerequisites, an audio check and the Pear connection boundary.

## What this guide helps you build

A developer-built conversation app could let a G1 EDU answer a question about a connected iCloud or Microsoft 365 mailbox. The app calls Pear and turns the response into speech. There is no prebuilt Pear app for G1, and this integration has not been tested on physical hardware.

Unitree lists secondary development for G1 EDU. The standard G1 entry does not list the same capability. Confirm the exact edition, firmware, SDK access and supported audio interface with Unitree before planning the integration. A microphone and speaker on the specification sheet are not proof of application access.

## 1. Prove the software path on your computer

Create a private Pear connection and connect the intended mailbox. Keep its API key in your application environment or secret store. Use the LiveKit guide for a Python MCP client configuration, or another client that supports authenticated Streamable HTTP. Call pear_provider_status before reading any provider data.

[Configure the Python conversation agent](https://pearmcp.com/guides/livekit)

Begin with a typed question about a message you already know exists. Select the intended provider and mailbox, then verify the result against that mailbox. This isolates a Pear or account error from microphone, transcription and robot networking problems.

## 2. Check the robot audio interface separately

Install and configure the official Unitree SDK for your supported environment. Follow Unitree's network setup. Its G1 AudioClient example demonstrates initialization and TtsMaker. The example also contains a hand-wave command, so review it rather than running the entire example as an audio-only test.

The fragment below checks speech using a fixed test sentence. Set UNITREE_NETWORK_INTERFACE to the interface from your Unitree setup. It deliberately contains no mailbox request or motion command. Firmware support, pronunciation and audio behavior require verification on your robot.

```python
import os
from unitree_sdk2py.core.channel import ChannelFactoryInitialize
from unitree_sdk2py.g1.audio.g1_audio_client import AudioClient

ChannelFactoryInitialize(0, os.environ["UNITREE_NETWORK_INTERFACE"])
audio = AudioClient()
audio.SetTimeout(10.0)
audio.Init()
result = audio.TtsMaker("Robot audio test.", 0)
print(result)
```

## 3. Implement the application adapter

Your application must capture audio through an interface supported by the installed firmware, transcribe it, and submit the request to the conversation agent. Send only the selected answer to speech output. TtsMaker is output; calling it does not implement microphone capture or speech recognition.

Choose one audio path: generate speech through the robot API, or stream generated audio through a supported playback interface. Do not assume the robot accepts LiveKit audio tracks without an adapter. Keep the networked mailbox work outside the robot's movement-control loop, with a timeout and a user-visible failure state.

## 4. Validate the first mailbox workflow

Use only read tools and a private owner session. Test a known message, an empty search, the wrong account, an expired key and a disconnected provider. Stop speaking when the owner interrupts. On failure, say the mailbox could not be checked rather than announcing an empty inbox.

Start with subjects or a short calendar briefing. Do not read private mail aloud to visitors or expose a shared public agent using your personal Pear key. Sending email requires a separately designed approval flow; it is outside this read-only prototype.

[Compare other humanoid development paths](https://pearmcp.com/guides/humanoid-robots)

## Provider limits and plans

Apple iCloud and Microsoft 365 are available. Google Workspace is coming soon. Pear cannot access Apple's upgraded Reminders store; its hosted CalDAV connection is limited to legacy reminder data. Microsoft To Do is unaffected. Available tools depend on your connected providers, scopes, plan and readiness.

Free includes 50 counted provider actions per month. One AI request can use several provider actions. Voice, model and robot costs are separate. Review content and recipients before approving writes.

[iCloud setup](https://pearmcp.com/icloud-mcp-server) | [iCloud Mail](https://pearmcp.com/ai-icloud-mail) | [Microsoft 365](https://pearmcp.com/microsoft-365-mcp-server) | [Data handling](https://pearmcp.com/data-handling) | [Plans](https://pearmcp.com/pricing)

## Sources and compatibility status

Research checked on 10 September 2026. This is a custom development path, not a tested Pear robot integration.

- [G1 and G1 EDU specifications](https://www.unitree.com/g1/)
- [Official Python SDK](https://github.com/unitreerobotics/unitree_sdk2_python)
- [Official G1 audio example](https://github.com/unitreerobotics/unitree_sdk2_python/blob/master/example/g1/audio/g1_audio_client_example.py)
