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: 3,790
Last edited by mattytrog,

mattytrog

You don`t want to listen to anything I say.
OP
Member
Joined
Apr 27, 2018
Messages
3,708
Trophies
0
Age
48
XP
4,328
Country
United Kingdom
That is why I will never touch my eMMC NAND (autoRCM) or do anything with it like booting into a CFW which always may leave some traces in the telemetry logs.

Atm I am only interested in hekate and lakka and some day it will be also atmosphere but only with emuNAND and offline keeping my sysNAND clean and up to date.

Fair enough. As you wish :)
 

tecfreak

Well-Known Member
Member
Joined
Apr 24, 2018
Messages
186
Trophies
0
Location
Berlin
XP
439
Country
Germany
That shuts down the pmic for something like a shipping mode or something. But method 3 and indeed all prior methods connect before that.
Are you sure about that? The PMIC is the MAX77620 and you are right saying that we connect the trinket before that. But it is the BQ24193 battery charger ic where we are disconnecting the battery and I am pretty sure that in method 3 the trinket connects just after this ic.
 

Joxley192

Well-Known Member
Newcomer
Joined
Feb 22, 2018
Messages
76
Trophies
0
Age
39
XP
340
Country
United Kingdom
In method 1 could u use pin 4 for rcmstrap and use v3 to power the switch so like a mix between method 1 and 3
 

mattytrog

You don`t want to listen to anything I say.
OP
Member
Joined
Apr 27, 2018
Messages
3,708
Trophies
0
Age
48
XP
4,328
Country
United Kingdom
Are you sure about that? The PMIC is the MAX77620 and you are right saying that we connect the trinket before that. But it is the BQ24193 battery charger ic where we are disconnecting the battery and I am pretty sure that in method 3 the trinket connects just after this ic.

Ah yes. I see what you mean. My mistake! You are correct.

If you can shut the 24193 (not 77620 - cheers tecfreak!) off via code then that would indeed be a good solution.
 
Last edited by mattytrog,

mattytrog

You don`t want to listen to anything I say.
OP
Member
Joined
Apr 27, 2018
Messages
3,708
Trophies
0
Age
48
XP
4,328
Country
United Kingdom
In method 1 could u use pin 4 for rcmstrap and use v3 to power the switch so like a mix between method 1 and 3
But pin 4 is for an input. The code is using PinMode (4, INPUT_PULLUP) and attachInterrupt (Pin number, action, LOW). How would that work?

You can change to INPUT and attachInterrupt to RISING which will make it like method 3.
 
Last edited by mattytrog,

noX1609

B9S freak ;)
Member
Joined
Aug 30, 2016
Messages
477
Trophies
0
Age
33
XP
501
Country
Germany
Changed my soldering to method two but without the Pin 0 to Vol+ because i want to have the choice to boot Stock or CFW. After that flashed the modified Firmware for the Trinket. Works great so far :) Hope this really stops the draining of the battery by the Trinket or is there something else needed?
 

mattytrog

You don`t want to listen to anything I say.
OP
Member
Joined
Apr 27, 2018
Messages
3,708
Trophies
0
Age
48
XP
4,328
Country
United Kingdom
Changed my soldering to method two but without the Pin 0 to Vol+ because i want to have the choice to boot Stock or CFW. After that flashed the modified Firmware for the Trinket. Works great so far :) Hope this really stops the draining of the battery by the Trinket or is there something else needed?
If you have soldered 3v on trinket to cap as pictured, then nothing else needed.
 

noX1609

B9S freak ;)
Member
Joined
Aug 30, 2016
Messages
477
Trophies
0
Age
33
XP
501
Country
Germany
If you have soldered 3v on trinket to cap as pictured, then nothing else needed.
You mean the solder point from Method 1, right?
Then all is ok, soldered the 4 Poknts from method 1, RCM_Strap and Point 4 to the Pin of the power Button :)

But at the explanation you wrote you will upload a picture for that. I think it would help other Users. If you don‘t have one i can later take a picture of the Point i soldered to (have found it with a multimeter)
 

crow132

Well-Known Member
Member
Joined
Jan 19, 2016
Messages
302
Trophies
0
Age
34
XP
1,373
Country
Saint Helena
so, how could we boot a Linux distro (lakka for example) from the trinket?

If im not mistaken, booting Linux is more complex than just load a payload
 

mattytrog

You don`t want to listen to anything I say.
OP
Member
Joined
Apr 27, 2018
Messages
3,708
Trophies
0
Age
48
XP
4,328
Country
United Kingdom
You mean the solder point from Method 1, right?
Then all is ok, soldered the 4 Poknts from method 1, RCM_Strap and Point 4 to the Pin of the power Button :)

But at the explanation you wrote you will upload a picture for that. I think it would help other Users. If you don‘t have one i can later take a picture of the Point i soldered to (have found it with a multimeter)

Which point is missing from method 1? They are all there. Puzzled.

--------------------- MERGED ---------------------------

so, how could we boot a Linux distro (lakka for example) from the trinket?

If im not mistaken, booting Linux is more complex than just load a payload

Yep. Boot into SX loader holding down vol +, select external payloadp choose Hekate payload which you should have the Hekate.bin file on your SD card. Once booted into Hekate, select reboot (RCM) and follow the lakka guide from there. If you are using autoRCM, just make sure switch is powered off and without pressing any buttons, connect to pc via USB cable. Will be in RCM (APX device in device manager)
 
Last edited by mattytrog,

tecfreak

Well-Known Member
Member
Joined
Apr 24, 2018
Messages
186
Trophies
0
Location
Berlin
XP
439
Country
Germany
@mattytrog
I think what @crow132 ment is an unthethered booting of lakka loading coreboot/u-boot from the sd card. As far as I know, you could achive this using the memloader payload, but according to the lakka dev it is not possible atm but could be done. I am still hoping, that someday hekate will be able to load coreboot/u-boot from sd.
 

mattytrog

You don`t want to listen to anything I say.
OP
Member
Joined
Apr 27, 2018
Messages
3,708
Trophies
0
Age
48
XP
4,328
Country
United Kingdom
@mattytrog
I think what @crow132 ment is an unthethered booting of lakka loading coreboot/u-boot from the sd card. As far as I know, you could achive this using the memloader payload, but according to the lakka dev it is not possible atm but could be done. I am still hoping, that someday hekate will be able to load coreboot/u-boot from sd.

Oh. I see what you mean. I`d honestly lose my head if it wasn`t soldered on. AFAIK loading u-boot isn`t possible, but with a new ini file in memloader like you say, maybe?

What I would really like is a TWRP payload. Wishful thinking I know!
 

mattytrog

You don`t want to listen to anything I say.
OP
Member
Joined
Apr 27, 2018
Messages
3,708
Trophies
0
Age
48
XP
4,328
Country
United Kingdom
Not on Method 1, it‘s Pin 3 / RCM_Strap on Method 2.

There you wrote:
Pin 3 - RCM strap (pin 10 of joycon or point on board...pics coming)

Oh. I have updated OP. Numbered the pictures. Look at picture 2. Bottom left point in orange lettering ;)
 

noX1609

B9S freak ;)
Member
Joined
Aug 30, 2016
Messages
477
Trophies
0
Age
33
XP
501
Country
Germany
Oh. I have updated OP. Numbered the pictures. Look at picture 2. Bottom left point in orange lettering ;)
Ah i had over seen it, was only reading the Post on mobile phone so picture wasn‘t really big ;) After i zoomed in i saw it.

For method 2, GND - Ground point on motherboard - picture 1. Does it make any difference if I used the GND point on picture 2?
Doesn‘t matter you can use any ground point because normally they are all connected to each other on the motherboard.
 
Last edited by noX1609,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    AncientBoi @ AncientBoi: Pffffft sending me a PM stating we're all a bunch a mean azzholes :creep:. Same here DUDE