Skip to content

[andino_firmware] Change 'd' command to read encoder digital input values - #337

Open
jballoffet wants to merge 1 commit into
mainfrom
jballoffet/chore/change-read-digital-in-command
Open

[andino_firmware] Change 'd' command to read encoder digital input values#337
jballoffet wants to merge 1 commit into
mainfrom
jballoffet/chore/change-read-digital-in-command

Conversation

@jballoffet

Copy link
Copy Markdown
Member

🎉 New feature

Summary

This PR repurposes the d shell command from reading an arbitrary GPIO pin via digitalRead() to reading the raw digital input value of an encoder channel (channel A or B, left or right encoder).

Test it

docker compose -f docker/compose.yaml run --rm dev pio test -e desktop
Container andino-firmware-dev-run-f12f4e9dd330 Creating 
Container andino-firmware-dev-run-f12f4e9dd330 Created 
Verbosity level can be increased via `-v, -vv, or -vvv` option
Collected 4 tests

Processing app/test_pid in desktop environment
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Building...
Testing...
PidTest.Initialize	[PASSED]
PidTest.ComputeOutputProportionalGain	[PASSED]
PidTest.ComputeOutputProportionalAndDerivativeGain	[PASSED]
PidTest.ComputeOutputProportionalAndIntegralGain	[PASSED]
PidTest.ComputeOutputProportionalDerivativeAndIntegralGain	[PASSED]
PidTest.Reset	[PASSED]
PidTest.SetTunings	[PASSED]
--------------------------------------------------------------- desktop:app/test_pid [PASSED] Took 0.64 seconds ---------------------------------------------------------------

Processing app/test_shell in desktop environment
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Building...
Testing...
ShellTest.ProcessInputEmpty	[PASSED]
ShellTest.ProcessInputMessageSingleCharacterCommandSingleArg	[PASSED]
ShellTest.ProcessInputMessageUnknownCommand	[PASSED]
ShellTest.ProcessInputMessageTwoCharacterCommandSingleArg	[PASSED]
ShellTest.ProcessInputMessageThreeCharacterCommandSingleArg	[PASSED]
ShellTest.ProcessInputMessageTwoArgs	[PASSED]
ShellTest.ProcessInputMessageThreeArgs	[PASSED]
ShellTest.ProcessInputMessageFourArgs	[PASSED]
-------------------------------------------------------------- desktop:app/test_shell [PASSED] Took 0.63 seconds --------------------------------------------------------------

Processing drivers/test_motor in desktop environment
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Building...
Testing...
MotorTest.Initialize	[PASSED]
MotorTest.Enable	[PASSED]
MotorTest.Disable	[PASSED]
MotorTest.SetPositiveSpeed	[PASSED]
MotorTest.SetNegativeSpeed	[PASSED]
MotorTest.SetZeroSpeed	[PASSED]
MotorTest.SetHigherThanMaximumPositiveSpeed	[PASSED]
MotorTest.SetLowerThanMinimumNegativeSpeed	[PASSED]
------------------------------------------------------------ desktop:drivers/test_motor [PASSED] Took 0.57 seconds ------------------------------------------------------------

Processing drivers/test_encoder in desktop environment
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Building...
Testing...
EncoderTest.Initialize	[PASSED]
EncoderTest.ReadIncreasingTicksCount	[PASSED]
EncoderTest.ReadDecreasingTicksCount	[PASSED]
EncoderTest.ReadChannelsDigitalValues	[PASSED]
EncoderTest.ResetTicksCount	[PASSED]
----------------------------------------------------------- desktop:drivers/test_encoder [PASSED] Took 0.62 seconds -----------------------------------------------------------

=================================================================================== SUMMARY ===================================================================================
Environment    Test                  Status    Duration
-------------  --------------------  --------  ------------
desktop        app/test_pid          PASSED    00:00:00.635
desktop        app/test_shell        PASSED    00:00:00.628
desktop        drivers/test_motor    PASSED    00:00:00.574
desktop        drivers/test_encoder  PASSED    00:00:00.624
================================================================= 28 test cases: 28 succeeded in 00:00:02.461 =================================================================

Checklist

  • Signed all commits for DCO
  • Added tests
  • Added example and/or tutorial
  • Updated documentation (as needed)

Note to maintainers: Remember to use Squash-Merge and edit the commit message to match the pull request summary while retaining Signed-off-by messages.

Signed-off-by: Javier Balloffet <javier.balloffet@gmail.com>
@github-project-automation github-project-automation Bot moved this to 🆕 Backlog in Andino Roadmap Aug 16, 2026
@jballoffet jballoffet changed the title Change 'd' command to read encoder digital input values [andino_firmware] Change 'd' command to read encoder digital input values Aug 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: 🆕 Backlog

Development

Successfully merging this pull request may close these issues.

1 participant