Mcp23017 initialization resets pin values
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 3/5
- Tempo estimado
- 1-2 dias
- Facilidade para iniciantes
- 45/100
- Tipo de issue
- Bug
- Clareza
- Razoavelmente clara
- Status de atividade
- Estagnada
- Stack de tecnologia
- csharp
- Domínio
- embedded-iot
Direção de pesquisa
Comece em src/devices/Mcp23xxx/Mcp23xxx.cs, por volta da linha 84, onde a inicialização de Mcp23017 é realizada. Reproduza a sequência de criar um adaptador, escrever um pino como high e criar um segundo adaptador; estará concluído quando o pino mantiver seu valor após a reinicialização.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Describe the bug
Every time a new instance of Mcp23017() is being created the pins are being reset to low. This is an issue when the written software reboots, eg when updating the software version.
Steps to reproduce
var pinNumber = 0;
var i2cConnectionSettings = new I2cConnectionSettings(1, 0x20);
var i2cDevice = I2cDevice.Create(i2cConnectionSettings);
var device = new Mcp23017(i2cDevice);
var controller = new GpioController(PinNumberingScheme.Logical, Mcp23017Device);
controller.Write(pinNumber, PinValue.High);
var device2 = new Mcp23017(i2cDevice);
var pinValue = controller.Read(pinNumber);
Expected behavior
Pins need to keep their value after re-initializing the Mcp23017() adapter.
Actual behavior
Pins are being reset every time a new instance of Mcp23017() is being declared. Looks like it is embedded in the init code here:
https://github.com/dotnet/iot/blob/main/src/devices/Mcp23xxx/Mcp23xxx.cs - starting at line 84.
- Linguagem predominante
- C#
- Estrelas
- 2.4k
- Forks
- 631
- Merge médio
- 3d 19h
- PRs com merge (30d)
- 5
Preparar o ambiente
- Sem Dockerfile nem arquivo Docker Compose
- Tem um modelo de pull request
- Sem guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de dotnet/iot
-
GpioController.QueryComponentInformation() throws NotSupportedException with RaspberryPi3DriverAbertauntriaged
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
-
api-suggestion untriaged
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 35/100
-
All registered callbacks are removed once UnregisterCallbackForPinValueChangedEvent is calledAbertauntriaged
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 30/100
-
untriaged
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 35/100
-
untriaged
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 76/100
Issues semelhantes
-
ASP.NET Core container quickstart: `docker-run: debug` task sample is missing its closing braceAberta
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 88/100
microsoft/vscode-docs#10499 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
Mantenedores costumam responder em até 1 dia
-
python triage
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
microsoft/semantic-kernel#14615 ·
Mantenedores costumam responder em até 3 dias
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
vzeol/DeployCraft#125 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
apache/arrow-adbc#4915 · 1 comentário ·
Mantenedores costumam responder em até 1 dia