micro-ROS / micro-ROS/rmw_microxrcedds

Feature request: runtime switching of transport channel

Aperta
#322 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Lingua principale
C
Stelle
47
Fork
36
Merge medio
2g 19h
PR unite (30g)
6

Descrizione

## Support for runtime switching of transport (UDP / custom, etc )

Current implementation requires compile time definition for transport type. Adding support for runtime
switching will open possibility of applications to setup backup channel in case main channel fails or create more dynamic applications.

### possible implementation
- add a another transport "multimode" apart from UDP, custom, etc which defines multimode implementation. Thus only users with "multimode" bear the overhead of binary size and execution.

#### multimode
- [rmw_uxrce_transport_params_t](https://github.com/micro-ROS/rmw_microxrcedds/blob/jazzy/rmw_microxrcedds_c/include/rmw_microros/rmw_microros.h#L55) contains parameters for all possible types. Nothing excluded by macros.

- Add a static global variable "RMW_UXRCE_ACTIVE_TRANSPORT" to determine currently active transport and make transport call as per currently active transport.

+ many more

Does this sound like a good idea ?

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia esaminando rmw_microros.h, in particolare rmw_uxrce_transport_params_t, e traccia il funzionamento attuale della selezione a tempo di compilazione del trasporto UDP e del trasporto personalizzato. Valuta il trasporto multimode proposto e l’approccio RMW_UXRCE_ACTIVE_TRANSPORT; per considerare concluso il lavoro sarebbe necessario concordare un design per il cambio a runtime e il comportamento del canale di backup.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
c
Ambito
embedded-iot
Tipo di issue
Funzionalità
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.