Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SK6812-MINI-E #45

Open
tiadobatima opened this issue Mar 3, 2021 · 37 comments
Open

SK6812-MINI-E #45

tiadobatima opened this issue Mar 3, 2021 · 37 comments
Labels
Backlog enhancement New feature or request good first issue Good for newcomers help wanted Extra attention is needed Sofle-RGB rgb version

Comments

@tiadobatima
Copy link
Contributor

Hello there... Not sure this is wanted, but I'm starting the work to update the SofleRGB to use SK6812-MINI-E which seems to be considerably easier to solder vs the regular SK6812-MINI.

I have updated the schematics to use the MINI-E. I'm not good with Kicad, so I'll need some more time to update the footprint, but I think this is ready for early review if you're interested.

I couldn't find an official datasheet only but this is what some vendors on Aliexpress are publishing:
https://ae01.alicdn.com/kf/H79d59ee537124777a478665921acaa59A.jpg

I have the work on this branch on my fork:
https://github.com/tiadobatima/SofleKeyboard/tree/sk6812-mini-e

And to make your review a bit easier, I created a PR against my fork's master:
https://github.com/tiadobatima/SofleKeyboard/pull/1

Thanks! :)

@DaneEvans
Copy link
Collaborator

DaneEvans commented Mar 3, 2021 via email

@tiadobatima
Copy link
Contributor Author

Yeah... The pinout for the mini-e seems to be different than the mini, and that's the reason I thought the schematics needed to be changed, though I kept pretty much everything as is, apart from the mini-e itself and some minor cosmetic changes.
Did I understand you correctly that I could have kept the schematics the same even if the pinout is different? Mind sharing the trick?

Thank you very much @DaneEvans ! :)
g.

@josefadamcik
Copy link
Owner

@tiadobatima
The symbol in schematic should stay the same because electrically it's the same component.

Each symbol in schematics has assigned so called "footprint" which defines how the given component will look in the PCB design.

Here's a bit more about how to change footprints: https://forum.kicad.info/t/how-can-i-assign-a-footprint-to-a-symbol/8901

@josefadamcik josefadamcik added enhancement New feature or request question Further information is requested Sofle-RGB rgb version labels Mar 3, 2021
@tiadobatima
Copy link
Contributor Author

tiadobatima commented Mar 4, 2021

Thank you for the reply guys! Yeah, I started playing around with the footprints yesterday, and in fact that was another reason I thought the changing the schematics would be the way to go, because unless I'm not looking into this the right way, if the component's pinout is different and we don't change the schematics they would be "documented" wrong in two places (in the symbol schematics and footprint)? What am I missing? I'm sure there's a logic behind it, but I didn't catch it yet :)
But yeah, I agree with "don't change if it works!" :)

Anyways, the footprint brings me to a more important question: The current RGB LED is defined in two different footprints:

  • K6812MINI_underglow_dev (the RGB by itself)
  • SK6812MINI_and_cherry (RGB + switch)

Between these two footprints, the RGB pads in the copper layer and the cutout squares for the Edge.Cuts/Fab layer have different sizes. Is there a reason they're different because my first impression is that the smaller cutout and bigger pads would work better for the switch as well (lower probability for the LED to fall thru; and bigger pads would give slightly better heat dissipation and area when soldering).
I imagine it's because the board can be used both sides, but I feel the smaller footprint would still work on switch and single footprint could be use for both?

Thank you again! This is a top notch open source project! 😃

@josefadamcik
Copy link
Owner

josefadamcik commented Mar 4, 2021

@tiadobatima Just regarding the first bit since I don't have the knowledge to answer the second question.

I thought the changing the schematics would be the way to go, because unless I'm not looking into this the right way, if the component's pinout is different and we don't change the schematics they would be "documented" wrong in two places (in the symbol schematics and footprint)? What am I missing? I'm sure there's a logic behind it, but I didn't catch it yet :)

I think the the detail you might be missing is to fully understand what is the purpose of schematic and what it actually means that the component has a different "pinout".

The two LEDs are internally equivalent therefore they require to be connected in the same way - GND, PWR, data in, data out. That's the only point you care about in schematics and this haven't changed.

What changes is how are those connections placed in the real world when it comes to the particular instance of hardware (its package). And to capture this we have footprints.

For example, you can have a simple resistor: that's always a simple component with 2 connections where orientation doesn't matter. You'll have one symbol in schematics for it, but there is a whole range of packages which vary in size and the way how they are mounted to the PCB. So you have huge amount of footprints you can use when designing your PCB in order to support this variety. But the symbol in schematics is always the same.

@DaneEvans
Copy link
Collaborator

DaneEvans commented Mar 4, 2021 via email

@DaneEvans
Copy link
Collaborator

@tiadobatima
Definitely don't do any more just yet.
At most it's going to be a footprint replacement, at minimum it'll be a drop in replacement -

I compared the two footprints, and they should be compatible (mini-e in green)
image

It won't be ideal, the pin may overhang the pad a little, but it should work as a drop in. I'll order some LEDs and try it out on one of my spare boards. (in whatever the ali-express lead time is)

I'll probably redesign the footprint to take both varieties (not that it really works on the mini anyway), the identical pinout means that there should be no routing required, just a footprint swap

@tiadobatima
Copy link
Contributor Author

tiadobatima commented Mar 8, 2021

That's very cool @DaneEvans!!
But now I'm definitely lost. LOL 😂
When looked at the pinout, I could see the pads overlapped a bit (I didn't know it was that well which is cool), but aren't the pins for the mini-e actually different than the mini? From the datasheets I found on the internet:

Mini

Mini

  1. DOUT
  2. VSS
  3. DIN
  4. VDD

Mini-e

Mini-e

  1. VDD
  2. DOUT
  3. GND
  4. DIN

Since the pins don't match and aren't even symmetric between the mini and mini-e, I'm not really seeing how they could work with the board as is unless these RGBs can work with polarity reversed? What am I missing? 🤔

Anyways, I ordered some mini-e from Aliexpress a few weeks ago and Plcpcb should be shipping my Sofle board today or tomorrow. Might get it here early next week, and can run a test with the mini-e. Will let you know :)

@DaneEvans
Copy link
Collaborator

DaneEvans commented Mar 8, 2021

Ahh, you're trusting cheap chinese knockoff data sheets - I agree with you on the surface. But there are at least 3 different SK6812 pinouts/pin 1 locations, so my faith in those datasheets is entirely depleted.

I went the other way, and just compared the footprint to the latest crkbd one, because having worked with these LEDs, it's a lot more trustworthy to use a reference design that you know works, rather than trust the supplier.

Do you know which version of the crkbd has the mini-e's, because it's possible that I didn't pull the right one, and I can't find an easy change log.

The crkbd classic, the do-everything symetrical board is apparently no longer the head revision over there, and isn't mini-e compatible, The Cherry version is, and does have a different pinout, (which I think should also be compatible with the rolled pad version of the sk6812, which I have a reel of because of bad suppliers).

Sorry for the bad info earlier, I hadn't realised that the crkbd directory layout had changed so much since I built my travel board.

I'll do the new footprint tonight (Aussie time) , and talk you through swapping the footprints over, but you'll need to handle the last 5mm or so of routing to each LED.

@DaneEvans
Copy link
Collaborator

Hey @tiadobatima, I've made you a board to start on on my repo (https://github.com/DaneEvans/SofleKeyboard/tree/mini-e)

I've made the footprint, placed it on the board, locked the switches and stripped back the nearby tracks, so it should be fairly simple for you to route.

Please check the footprint (SK6812MINI-E_and_cherry(mini-pinout) ) - note that the numbers are different - this is because kicad apparently doesn't support pin tables, so the only way to remap it is to change the numbers on the schematic. Because I want to keep the schematics the same, I've chosen to mess up the footprint numbering reletive to the mini-e datasheet. The net names match however.

After that you are free to route the new mini-e version of the pcb,
Create a mege request whenever you like and I'll do a quick review, clean up any documentation, and make it compatible with what Josef has done before sending it over here.

@tiadobatima
Copy link
Contributor Author

Very cool @DaneEvans ! Thank you very much!
I'm gonna take the rerouting process a bit slowly because I already placed an order for the current RGB version, so I'll likely focus on getting that built first because my shoulder is really killing me lately :D
I'll try to put a few minutes of work on those tracks on a regular basis, and loop you in before I go too far in case I'm doing something bad.

I'll likely be building at least a couple more later, and when I do I plan to use the mini-e.

Thank you for all the help!
g.

@tiadobatima
Copy link
Contributor Author

Howdy @DaneEvans... Not sure if you have permissions, but would it be possible to push this branch to the josefadamcik org?
Apparently Github doesn't let us have two forks of repos in the same "network" (same name) under the same org/account. Normally I'd just kill my fork from josefadamcik and fork yours, but I have a PR currently open against josefadamcik.

@josefadamcik
Copy link
Owner

josefadamcik commented Mar 16, 2021

@tiadobatima he doesn't have permission to merge. This is only an issue, no branches are linked to it. Do you mean the PR #33 sorry #46

@josefadamcik
Copy link
Owner

josefadamcik commented Mar 16, 2021

@tiadobatima Oh, I actually misunderstood what you mean, like completely :D My bad, just ignore me. Anyway, I merged your PR so just in the case it helps.

@tiadobatima
Copy link
Contributor Author

Thanks for merging that PR @josefadamcik !
Now I can fork @DaneEvans' repo safely :)

Thanks!

@joecabezas
Copy link

o what's the next step?, currently, Sofle RGB pinout is not compatible yet with SK6812-MINI-E?, the way I see it, it is not, but the cutout is compatible since the mini-e is smaller

@DaneEvans
Copy link
Collaborator

@joecabezas Someone takes the time to route the branch on my fork, at the moment it sounds like noone is in a rush to do it

  • Pull my fork
  • Route the last 5-10mm of all leds
  • commit
  • I'll review it
  • Generate Gerbers and documentation
  • Merge it onto this fork as the head

@DaneEvans DaneEvans added help wanted Extra attention is needed Backlog good first issue Good for newcomers and removed question Further information is requested labels Apr 7, 2021
@joecabezas
Copy link

thank you, I am working on my own version, kailh choc compatible

@DLopezGo90
Copy link

@DaneEvans bro is SofleKeyboard_mini-E.kicad_pcb ready to be used?

@DaneEvans
Copy link
Collaborator

No

@tiadobatima
Copy link
Contributor Author

tiadobatima commented May 24, 2021

@DLopezGo90 It's hard to find time, but now that I got my Sofle RGB working, I'll try to set some time aside to get the Mini-e version going. I'll update this thread when I get something worth sharing.

@DLopezGo90
Copy link

@tiadobatima Thanks bro, I'll be expectant

@brianlow
Copy link
Contributor

If it helps, I have another Sofle variant (Choc switches) that uses SK6812-MINI-E here:

#40

They are pretty easy to solder though I haven't tried the non-MINI-E.

@tiadobatima
Copy link
Contributor Author

Howdy folks... Sorry for taking this long, but I thought it would be better to also change the underglow and indicator lights to mini-e as well from @DaneEvans amazing initial work on this, so people have to deal with only one type of RGB. I also found that soldering the regular underglow/indicator minis on the SMD was a LOT more challenging than the drop-in per-key RGBs.

Here's the PR #90 . This should be considered a rough draft, since I'm new to Kicad, I haven't printed the PCB yet, and it's been over 20 years since I last worked on a PCB design. I definitely need adult supervision here.
I'm happy to make any change you guys recommend.

@utlandr
Copy link

utlandr commented Aug 19, 2021

Just read @josefadamcik's cool post and wanted to mention that I am in the process of building the mini-e variant of the RGB Sofle. Its early days, but the PCB has been manufactured, just waiting on other bits and pieces before putting it all together.

Will keep y'all updated.

@page200
Copy link

page200 commented Aug 21, 2021

@utlandr Thanks, looking forward! Are you using https://github.com/tiadobatima/SofleKeyboard/tree/mini-e ?

@utlandr
Copy link

utlandr commented Aug 22, 2021

@utlandr Thanks, looking forward! Are you using https://github.com/tiadobatima/SofleKeyboard/tree/mini-e ?

@page200 Yes. I am using the one in PR #90

@trougnouf
Copy link
Contributor

trougnouf commented Nov 22, 2021

Can I use SK6812 Mini-E with the Sofle RGB as it is published in the Github repo? Or a mixture of both Mini-E and Mini for different parts of the keyboard? I've already ordered the PCB and I am now getting the components.

Sorry if this has already been talked about and I didn't catch the information.

edit: I was able to cancel my order and I will get https://github.com/tiadobatima/SofleKeyboard/tree/mini-e

@DaneEvans
Copy link
Collaborator

DaneEvans commented Nov 22, 2021 via email

@pfn
Copy link

pfn commented Nov 28, 2021

@utlandr Thanks, looking forward! Are you using https://github.com/tiadobatima/SofleKeyboard/tree/mini-e ?

@page200 Yes. I am using the one in PR #90

Any updates on your trials @utlandr ?

@utlandr
Copy link

utlandr commented Nov 30, 2021

Hi @pfn! As of about two weeks ago I have finally received all the pieces to the puzzle. I unfortunately haven't found the time to put it together since then.

That said, I hope to at least get the LEDs going this weekend. I am a complete novice when it comes to soldering and electronics so expect to see a picture of magic smoke before pretty lights 👍

@pfn
Copy link

pfn commented Nov 30, 2021

Hi @pfn! As of about two weeks ago I have finally received all the pieces to the puzzle. I unfortunately haven't found the time to put it together since then.

That said, I hope to at least get the LEDs going this weekend. I am a complete novice when it comes to soldering and electronics so expect to see a picture of magic smoke before pretty lights 👍

That's awesome that you got all your parts together @utlandr best of luck in your build! I am settling for a standard sk6812-mini build for now, and maybe will consider mini-e in the future.

@dmikhalsky
Copy link

Any news on this?

@KlausHans
Copy link

Still no news? I am interested in this build.

@taydevr
Copy link

taydevr commented Feb 3, 2023

Hi @utlandr,

Can you share the results of the tests please?

I am interested in using this version =)

@utlandr
Copy link

utlandr commented Feb 6, 2023

@taydevr check out the PR (#90) for the latest successful builds.

@taydevr
Copy link

taydevr commented Feb 6, 2023

@utlandr Thanks!!!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Backlog enhancement New feature or request good first issue Good for newcomers help wanted Extra attention is needed Sofle-RGB rgb version
Projects
None yet
Development

No branches or pull requests