Misdetection of 512Kbit breakout board?
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 32/100
- Tipo de issue
- Error
- Claridad
- Necesita aclaración
- Estado de actividad
- Estancado
- Stack tecnológico
- cpp
- Área
- embedded-iot
Línea de trabajo
Start by comparing the detectMemorySizeBytes and getMemorySizeBytes entry points used by the examples, then inspect SparkFun_External_EEPROM.cpp around the reported write warning. Reproduce both examples with the 512Kbit breakout board and trace how the detected size is derived. Done means the examples consistently report the board's size and the compiler warning has been addressed.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Subject of the issue
DetectSettings examples appear to mis-identify 512Kbit i2c breakout board.
I recently purchased (1) "SparkFun Qwiic EEPROM Breakout - 512Kbit" ( https://www.sparkfun.com/products/18355 )
After soldering the header on, I hooked it up to an Arduino Uno, installed the Sparkfun External EEPROM library (this one), and gave it a go.
The results:
17:49:47.133 -> Qwiic EEPROM example
17:49:47.133 -> Memory detected!
17:49:47.133 -> Detected number of address bytes: 2
17:49:47.133 -> Detected pageSizeBytes: 128
17:49:47.359 -> Detected page write time (ms): 2
17:49:47.390 -> Detected EEPROM size (bytes): 16 bytes / 128 Bits - 24XX00
My understanding is that I have the "24xx512" (2 address bytes, 128 byte page size).
These appear to be correctly detected.
However, the detection of the EEPROM size itself comes back what appears to be wrong as can be seen above.
I am powering the device over USB.
Then I tried example 7, which yielded:
17:53:02.652 -> Qwiic EEPROM example
17:53:02.652 -> Memory detected!
17:53:03.005 -> Detected pageSizeBytes: 128
17:53:03.232 -> Detected EEPROM size (bytes): 4096 bytes / 32 kBits - 24XX32
17:53:03.232 -> Checking memory: Good
17:53:03.457 -> I read (should be 200): 200
17:53:03.457 -> I read (should be -366): -366
17:53:03.457 -> I read (should be -7.35): -7.35
17:53:03.490 -> I read: Hi, I am just a simple test string
17:53:03.490 -> Next available EEPROM location: 105
This is detecting an EEPROM size of 4KB (24XX32).
Hence my confusion.
The former is using detectMemorySizeBytes and the latter is using getMemorySizeBytes.
It's not clear to me what the difference is.
Although unrelated, there is also a compile-time warning:
.../Arduino/libraries/SparkFun_External_EEPROM_Arduino_Library/src/SparkFun_External_EEPROM.cpp: In member function 'int ExternalEEPROM::write(uint32_t, const uint8_t*, uint16_t)':
.../Arduino/libraries/SparkFun_External_EEPROM_Arduino_Library/src/SparkFun_External_EEPROM.cpp:879:32: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (uint16_t x = 0; x < amtToWrite; x++)
~~^~~~~~~~~~~~
- Lenguaje dominante
- C++
- Estrellas
- 67
- Forks
- 23
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de sparkfun/SparkFun_External_EEPROM_Arduino_Library
-
Use of Software I²C ? Abierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
sparkfun/SparkFun_External_EEPROM_Arduino_Library#41 · 1 comentario ·
-
Return type of put and get. Abierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
sparkfun/SparkFun_External_EEPROM_Arduino_Library#36 · 2 comentarios ·
Todos los issues de sparkfun/SparkFun_External_EEPROM_Arduino_Library
Issues similares
-
Dificultad 1/5 1-3 horas Aptitud para principiantes 92/100
autowarefoundation/autoware_universe#13413 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
-
automated-analysis bug memory-safety
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 86/100
-
Sensor initialization takes very long when `--initial-sim-time` is set to current UNIX timestamp Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
gazebosim/gz-sensors#662 · 1 comentario ·