scottbez1 / splitflap

DIY split-flap display
https://scottbez1.github.io/splitflap
Other
3.18k stars 263 forks source link

Motor flip #95

Closed dmadison closed 3 years ago

dmadison commented 4 years ago

This PR flips the motor upside-down while maintaining the same shaft axis. This has two benefits: it directs the motor wires downwards for easier cable management, and it slightly reduces the assembly's center of gravity.

To accommodate the motor's new position I also moved the sensor PCB and spool magnet to align with the top of the spool, with the PCB's connector facing upwards.

Comparison (before / after):

sf-motor-flip-comp


I'm not entirely sold on this change, mostly because of how it affects the sensor PCB. Although it's nice to have the motor wires exit downwards, it moves the sensor PCB and its connector higher than the motor wires were originally, which somewhat defeats the point...

For a stopgap the right-angle pins could be replaced by the column from a multi-row right angle pin header (e.g.), although chopping up a part rather than using something off the shelf is less than ideal. Another option would be to solder the wires directly to the board instead of using a connector, which aids in the wire management but makes the build less modular.

Otherwise the PCB would need to modified to reorient the connector, probably by making the whole thing longer and narrower and having the connector exit out the back.

scottbez1 commented 4 years ago

Hmmm, yeah, agreed that flipping the sensor PCB isn't ideal. I think something "creative" could be done to keep the existing PCB but rotate it so the wires come out the back with the slots adjusted accordingly: pcb_rotated

but that's pretty gross and not something I'd want to keep long-term, and it might not even fit with the motor there...

Modifying the PCB is certainly an option, though I worry about confusion when people order parts if there are multiple similar variants. Might be possible to just keep the existing PCB layout and add additional connector holes in a different location so it's backward compatible? That would certainly be my preference, though any PCB modification really ought to start with migrating all of the kicad projects from version 4 to 5 (which isn't hard by itself, but some of the CI tooling also needs to be adapted/replaced. I've already started some of that tooling work in other branches where I'm working on the newer ESP32 controller PCB, including adding a new 3d PCB rendering export script, but the biggest problem I hit was the 3rd-party panelize.py script has not been updated for the kicad 5 file format, so that probably needs to be completely replaced by KiKit)

dmadison commented 4 years ago

Might be possible to just keep the existing PCB layout and add additional connector holes in a different location so it's backward compatible?

Possibly, although it's going to be a tight fit. Quick test in KiCAD:

sf-sensor-pcb-pivot-test

The courtyards just clear each-other, so it's technically do-able but they're pretty packed in there. You could use an SMD connector on the opposite side of the board but then you lose the anti-rotation from the pins out of the back.

For a modified PCB I was thinking you could either put the header inline with the bolt and then 'step' the cutout in the enclosure, or angle the PCB header so the pins are the same width as the bolt. You could extend that PCB higher to keep the original header, though the silkscreen and connections will have to be mirrored depending on which 'version' of the enclosure is being used. It also makes the PCB more expensive.

dmadison commented 3 years ago

Closing this for now. I don't think this is a viable change with the current sensor PCB design, and I don't think it's worth investing time to redesign the sensor PCB without upgrading the repo to use KiCAD 5 (#58) (or even 6, which is due out early next year).