Tutorial  Updated

Internal modchip - SAMD21 (Trinket M0, Gemma M0, ItsyBitsy M0 Express) Guide, Files & Support

Notice: I am not receiving notifications for this thread. I didn`t realise people were still posting in it.

Please please accept my apologies if I haven`t replied to tags etc... I have no idea what is happening. I`m subscribed to this thread but I am not receiving notifications. Please inbox me if possible. Or tag me in another thread.

Its amazing that people are still checking all of this out. I thank you for all of the help and support I have received in this thread over this year.

Cheers. Matty.


A video showing a modchip in action. Thank you once again to @metaljay for providing this. This is what you can achieve by fitting a chip!



Section 1. Gather your software.

Get your chip software from THIS THREAD.
Follow the flashing instructions there...




Section 2. Removing USB port and unneeded LEDs. (Adafruit chips only)
  • Next, we need to remove the USB port from the modchip. I recommend a heatgun or a rework station. Heat up until the USB port just lifts off the modchip.
  • Do the same for the LED just to the right of the USB port.
See picture:
20181031_110415.jpg


You are now ready to fit your device. Proceed to Fitting section.





Section 3. Fitting modchip to your Switch.
New Universal Method. All SAMD-based internal chips. If your chip is not supported and you cannot work it out, PM me.

Trinket M0.
Solder as laid out in the following picture

trinketfinal.jpg

==================================================
Rebug SwitchME M0. Use Trinket files.
Solder as laid out in the following picture

rebugfinal.jpg

==================================================
RCMX86 - Internal modchip version.
Solder as laid out in the following picture

RCMX86-Internal-Final.jpg


==================================================
Gemma M0. Use Gemma files.
Solder as laid out in the following picture


gemma final.jpg

==================================================
ItsyBitsy M0 Express. Use ItsyBitsy files.
Solder as laid out in the following picture

itsybitsyfinal.jpg




==================================================
Feather M0 Express. Use Feather files.
Solder as laid out in the following picture

feather_final.jpg




BUILD YOUR OWN FROM A QFP ATSAMD21E18. Trinket equivalent pins.
Flash Trinket bootloader using OpenOCD via serial pins SWDIO / SWDCLK. Fit a reset switch somewhere... Or going to power / wake (aka method 2). If building for external use, it is good practice to fit a third capacitor between 3V & GND. This is deliberately vague and ambigious, as this needs research and you need to know what you are doing.

Link for setting the Pi up with OpenOCD: HERE
Raspberry Pi OpenOCD image in downloads section or HERE
SAMD pi connection.png



Alternative Solder Points

Credit to @consolex for original pic. I`ve added alternative points to solder to:
Alternatepoints.jpg


Credit to @pyorin for this much tidier version showing the same info as the above one!
Alternatepoints2.jpg

s-l1600.jpg

alternative3v.jpg




Replacement Parts List

Ok... So you have damaged your switch soldering your chip in. Not to worry.

First things first, DO NOT BRIDGE THE CONTACTS HOPING TO REVIVE YOUR SWITCH. With resistors, you may possibly get away with this, but with the capacitors listed below, if you jump these points, you will make a nice short-circuit to the PMIC and / or the M92T36, killing them instantly. Don`t do it.

OK... I`ll list these parts with METHOD 2 & 3 TRINKET PIN NUMBERS and the values of the components they solder to.

TRINKET 3V (POWER SUPPLY) - 2.2uF 0402 size MLCC capacitor. Voltage unimportant as long as it is over 6.3v
TRINKET PIN 2 (POWER ON RESET - goes to pin 5 on M92T36)- 4.7uF 0402 size MLCC capacitor. Voltage unimportant as long as it is over 6.3v
TRINKET PIN 0 (VOL+) - 150R (150 ohms) 0201 Thick Film resistor. 50mW
TRINKET RESET (SWITCH POWER BUTTON) - 150R (150 ohms) 0201 Thick Film resistor. 50mW


I recommend RS components.

FAQ

Q - How do I boot the switch into APX (RCM) mode?

A - You need to short out pin 10 on the right joycon rail to GND with a jig or modded joycon or paperclip (not recommended... Buy a jig you cheap-ass gyppo). Once shorted out, hold down vol+ and power. The switch screen should be off... Plug into your PC and it should recognise a APX device. Well done. You are in RCM.

Q - What glue should I use?
A - Only glue if necessary! Ideally if your soldering is of sufficient quality and your wire is thin enough, you don`t need glue. I use a bit because I am OCD. Anyway, use Epoxy. It`s what I use. Gives you some working time, is solid. Superglue makes a mess DO NOT USE SUPERGLUE. The only thing super about it is how it melts things. Epoxy won`t stick to the shield long-term, so bear that in mind. Pure Acetone will remove epoxy. Acetone tends to remove / melt anything to be warned. CHECK YOUR GLUE WON`T GO CONDUCTIVE OVER TIME - LOOKING AT YOU SCAMSUNG! The combination of heat cycles and absorbing of moisture can turn adhesive into a high-impedance connection!

Q - What size wire should I use?
A - I use AWG40 magnet wire or AWG30 Kynar. AWG40 goes onto components easier... And if you snap it, chances are the wire will snap and not the trace / component.
A2 - You can also use AWG30. I recommend Kynar wrapping wire but any will do. Looks nice, good resistance to elements, tidy. Nothing thicker than AWG30. You are just causing yourself more headaches. Trust me.

Q - Is AWG40 thick enough?
A - Yes. AWG40 is good for around 90mA.

Q - which methods do you recommend?
A - Connect all the straps...

Q - how do you recommend to set it up?
A - Fusee Suite. Search for Fusee Suite or go to link at top of this OP.

Q - My switch is flat and won't turn on.
A - Have you got the charger connected? Disconnect it or your switch won't boot! Boot to a payload (SX loader/Hekate), reconnect charger and leave on the payload menu and charge. Leave for 15 minutes and switch will start normally. It will continue charging one booted.

Disclaimer:
You have only yourself to blame. This voids warranty. This may or may not get you banned from online services. If it does, you got yourself banned. I`m not responsible if you kill your switch / your first-born with any of this in this post. I`m not infalliable. I`m partly senile. Do your own research. Kids, get bill payers permission before you attempt even using a screwdriver.
NUTSHELL: Don`t come having a go at me because you fooked your £300 console up. I`ll do my best to help you though if you do, Just don`t blame me.

Credits to Quantum-Cross, Atlas44, @Ninoh-FOX , @jcrorxp , @tecfreak, @mooglazer, @subcon959, @64Dp128k, @mikeleuskaldunak, @M-O-B, CTCaer, @evilsperm, @consolex and everyone else for valuable input.


IF YOU REQUIRE SUPPORT, IF YOUR CONSOLE ISN`T WORKING CORRECTLY... PLEASE POST A HIGH RESOLUTION PICTURE OF YOUR INSTALL. You might think it isn`t your soldering, but in all cases with the new methods, it is bad soldering. So, please post a picture.


A BRIEF WARNING - PLEASE READ
THIS MOD IS NOT FOR THE FEINT OF HEART. WE ARE SOLDERING TO TRACES AND COMPONENTS ON THE FRONT SIDE OF THE BOARD TO SAVE HAVING TO REMOVE THE BOARD AND SOLDER TO TESTPOINTS. IF YOU ARE STRUGGLING, OR THINK YOU ARE GOING TO STRUGGLE, PLEASE PLEASE SOLDER TO THE TEST POINTS NOTED IN THIS AND OTHER THREADS (YOU WILL NEED TO REMOVE THE MOTHERBOARD). DOUBLE - TRIPLE CHECK EVERYTHING. YOU HAVE BEEN WARNED!!!
Good soldering skills are needed!
A magnifying glass is needed!
Good soldering iron needed - ideally with a 0.3 conical tip. No more than 30w!
SECURE YOUR WIRES PRIOR TO SOLDERING. Stick them down with double-sided tape.
Only use glue if you need to and glue wires after soldering. Don`t glue the solder to the component!
Put the tiniest amount of glue on the PCB mask only. Never on components. Use a cocktail stick for more glue control!!!
Take a look at alternative solder points to get you out of the sh*t if you do rip something off the board
If you aren`t the best at soldering, then think very carefully about connecting to pin 6 capacitor (the one in these new methods). If you rip this pad, you WILL NEED TO REMOVE YOUR BOARD and run from a testpoint.
 

Attachments

  • Trinket equivalent.png
    Trinket equivalent.png
    118 KB · Views: 4,019
Last edited by mattytrog,
Agent Mattytrog

Your next mission whether you choose to accept it or not is

to get a external payload dongle like gemma or trinket to send payload through switch dock

This message will self destruct in 5 seconds :!:

Good luck Agent Mattytrog:gun:
Already accomplished...

Piggybacked off the USB-C.

Crap to update payload though! Hence unpublished and pointless for now ;)
 
  • Like
Reactions: Canna
hey mate, couldn't help myself, redid the 3v to the new one, was a bit of a pain as glue holding wire- but I can confirm its working in dock now, I never want to open up again that damn capacitor is so small and I didn't have a magnifying glass. Will report back with full test and pics.

Cheers!
 

Attachments

  • IMG_20180803_210134.jpg
    IMG_20180803_210134.jpg
    1.3 MB · Views: 179
  • IMG_20180803_204740.jpg
    IMG_20180803_204740.jpg
    1.3 MB · Views: 175
  • Like
Reactions: mattytrog
Already accomplished...

Piggybacked off the USB-C.

Crap to update payload though! Hence unpublished and pointless for now ;)


So can use gemma or trinket Externally ?

external dongle plug into dock ?

Also weres ya gemma files ? and im gussing you wont do your gemma guide now ?
 
So can use gemma or trinket Externally ?

external dongle plug into dock ?

Also weres ya gemma files ? and im gussing you wont do your gemma guide now ?

Yes course I am!

I use Gemmas myself. Not had time to wipe my arse with sorting this out!

Methods for Gemma coming... Next hour or two... Definitely this evening though (its 19:44 BST now)
 
  • Like
Reactions: Canna
Yes course I am!

I use Gemmas myself. Not had time to wipe my arse with sorting this out!

Methods for Gemma coming... Next hour or two... Definitely this evening though (its 19:44 BST now)

wiping ass: Use the 3 sea shells :P

Thats sweet .. So can i plug my external gemma into dock and it will work ?
 
  • Like
Reactions: mattytrog
Not exactly... Like I say, it is unfinished... Requires more work. I fitted a trinket into a dock, and while it worked, it wasn`t ideal.

I need to get some USB PID/VIDs for the dock and integrate it into the code. Will revisit at some point but maybe not tonight.
 
  • Like
Reactions: Canna
Not exactly... Like I say, it is unfinished... Requires more work. I fitted a trinket into a dock, and while it worked, it wasn`t ideal.

I need to get some USB PID/VIDs for the dock and integrate it into the code. Will revisit at some point but maybe not tonight.

Ok thanks just when you replied to the agent matty message i thought u said yes...

Would you be so kind as to get it to work for external dongles plugged into dock ..

But yeah its friday have ya self some spirits and beat the wife or kids up or something :P
 
Gemma added to OP - Work in progress!!! Errors expected! Feedback please

This for internal fitting of Gemma ONLY at this time (or external dongle PLUGGED INTO SWITCH DIRECTLY).

WIP - Dock passthrough for Gemma so can use via dock USB ports...
 
Last edited by mattytrog,
  • Like
Reactions: Canna
So tempted to update now..

Its only a wire swap. But if everything is working OK, you don`t need to.

All new and old methods will get updated as and when new payloads come out.

But I think I`m going to limit myself to SXOS, Hekate and ReiNX...

Anything else, by request and uploaded to thread, but not OP :)

The pin 6 thing has been known about from day 1... But I was hesitant in putting it on, because of getting loads of kids saying "mattytrog, you broke my switch when you made me solder that cap".

If you rip the pad, its board out time...
 
Last edited by mattytrog,
  • Like
Reactions: 64Dp128k
But I think I`m going to limit myself to SXOS, Hekate and ReiNX...

Good idea. As long as you don't mind continuing to share your source, the community can handle providing anything custom (or testing).

Luckily the sigpatch thing for hekate was accepted into mainline, so once a new version is released, my sigpatch build won't be necessary.

Thanks again! [emoji1417]
 
Good idea. As long as you don't mind continuing to share your source, the community can handle providing anything custom (or testing).

Luckily the sigpatch thing for hekate was accepted into mainline, so once a new version is released, my sigpatch build won't be necessary.

Thanks again! [emoji1417]

You`re welcome.

Oh crap... I didn`t put that in OP and now I can`t bloody find it.

It isn`t really my source. Its Quantum_Cross`s. I`ve just moved the furniture around :)
 
Last edited by mattytrog,
nice update mate,
now the question whats the difference between 2/3
2 is 6 wires and 3 is 7 wires
and 3 flattens the battery as trinket is always on, so who will go with it.
whats the positve in doing it over 2

ignore 1 for now i knowits the easiest one of them all and needs autorcm to funtion.

just the 2/3 method is giving me headaches.

sorry to bother you again mate
 
nice update mate,
now the question whats the difference between 2/3
2 is 6 wires and 3 is 7 wires
and 3 flattens the battery as trinket is always on, so who will go with it.
whats the positve in doing it over 2

ignore 1 for now i knowits the easiest one of them all and needs autorcm to funtion.

just the 2/3 method is giving me headaches.

sorry to bother you again mate

No worries.

Ok the difference between 2 & 3...

Method 2 shuts down the trinket 100% when console is off. No sleep or any of that nonsense.
Method 3 is under constant power while off (though it is sleeping)

If you want to cold-boot a payload without autoRCM all the time, we need to simulate the joycon and vol+ being pressed. This is accomplished by those lines going to ground. This needs to be done at boot-time.

However, in method 2... Once you power on, the trinket takes about 1/4 second to boot and begin to push the payload. This is too slow.

In method 3, the trinket is already booted (though sleeping) because it has constant power. Therefore it only requires a soft-reset which we get from pin 2.

So, you are thinking "OK, so the trinket cold-boots in method 2, but its too slow to hold the button/joycon strap low in enough time to catch the bootloader before the standard nintendo bootloader loads... So why have it listed from cold-boot at all?"

Good question... Thanks to a quirk in the trinket bootloader, when you hard-reset the trinket, instead of leaving all GPIOs floating like it should, pin 3 is PULLED LOW. Straight away, done at the lowest level in the actual trinket UF2 bootloader firmware.

We take advantage of this by sending that pulled-low pin 3 (joycon strap) to ground when the trinket is hard reset which happens when you press the power/wake button on console.

This allows us to choose to dual-boot. So, the sequence goes...

  • Method 2 - console power / wake button is pressed...
  • This grounds pin 3(joycon strap) thanks to bootloader "bug"
  • We can choose to press vol+ at this time (for hax) or not (for standard boot)
We can do exactly the same for method 3... But in method 3 we have the option of using the vol+ strap (as in all methods, both straps are pulled low at soft-reset) because we don`t need to wait that split-second for the trinket to cold-boot as its already booted. So just a soft reset is instantaenous.

Bear in mind though, that the vol+ strap in method 3 once fitted, is fitted. So you cannot dual-boot. You are stuck with it. Unless you flash a special "pin 0(vol+ strap)" disabling fusee launcher. Easy to do. Just say the word.

I hope this makes sense.
 
Last edited by mattytrog,
  • Like
Reactions: Xandroz
i guess 2 is the best option for me i dont mind the 1/4 second delay in boot, who cares to be honest, jtag xbox used to take 20 seconds and sometimes a whole minute.

method 2 is by far the best for me im on the latest firmware and dont care about fuses or anything of that sort and i disgust auto rcm to be honest.
my main concern is the battery

ill keep you posted in 2 days when i install, hopefully i dont butcher anything :D
 
Last edited by Xandroz,
i guess 2 is the best option for me i dont mind the 1/4 second delay in boot, who cares to be honest, jtag xbox used to take 20 seconds and sometimes a whole minute.

method 2 is by far the best for me im on the latest firmware and dont care about fuses or anything of that sort and i disgust auto rcm to be honest.

ill keep you posted in 2 days when i install, hopefully i dont butcher anything :D

OK mate good luck.

I`ll say one thing though. People call autoRCM because it basically fooks up your boot0/boot1. But it is the only way to guarantee no burnt fuses.

And now all dock / USB accessory gremlins are sorted, it is almost transparent to the end-user.

If you are going to install method 2 in the hope that it will boot a payload everytime with zero interaction from you, that is impossible. You need method 3 or autoRCM method 1 for that.

If you want the choice, then method 2 is the way to go. You can always install autoRCM later and have it autobooting every time.

The trinket is just too slow to initialise to cold-boot, hold straps low and push payload before nintendo bootloader kicks in. Which is instant.
 
  • Like
Reactions: Deleted User
well what i actually want is normal boot opens ofw and vol up cfw.

i boot both to update my games.

for the zero interactions i still hold a 1.0 :D

im waiting on that baby
 
well what i actually want is normal boot opens ofw and vol up cfw.

i boot both to update my games.

for the zero interactions i still hold a 1.0 :D

im waiting on that baby

Method 2 then mate.

Keep us posted!

:)
 
Oh crap... I didn`t put that in OP and now I can`t bloody find it.

Here you go!

I ran a diff cus I was curious. You should fork the original repo and put your changes up on github. Might be good for people who want to submit changes. :)

Also, I went back in and thanks to whoever suggested scissors. I removed the power-drain resistor mentioned in OP while I was in there. Much much better.

IMG_7366.JPG

Compiled the latest mainline CTCaer/hekate to CURRENT.UF2 as well. There's no formal release of this yet but it works for me.
 

Attachments

Last edited by mooglazer,

Site & Scene News

Popular threads in this forum