Avviso di Garanzia e Sicurezza:
La garanzia inizia alla ricezione. Il proprietario spedisce l'unità a Unitree a proprie spese per la diagnosi. La garanzia è ANNULLATA in caso di apertura della scocca, smontaggio o modifica non autorizzata. Nessun canale di ricambi per il consumatore; i rivenditori forniscono solo supporto di primo livello. G1 base ~8 mesi; G1 EDU ~18 mesi (EU 24 mesi).
Fonti:
https://www.unitree.com/mobile/terms/policyhttps://blog.robozaps.com/b/unitree-g1-review
Le soluzioni temporanee elencate di seguito provengono dalla community e vengono fornite senza garanzia.
I motori di gamba/anca/caviglia si surriscaldano e causano uno spegnimento
Sintomo
I motori di roll della caviglia raggiungono ~90°C in 5-10 min anche quasi in idle; l'articolazione dell'anca sinistra si surriscalda dopo ~30 min di teleoperazione e triggers uno spegnimento automatico del sistema.
Interessati
Segnalato con controller whole-body di terze parti (NVIDIA GEAR-SONIC / Isaac-GR00T N1.7 su Jetson Orin NX). Il controller stock di Unitree mantiene le caviglie a 30-45°C.
Soluzione / Soluzione Temporanea
Il surriscaldamento è legato a guadagni aggressivi del controller, non sempre un guasto hardware. Ridurre i guadagni Kp/Kd, regolare la postura in piedi per abbassare il carico statico e preferire il controller stock di Unitree per operazioni prolungate. Se le temperature aumentano anche sul controller stock, fermare l'uso e ispezionare — un attuatore che fallisce genuinamente necessita di assistenza.
Il motore della spalla/braccio si surriscalda e diventa debole con mano destra Inspire
Sintomo
Il motore di pitch della spalla si surriscalda dopo brevi operazioni e il braccio perde reattività quando abbinato alla mano destra dexterous Inspire FTP.
Interessati
G1 ARM7 + mano Inspire FTP, ROS2 Humble; utenti con guadagni PD kp=40 / kd=1.5.
Soluzione / Soluzione Temporanea
Nessuna soluzione vendor documentata. Indicazione della community: il braccio necessita di compensazione di gravità/payload per la massa aggiuntiva della mano e limiti di coppia inferiori; i proprietari stanno ancora cercando i guadagni PD raccomandati da Unitree per questo abbinamento. Trattare come un problema di tuning prima di assumere un guasto hardware.
Il robot ignora i comandi SDK (bloccato in damp / develop mode)
Sintomo
G1 si avvia in 'damp mode' e ignora i comandi SDK; entrare in 'develop mode' disabilita anche la rispondenza SDK, quindi gli utenti concludono che l'SDK è rotto.
Interessati
Comportamento generale del firmware G1.
Soluzione / Soluzione Temporanea
Attivare il robot con il telecomando prima di inviare comandi SDK: premere L1+A, poi L1+UP per uscire dalla damp mode. Non rimanere in develop mode se hai bisogno del controllo SDK. Se sei entrato in develop mode, rinnova il client ai-sport tramite l'app.
WaveHand / ShakeHand falliscono da SDK (errore 3203 'API not implemented')
Sintomo
Le azioni WaveHand e ShakeHand del braccio funzionano dal telecomando ma falliscono da Python/C++/ROS2; ROS2 ritorna errore 3203 'API not implemented on server'.
Interessati
Firmware prima di v1.3.0.
Soluzione / Soluzione Temporanea
Aggiornare il firmware del robot a v1.3.0 o successivo. Assicurarsi anche che il robot sia attivato fuori dalla damp mode (L1+A, L1+UP) prima di inviare i comandi.
Codice ed esempi ufficiali si rompono dopo firmware 1.4.0 ('ClientStub send request error')
Sintomo
Codice Python precedentemente funzionante ed esempi SDK ufficiali smettono di funzionare dopo l'aggiornamento a firmware 1.4.0; '[ClientStub] send request error' ripetuto. Correlato: GetVolume ritorna errore 3102, esempi high-level/audio falliscono.
Interessati
Firmware 1.4.0.
Soluzione / Soluzione Temporanea
Nessuna soluzione vendor documentata. Confermare che il robot sia attivato (fuori dalla damp mode), verificare che la versione SDK corrisponda al firmware e se hai aggiornato specificamente per una funzionalità, essere consapevoli che alcuni utenti hanno fatto rollback. Seguire le note di rilascio di Unitree per una patch successiva.
Mano Inspire non apre porta seriale / irraggiungibile al suo IP
Sintomo
'Open Serial port /dev/ttyUSB0 failed' — la mano Inspire non può essere controllata; o la mano FTP è irraggiungibile a 192.168.123.211.
Interessati
G1 con mano Inspire (varianti serial DFX vs FTP modbus-TCP).
Soluzione / Soluzione Temporanea
Il metodo di controllo dipende dalla variante della mano. Le mani Inspire FTP usano Modbus TCP, non una porta seriale — usare codice seriale su una mano FTP fallisce per design. Confermare quale variante si ha e usare il metodo di controllo corrispondente; verificare che l'IP della mano sia raggiungibile sulla rete 192.168.123.x.
Pollice della mano Dex3-1 si muove appena durante teleoperazione
Sintomo
In teleop il pollice fa solo micromovimenti di 3-4° rispetto al range completo in simulazione; pinza pollice-indice si blocca a ~5cm, troppo grossolano per manipolazione fine.
Interessati
Software G1 V1.4.7 + mano Dex3-1.
Soluzione / Soluzione Temporanea
Nessuna soluzione documentata. Il self-check all'accensione mostra giunti normali e la simulazione funziona, il che indica una mancata corrispondenza nel mapping dei comandi tra teleop e il driver della mano piuttosto che hardware. Segnalare la versione del driver a Unitree.
Latenza di teleoperazione cresce a ~2.5s dopo 1-2 ore
Sintomo
La latenza del braccio e della telecamera sale a ~2.5s dopo teleop prolungato; la pose di preparazione del braccio impiega ~4s invece di ~2s, alla fine appare immediatamente all'avvio.
Interessati
xr_teleoperate v1.3 e v1.5.
Soluzione / Soluzione Temporanea
Nessuna soluzione documentata. L'aggiornamento a un router gigabit e WiFi 6 non ha aiutato e la modalità simulazione non è interessata — suggerendo un problema di buffering/accumulo a bordo piuttosto che la rete. Riavviare lo stack di teleop tra sessioni lunghe come soluzione temporanea.
Il deployment delle policy su WiFi si blocca su 'Waiting for connection rt/lowstate'
Sintomo
Il deployment su WiFi si blocca su 'Waiting for connection rt/lowstate' anche se SSH al robot funziona; ethernet cablato funziona bene.
Interessati
G1, controllo basato su DDS.
Soluzione / Soluzione Temporanea
Usa una connessione cablata e specifica l'interfaccia, es. ./g1_ctrl --network enx701988512412. Il multicast DDS per lowstate non attraversa l'interfaccia wireless in modo affidabile.
Mancata corrispondenza di versione CycloneDDS blocca l'avvio della sim G1
Sintomo
Errore di asserzione DDS / errore writer CycloneDDS durante l'inizializzazione della simulazione G1; non si avvia.
Interessati
Ubuntu 22.04, ROS2 Humble; CycloneDDS di sistema 0.10.5 vs CycloneDDS Python 0.10.2.
Soluzione / Soluzione Temporanea
Non sourciare lo script setup ROS (le sue librerie DDS differiscono da quelle di unitree_sdk2). Verifica quale .so è linkato a compile time. Alternative: compila CycloneDDS 0.10.2 da sorgente, patcha unitree-sdk2py per 0.10.5, o sviluppa su Ubuntu 20.04.
'Tipo robot non corrispondente' su connessione Ethernet (23 vs 29 DOF)
Sintomo
Il controller si connette via Ethernet poi fallisce immediatamente con 'Tipo robot non corrispondente' durante il deployment sim-to-real.
Interessati
Varianti G1 a 23 DOF e 29 DOF (incl. configurazioni con vita bloccata/mano finta).
Soluzione / Soluzione Temporanea
I DOF/config del robot devono corrispondere al tipo atteso dal controller. Imposta i DOF corretti nella tua config, e controlla installazioni SDK conflittuali in /usr/local vs il percorso del tuo progetto — ricompilare unitree_sdk2 pulitamente (build deploy con -DBUILD_EXAMPLES=OFF, build sim con un CMAKE_INSTALL_PREFIX separato) risolve il caso correlato di modalità velocità non rispondente.
Muovere le braccia via SDK mentre si cammina destabilizza l'equilibrio
Sintomo
Controllare le braccia via SDK mentre si cammina (gamepad) fa piegare il robot in avanti o perdere l'equilibrio; alzare le braccia mentre si cammina produce un'andatura instabile e pesante.
Interessati
G1 con vita a 3 DOF.
Soluzione / Soluzione Temporanea
Nessuna correzione documentata. Azzerare gli assi della vita, mantenere i valori iniziali e lasciarli stare sono state tutte provate senza successo — il controller SDK del braccio e il controller di equilibrio della locomozione confliggono. Evita grandi movimenti del braccio durante la locomozione finché un aggiornamento firmware non lo affronti.
G1 simulato collassa senza stabilizzazione predefinita
Sintomo
In simulazione MuJoCo il G1 non ha stabilizzazione predefinita e cade quando eseguito senza controlli.
Interessati
unitree_mujoco.
Soluzione / Soluzione Temporanea
Abilita la banda elastica: imposta enable_elastic_band: 1 in unitree_mujoco/simulate/config.yaml (o ENABLE_ELASTIC_BAND=True). Nota che il controller di movimento factory non è disponibile in sim, e la banda può essere difficile da disabilitare quando si passa al controllo joystick.
La batteria da 9.000 mAh fornisce solo circa 2 ore per carica, e si consuma più velocemente sotto movimento dinamico.
Interessati
Modello base, pacco batteria 9.000 mAh.
Soluzione / Soluzione Temporanea
Questa è una limitazione di capacità, non un difetto. Tieni batterie di ricambio cariche per l'hot-swap tra sessioni; pianifica un'autonomia di circa ~2 ore di uso attivo.
Gli acquirenti del G1 base da ~$13.500 scoprono che è un'unità dimostrativa/da showroom senza SDK e non può essere programmata.
Interessati
G1 base (23 DOF) vs G1 EDU (fino a 43 DOF).
Soluzione / Soluzione Temporanea
Questa è una limitazione del tier del prodotto. L'accesso SDK, coppia più alta e più DOF richiedono la piattaforma G1 EDU / developer (~$44k-$74k). Conferma il tier prima dell'acquisto se intendi sviluppare.
LED rosso fisso / checklist guasto fisico (cadute, cavi, batteria)
Sintomo
LED rosso fisso che indica errore software/hardware; più guasti sul campo — crepe/danneggiamenti da cadute, degradazione sensori da polvere o disallineamento, componenti non rispondenti da cavi allentati/sfilacciati, batteria gonfia o deformata.
Interessati
Generale.
Soluzione / Soluzione Temporanea
Ispeziona visivamente per danni da impatto; pulisci i sensori e conferma il montaggio; riattacca cavi e connettori; verifica il posizionamento della batteria e sostituiscila se gonfia o che perde. Su LED rosso fisso, esegui i diagnostici dall'app mobile e registra un video di qualsiasi guasto intermittente prima di contattare il supporto. Nota: aprire la scocca invalida la garanzia.
Sicurezza critica: iniezione comandi BLE con chiavi hardcoded (UniPwn)
Sintomo
Una falla di iniezione comandi nel provisioning Wi-Fi BLE, che usa chiavi AES hardcoded condivise tra tutte le unità, permette accesso root ed è potenzialmente wormable. Ricerche separate hanno trovato telemetria trasmessa a server esterni ogni ~5 minuti.
Interessati
G1 (i ricercatori indicano che Go2/H1 condividono percorsi codice). Exploit pubblico 'UniPwn' rilasciato.
Soluzione / Soluzione Temporanea
Nessuna patch vendor confermata documentata al momento della scrittura. Mitiga a livello rete: isola il robot su una rete segmentata/firewall, limita l'accesso alla sua interfaccia interna (192.168.123.0/24), e blocca traffico outbound inaspettato. Attendi un advisory firmware Unitree.
Le abilità virali dei demo sono coreografate, non autonome
Sintomo
I video di kung-fu e capriole sono showcase addestrati; il robot non ha autonomia domestica out-of-the-box e fallisce compiti semplici come aprire una porta.
Interessati
Generale.
Soluzione / Soluzione Temporanea
Gestione delle aspettative, non un difetto. La performance autonoma dei task richiede sviluppo significativo sulla piattaforma EDU; l'esperienza base è movimenti remoti/pre-programmati.
Il robot G1 23-DoF si muove in modo irregolare in Sim2Sim MuJoCo
Sintomo
Quando si esegue Sim2Sim in MuJoCo con una policy addestrata in Isaac Lab per la configurazione G1 23-DoF, il robot non cammina correttamente e si muove in modo irregolare. La causa sospettata segnalata nella discussione è che gli ID dei motori non sono stati adattati per la versione 23-DoF.
Soluzione / Soluzione Temporanea
Il vendor (Agnel-Wang) ha aggiunto il codice di deploy a 23-DoF al repository; il segnalatore ha confermato il successo del Sim2Real dopo aver utilizzato il codice aggiornato.
G1_29_ArmController stampa ripetutamente 'Waiting to subscribe dds' e l'app del robot segnala errore di comunicazione firmware
Sintomo
Quando si esegue lo script di teleoperazione, il controller stampa indefinitamente '[G1_29_ArmController] Waiting to subscribe dds...' e l'app mobile segnala '底层固件通信故障' (errore di comunicazione firmware sottostante). La comunicazione DDS tra il dispositivo host e il robot non viene stabilita nonostante i dispositivi siano sulla stessa rete.
Soluzione / Soluzione Temporanea
Il manutentore consiglia di verificare la connettività di rete con 'cyclonedds ps' e 'cyclonedds subscribe rt/lowstate'; se il problema persiste, inviare un ticket di supporto. Un commentatore ha segnalato che gli esempi di basso livello funzionavano ma gli esempi di braccio di alto livello non producevano alcun movimento del robot e generavano errori di invio richiesta.
Il WebSocket Apple Vision Pro si disconnette immediatamente ad ogni caricamento della pagina nella configurazione di teleoperazione
Sintomo
Quando si accede al server di teleoperazione da Safari di Apple Vision Pro, il WebSocket si connette ma si disconnette immediatamente ad ogni caricamento della pagina, producendo 'AssertionError: Websocket session is missing.' sul server. L'aggiornamento della pagina ripete il ciclo di connessione/disconnessione; gli unici workaround trovati sono rimuovere il visore AVP o chiudere completamente Safari e attendere qualche secondo.
Connessione temporaneamente stabile ottenuta togliendo l'AVP o chiudendo completamente Safari per qualche secondo. Il manutentore ha suggerito di provare 'https://vuer.ai/?ws=wss://host ip:8012' ma non è stata fornita alcuna soluzione confermata.
La policy WBC trasmette valori ma il G1 reale non si muove dopo la calibrazione delle mani
Sintomo
Tramite il driver community GR00T-WholeBodyControl: dopo che il robot entra in modalità debug e le mani si calibrano correttamente, il G1 non si muove affatto nonostante il terminale mostri la policy che trasmette valori al robot. Nessun errore viene segnalato e la simulazione parallela funziona correttamente.
Il feed video Vuer su Quest 3 si blocca sul primo frame durante la teleoperazione con robot reale
Sintomo
Quando si esegue la pipeline di teleoperazione con un visore Quest 3, il display Vuer mostra solo il primo frame catturato e poi si blocca, mentre il client di immagini sul PC conferma che il feed video della telecamera in tempo reale funziona correttamente. Il problema è stato riprodotto sia nel branch principale che con il branch teleimager.
Il manutentore ha suggerito di passare al branch teleimager (streaming WebRTC); il segnalatore ha applicato il branch ma ha notato che non supporta il deploy in simulazione. Nessuna soluzione completamente confermata per il problema del frame bloccato.
La pagina di teleoperazione diventa nera e il WebSocket si disconnette quando si entra in modalità VR su Apple Vision Pro
Sintomo
Dopo che Vision Pro visualizza correttamente il feed della telecamera binoculare, cliccare su 'virtual reality' e concedere il permesso di tracciamento delle mani causa la visualizzazione di una schermata nera e la disconnessione immediata del WebSocket, sollevando 'AssertionError: Websocket session is missing.' La traccia dell'errore ha origine in vuer/server.py.
Soluzione / Soluzione Temporanea
Il manutentore ha suggerito di usare solo Wi-Fi a 5 GHz, monitorare la latenza del ping verso l'AVP (dovrebbe essere inferiore a 50 ms), testare con lo script televuer direttamente e provare la versione vuer 0.0.32rc7. Nessuna soluzione confermata segnalata.
G1 non cammina quando viene emesso un comando di locomozione tramite controller di teleoperazione; input del joystick ignorato
Sintomo
Quando si usa la modalità controller dello script di teleoperazione con il flag --motion, il controllo del braccio funziona correttamente ma il robot non risponde ai comandi del joystick per camminare. Anche dopo aver chiuso il programma, il telecomando fisico non riesce a far camminare il robot, sebbene i gesti del braccio continuino a funzionare normalmente.
Interessati
ai_sport versione non specificata; xr_teleoperate, G1_29
Soluzione / Soluzione Temporanea
Il manutentore ha identificato che il nome del servizio di locomozione di ai_sport è cambiato alla versione 8.2.0.0 (LOCO_SERVICE_NAME deve essere 'sport' per >=8.2.0.0, 'loco' per le versioni precedenti). Ha anche consigliato di specificare il nome corretto dell'interfaccia di rete nel codice se si esegue su un dispositivo multi-NIC. Il manutentore ha confermato che la locomozione funzionava sul loro robot con la versione 8.4.0.0 dopo un aggiornamento con git pull.
Le articolazioni del G1 non si muovono dopo l'avvio del programma di teleoperazione e la pressione di 'r'
Sintomo
Il programma di teleoperazione si avvia senza errori, DDS sembra connettersi e l'AVP visualizza il feed video in tempo reale con tracciamento del braccio, ma il robot G1 non si muove quando il programma è in esecuzione e dopo aver premuto 'r' per avviare. L'output della posizione delle articolazioni è assente dal log, diversamente dal comportamento atteso. L'accesso alla modalità debug dal programma è segnalato come incoerente.
Il visore VR mostra solo una griglia blu, robot non visibile nella simulazione di teleoperazione XR
Sintomo
Quando si esegue la teleoperazione XR in simulazione con un Meta Quest 3, l'utente entra correttamente in modalità VR ma vede solo griglie blu invece del robot. Il terminale della simulazione mostra anche '[DDSManager] object g1 not found' e 'g1_robot_dds is not initialized'.
Interessati
unitree_sim_isaaclab con task Isaac-PickPlace-Cylinder-G129-Dex3-Joint; xr_teleoperate teleop_hand_and_arm.py; Meta Quest 3
La policy sim2sim di G1 fa derivare il robot a sinistra e scuotere le braccia in modo incontrollabile in MuJoCo
Sintomo
Quando si distribuisce una policy RL addestrata (o la policy v0 fornita) da unitree_rl_lab in MuJoCo tramite simulate_python, il robot G1 deriva verso il lato sinistro, scuote le braccia con alta frequenza e bassa ampiezza, ed è quasi impossibile da controllare con il joystick. Il robot oscilla anche immediatamente dopo aver premuto la sequenza di pulsanti di attivazione del movimento.
Interessati
unitree_rl_lab (ultima versione); Isaac Sim + Isaac Lab; unitree_mujoco con G1 29dof; simulate_python (non simulate con C++)
Soluzione / Soluzione Temporanea
Suggerimento della community: aumentare il valore dell'armatura del braccio e del polso nel g1_29dof.xml di MuJoCo per ridurre il tremore delle braccia. Nessuna correzione confermata per la deriva/instabilità complessiva.
RuntimeError 'list index out of range' in unitree_mujoco durante l'esecuzione di G1 con configurazione mano
Sintomo
L'esecuzione di unitree_mujoco.py per G1 (o H1 con mani Inspire) genera '[RecurrentThread] target func raise exception: name=IndexError, args=("list index out of range",)' in fase di esecuzione. L'errore si verifica quando si tenta di simulare il robot con attacchi mani.
Interessati
unitree_mujoco; G1 con mano (scene_29dof_with_hand.xml); H1 con mani Inspire
Soluzione / Soluzione Temporanea
Workaround della community: usare scene_29dof.xml invece di scene_29dof_with_hand.xml. Separatamente, assicurarsi che il nome ROBOT in config.py sia esattamente uno dei nomi supportati (es. 'g1') e non una variante come 'g1_23dof'.
I comandi SDK di alto livello restituiscono 'send request error' su G1; i comandi di basso livello funzionano
Sintomo
Quando si eseguono comandi SDK di alto livello (es. g1_loco_client_example.py), il client stampa '[ClientStub] send request error. id: <id>' e il comando non viene eseguito. Gli script di basso livello (g1_low_level_example.py) funzionano correttamente.
Interessati
unitree_sdk2_python; Robot G1; Comandi di alto livello g1_loco_client_example.py
WebSocket si disconnette immediatamente all'ingresso in modalità VR su Meta Quest 3 con input hand tracking
Sintomo
Quando si usa xr_teleoperate con un Meta Quest 3, la connessione WebSocket alla pagina Vuer sulla porta 8012 cade immediatamente cliccando sul pulsante Virtual Reality, stampando 'websocket is now disconnected' e 'AssertionError: Websocket session is missing.' Il problema è specifico della modalità di input hand tracking; passare alla modalità di input controller mantiene la connessione attiva.
Workaround della community: eseguire il downgrade di xr_teleoperate alla v1.0 risolve la disconnessione. In alternativa, passare a --input-mode=controller mantiene il WebSocket connesso. Usare il browser Wolvic invece del browser predefinito Meta Quest previene anche la disconnessione WebSocket, sebbene rimangano problemi di streaming della fotocamera.
Pagina VR di teleoperazione irraggiungibile tramite IP locale; WebSocket cade all'ingresso in modalità VR
Sintomo
Quando si accede all'interfaccia di teleoperazione tramite indirizzo IP locale (https://<host-ip>:8012?ws=wss://<host-ip>:8012), la pagina non carica o mostra una schermata nera. All'ingresso in VR/passthrough (modalità WebXR), il WebSocket cade e il robot smette di ricevere dati di tracking, con il server che riporta 'Websocket session is missing' e occasionali 'AssertionError' aiohttp 'resume_writing()'.
Interessati
vuer 0.0.60, televuer 4.0.0; hardware: Unitree G1 29-DoF EDU con Inspire RH56DFTP, Meta Quest 3 e Apple Vision Pro (visionOS 26.4)
Soluzione / Soluzione Temporanea
Il maintainer suggerisce di verificare che l'IP host sia incluso nel campo SAN del certificato, usare navigazione in incognito/privata, e provare combinazioni di versioni fisse di vuer/televuer. Un contributor della community ha identificato che Quest browser's RTCPeerConnection.createOffer() non risolve mai e ha proposto un flusso WebRTC avviato dal server come workaround, ma non è stato ufficialmente upstreamato. Nessuna correzione confermata dal vendor.
Il programma di teleoperazione termina automaticamente poco dopo che il robot alza le braccia quando la mano FTP Inspire è abilitata
Sintomo
Quando si lancia teleop_hand_and_arm.py con la mano destrosa Inspire FTP abilitata (--ee=inspire_ftp), il robot alza leggermente entrambe le braccia e poi il programma termina automaticamente, abbassando le braccia. Il log mostra che il client immagine si chiude inaspettatamente e il programma esce senza un messaggio di errore chiaro.
Interessati
xr_teleoperate; hardware: Unitree G1 29-DoF con mani destrose Inspire FTP
Soluzione / Soluzione Temporanea
Workaround confermato dall'utente: eseguire senza il flag --ee=inspire_ftp (cioè senza attivare le mani destrose FTP) per operare solo le braccia. Il maintainer ha notato che tutto il codice dell'end-effector è scritto per una coppia sinistra-destra, quindi una singola mano difettosa può rompere le cose. L'utente ha patchato la classe Inspire_Controller_FTP per gestire l'operazione a mano singola. Il maintainer ha anche suggerito di provare l'ultima versione del codice.
Entrambe le mani destrose Inspire rispecchiano solo il movimento della mano destra a causa di una configurazione errata della porta seriale
Sintomo
Durante la teleoperazione con due mani destrose Inspire, entrambe le mani seguono solo il movimento della mano destra. La causa root identificata nel thread è che il codice di esempio invia comandi per entrambe le mani alla stessa porta seriale.
Interessati
Unitree G1 con mani destrose Inspire DFX / RH56DFTP; codice di esempio inspire_ctrl.cpp dal pacchetto di esempio del vendor
Soluzione / Soluzione Temporanea
Correzione identificata dalla community confermata dal maintainer: modificare inspire_ctrl.cpp per inizializzare due porte seriali separate (serial1 = /dev/ttyUSB1, serial2 = /dev/ttyUSB2) e associare ogni mano alla sua rispettiva porta e ID. Il vendor ha fornito il codice inspire_ctrl.cpp corretto nei commenti.
Il simulatore unitree_mujoco va in crash con 'free(): invalid pointer' / 'Aborted (core dumped)' a runtime
Sintomo
Dopo aver avviato il binario del simulatore unitree_mujoco, il programma si avvia ("MuJoCo data is prepared") e poi si arresta immediatamente con l'errore "free(): invalid pointer" e "Aborted (core dumped)". Una variante precedente dell'errore era "Joystick open failed". Molteplici utenti segnalano questo problema nelle versioni MuJoCo 3.2.7 e 3.3.1.
Interessati
unitree_mujoco; MuJoCo 3.2.7 e 3.3.1; Ubuntu 22.04 e Ubuntu 24.04 con ROS2 Jazzy
Soluzione / Soluzione Temporanea
Un utente della community ha rintracciato il crash su Ubuntu 24.04 / ROS2 Jazzy in un conflitto del percorso delle librerie DDS (le librerie DDS di ROS2 Jazzy e quelle installate con unitree_sdk2 caricate simultaneamente). La risoluzione del conflitto di percorso ha risolto il crash per quell'utente. L'errore del joystick è stato corretto in un commit specifico (2f5459d). Nessuna soluzione singola confermata per tutte le varianti segnalate.
G1 si surriscalda e si spegne dopo pochi minuti di esecuzione del policy sonic_release, causando cadute
Sintomo
Tramite il driver GR00T-WholeBodyControl della community: Quando si implementa il policy sonic_release su un robot G1 reale a 29-DoF dotato di mani Dex3, il robot emette un avviso di surriscaldamento dopo pochi minuti anche restando fermo in posizione eretta, poi Sonic si spegne automaticamente, causando la caduta del robot più volte.
Interessati
Unitree G1 29-DoF EDU con mani Dex3; checkpoint GR00T-WholeBodyControl sonic_release
La sessione WebSocket si interrompe e la vista VR diventa nera quando si entra in modalità Realità Virtuale su Quest 3
Sintomo
Dopo aver connesso con successo Quest 3 alla pagina di teleoperazione (l'interfaccia vuer si carica ma mostra una schermata nera), cliccare su "Realità Virtuale" causa la disconnessione della sessione WebSocket. Il terminale mostra che la connessione è caduta. Un contributor della community ha rintracciato questo problema in un bug nel browser di Meta Quest 3 dove RTCPeerConnection.createOffer() non risolve mai la sua Promise, interrompendo il flusso WebRTC predefinito avviato dal client.
Interessati
xr_teleoperate; hardware: G1-EDU 29-DoF con Dex3-1, Meta Quest 3
Soluzione / Soluzione Temporanea
Un contributor della community ha proposto di invertire la negoziazione WebRTC verso un flusso avviato dal server (il server crea l'offerta, il browser chiama createAnswer()) come soluzione alternativa. Nessuna correzione upstream confermata.
La comunicazione DDS fallisce quando il PC host si connette al G1 tramite Wi-Fi invece che Ethernet
Sintomo
La teleoperazione funziona correttamente quando il laptop è connesso al robot tramite cavo Ethernet, ma fallisce con errori DDS quando si tenta di operare in modalità wireless tramite Wi-Fi. Inoltre, quando si esegue tutto sul PC2 del robot (Jetson), i problemi di connessione appaiono dopo circa 10 minuti.
Interessati
xr_teleoperate; hardware: Unitree G1 EDU con mani Inspire FTP e Apple Vision Pro
Soluzione / Soluzione Temporanea
Il maintainer suggerisce di utilizzare un proxy di inoltro DDS a livello applicativo, o di montare un router sul retro del G1 (subnet 192.168.123.*/24) alimentato dall'interfaccia di alimentazione del G1. Nessuna soluzione completa singola confermata.