Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

2 Writes give "Operation not supported on transport endpoint"

Abierto
#121 4 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
38/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
rust
Área
embedded-iot

Línea de trabajo

Comienza con la reproducción en crates/rig/src/bin/gps.rs y compara la transacción de dos escrituras con la única escritura más larga utilizando los dispositivos Linux I2C indicados. Comprueba cómo I2cdev asigna varios valores de Operation::Write y verifica el comportamiento frente al resultado EOPNOTSUPP; el issue estará terminado cuando se haya establecido el comportamiento compatible y la implementación o la documentación lo refleje.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

I was trying to get the examples in https://github.com/alexeden/adafruit-seesaw to work on linux but i kept getting errors

I managed to track down the problem to this MVP example

use embedded_hal::i2c::{Error, I2c, Operation};
use linux_embedded_hal::{Delay, I2CError, I2cdev, i2cdev::core::I2CDevice};

fn main() {
    let mut i2c = I2cdev::new("/dev/i2c-10").unwrap();

    let regester_num: &[u8] = &[0x00, 0x7F];
    let mut data = [0xFF];
    let mut ops = [Operation::Write(regester_num), Operation::Write(&data)];
    i2c.transaction(0x36_u8, &mut ops).unwrap();
}
thread 'main' panicked at crates/rig/src/bin/gps.rs:10:40:
called `Result::unwrap()` on an `Err` value: I2CError { err: Errno(95) }
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

using https://www.adafruit.com/product/4471 and https://www.adafruit.com/product/5880 but i had the same issue with other i2c peripherals.

95 	EOPNOTSUPP 	Operation not supported on transport endpoint

Please note that a single write of a longer array does not cause the same error.

It should be noted that a single write operation with a longer array does run, let mut ops = [Operation::Write(&[0x00, 0x7F, 0xFF ])]

I cant tell if im doing something wrong or if there is a bug some were.

Lenguaje dominante
Rust
Estrellas
323
Forks
60
Métricas de merge de PR
Sin PR fusionados en 30 d

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de rust-embedded/linux-embedded-hal

Todos los issues de rust-embedded/linux-embedded-hal

Issues similares

Más issues de Rust

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.