Skip to content

Change SDSS for the Printrboard to the correct pin#10675

Closed
Simon-Swenson-8351 wants to merge 1 commit intoMarlinFirmware:1.1.xfrom
Simon-Swenson-8351:1.1.x
Closed

Change SDSS for the Printrboard to the correct pin#10675
Simon-Swenson-8351 wants to merge 1 commit intoMarlinFirmware:1.1.xfrom
Simon-Swenson-8351:1.1.x

Conversation

@Simon-Swenson-8351
Copy link
Contributor

This also eliminates the need to remap the y-endstop to the e-endstop pin if using the SD card. See the Printrboard schematic: The SDCS pin is clearly marked on the block diagram as pin B6, not B0/SS

Requirements

  • Filling out this template is required. Pull Requests without a clear description may be closed at the maintainers' discretion.

Description

The Printrboard uses the B0/SS pin (Arduino pin 20) as the y-endstop pin. In addition, according to the block diagram, the Printrboard actually has a SDCS pin on B6 (Arduino pin 26). When the original SDSS define in the header file was added, it was mistakenly added as the B0/SS pin number (Arduino pin 20), leading to a conflict between the y-endstop and the SDSS pin. This change fixes that conflict and assigns the SDSS define to the correct pin (26).

Benefits

Consistent y-endstop pin. No need to move the y-endstop connector to the e-endstop header if using an SD card. In addition, the SD card controller's SDCS pin will be pulled low when selected instead of being left floating. It seemed to work fine anyway, i.e., interpret a floating input as low, but that's generally a bad idea.

Related Issues

None.

…tes the need to remap the y-endstop to the e-endstop pin if using the SD card. See the Printrboard schematic: The SDCS pin is clearly marked on the block diagram as pin B6, not B0/SS
@thinkyhead
Copy link
Member

Thanks for your contribution! Unfortunately we can't accept PRs directed at release branches. We make patches to the bugfix branches and only later do we push them out as releases. Please redo this PR starting with the bugfix-1.1.x (and bugfix-2.0.x) branch and be careful to submit it to the same branch you started with.

#else
#define Y_STOP_PIN 20 // B0 SS - Ystop in Ystop socket
#endif
#define Y_STOP_PIN 20 // B0 SS
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this pin marked as "SS", as the comment says?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

B0 is the default SS pin for the Teensy++ 2.0:

image

I think that was the source of the original confusion. It's just that the Printrboard doesn't use the default SS pin for the SD card, it uses B6.

Copy link
Member

@thinkyhead thinkyhead May 10, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh yes, I have that diagram! Where the heck is PE2-PE3?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmm, that's a good question. I think that PE2 and PE3 are the AVR register names, with corresponding pins on the IC, but those pins were probably just not given headers on the Teensy board. The Printrboard uses the same IC, hence it uses the same Arduino pin numbers as the Teensy (so I thought the diagram was useful), but since it's a standalone board, it can make use of all the registers it needs.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, makes sense. Of course, Printrboard is not Teensy, just "Teensy-like."

@thinkyhead
Copy link
Member

I've put together the necessary PRs, adding your attribution. See them at #10676 and #10677.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants