Homebrew [Important poll] What hardware problem does your 3DS have?

  • Thread starter Sono
  • Start date
  • Views 8,601
  • Replies 77
  • Likes 5

What would you patch in your 3DS?

  • Disable broken sliders and control them via software

    Votes: 6 20.7%
  • Double-tap Power to toggle WiFi

    Votes: 10 34.5%
  • 3D slider as brightness slider

    Votes: 10 34.5%
  • Slider swap

    Votes: 3 10.3%
  • Other (mention me with your idea)

    Votes: 6 20.7%

  • Total voters
    29
  • Poll closed .

Sono

cripple piss
OP
Developer
Joined
Oct 16, 2015
Messages
2,820
Trophies
2
Location
home
XP
9,310
Country
Hungary
I have finally got the equipment to work around broken hardware by patching software. Well... you can already do that, but nobody has done it yet (or at least, not publically) for things like the volume and the 3D slider. There are some nice possibilities now that <overdramatization>I've got the power</overdramatization> to patch MCU_FIRM.

Let me name a few possible patches:
- disable volume or 3D slider and only allow it to be controlled from software
- re-add the WiFi button (or a broken HOME button) via a keycombo (double-tapping Power is the most reliable keycombo possible out of the limited keycombos)
- repurpose 3D slider as a brightness slider
- swap 3D slider and volume slider with eachother (useful for new3DSXL models where the sliders are mirrored on the sides of the screen)
- automatically disable WiFi and put the 3DS into sleep mode when you plug in the charger (quick docking?)

There are other possibilities I haven't thought of because the MCU controls so many things that there are some very interesting things you can do with it.


So yeah, please vote in the poll and once it closes I'll start working the patches. One patch should take around a few weeks to a few months to make due to my fear of my custom assembler breaking and thus bricking my 3DS completely.
Don't worry though, the final patches should be tested by the time they are released for download, and the included patcher has extensive amounts of sanity checks to make sure that it's impossible to brick while flashing.
 
Last edited by Sono,

Jayro

MediCat USB Dev
Developer
Joined
Jul 23, 2012
Messages
12,964
Trophies
4
Location
WA State
Website
ko-fi.com
XP
16,973
Country
United States
My Home button and Amiibo functionality are both broken because I thought the ZIF connectors were latched, when they aren't... so they don't connect inside and I'm now without a working Home button or amiibo support. And I can't get that stupid amiibo puck thing to work either.
 

Sono

cripple piss
OP
Developer
Joined
Oct 16, 2015
Messages
2,820
Trophies
2
Location
home
XP
9,310
Country
Hungary
My Home button and Amiibo functionality are both broken because I thought the ZIF connectors were latched, when they aren't... so they don't connect inside and I'm now without a working Home button or amiibo support. And I can't get that stupid amiibo puck thing to work either.

I'm not sure about Amiibo, but I'll add the Home button into the list. Instead of having double-Power as WiFi, you could have double-Power as HOME button.

Using the 3D slider as a brightness slider would be fantastic. Having some button combo to swap between the functionality would be nice too (not really sure the best way to implement that though).

Well... even though I have ~1.7k bytes free space on the code flash, I might not have enough RAM to store the config anywhere. I haven't yet fully explored the RAM area (because there is some extra hardware mounted inside an already very poorly documented memory space), but I have documented enough of it to be able to make the above mentioned patches. I don't think I'll ever implement the ability to switch between configs since I have to patch inside the original MCU_FIRM, and since I can't move instructions I have no space to put the config checker instructions in.
 

AxlSt00pid

Well-Known Member
Member
Joined
May 31, 2016
Messages
1,925
Trophies
1
Age
24
XP
3,511
Country
Spain
My cameras stopped working at all all of the sudden many months ago, and my mic doesn't work either (might be because it's jammed with lotsa dust, because it was lost under my brother's bed for 3 months)
 

sansnumen

Well-Known Member
Member
Joined
Aug 4, 2017
Messages
323
Trophies
0
XP
1,362
Country
United States
Hey @Sono. The L and R buttons on my New 3DS XL have become less responsive over time. Would it be possible to swap L and R with ZL and ZR? Who really uses ZL and ZR anyway?
 

Sono

cripple piss
OP
Developer
Joined
Oct 16, 2015
Messages
2,820
Trophies
2
Location
home
XP
9,310
Country
Hungary
My cameras stopped working at all all of the sudden many months ago, and my mic doesn't work either (might be because it's jammed with lotsa dust, because it was lost under my brother's bed for 3 months)

Sadly cameras are attached with a ribbon cable, so if they don't work then it's 97% the ribbon is fucked up, ~2.7% that it's due to Ninty devs not being able to code the cam sysmodule prolerly, ~0.18% that the actual cameras are dead, and the rest is that there is a problem with the MCU's ability to control the cameras.

As for the microphone, again, the ribbon could've disconnected or broken. Or there is too much dust inside your 3DS which is shorting things.

Hey @Sono. The L and R buttons on my New 3DS XL have become less responsive over time. Would it be possible to swap L and R with ZL and ZR? Who really uses ZL and ZR anyway?

That is very complicated to do. It's somewhat possible to patch ir to replace ZL/ZR with a different button, but in reverse it's very difficult.
 

pivix

Well-Known Member
Member
Joined
Mar 14, 2009
Messages
141
Trophies
1
XP
1,584
Country
Poland
My cameras stopped working at all all of the sudden many months ago, and my mic doesn't work either (might be because it's jammed with lotsa dust, because it was lost under my brother's bed for 3 months)
I had five 3ds and sincerely I never used cameras ( or maybe once or twice when i was playing bravely default).
 

sansnumen

Well-Known Member
Member
Joined
Aug 4, 2017
Messages
323
Trophies
0
XP
1,362
Country
United States
That is very complicated to do. It's somewhat possible to patch ir to replace ZL/ZR with a different button, but in reverse it's very difficult.

That is quite a shame. I'm assuming the problem is that Nintendo decided to map ZR/ZL to the IR module to mimic what happens on Old 3DS when hooked up to the Circle Pad Pro. I guess I will have to hunt eBay for some new shoulder buttons. Thanks for your reply Sono.
 

Sono

cripple piss
OP
Developer
Joined
Oct 16, 2015
Messages
2,820
Trophies
2
Location
home
XP
9,310
Country
Hungary
That is quite a shame. I'm assuming the problem is that Nintendo decided to map ZR/ZL to the IR module to mimic what happens on Old 3DS when hooked up to the Circle Pad Pro. I guess I will have to hunt eBay for some new shoulder buttons. Thanks for your reply Sono.

Yup, that is the reason. The ir sysmodule could read HID_PAD directly, but hid would need to communicate with ir which is where it fails to be possible.
 

The Catboy

GBAtemp Official Catboy™: Boywife
Member
Joined
Sep 13, 2009
Messages
27,908
Trophies
4
Location
Making a non-binary fuss
XP
39,174
Country
Antarctica
This is the same old3DS that I use to this very day.
https://gbatemp.net/entry/3ds-repairs.11371/
TL: DR, old3DS had issues with the Wifi card and antenna, so I replaced them with parts from an old2DS. That's actually still the only hardware issue that I have between my 2 systems.
 
  • Like
Reactions: Sono

Sono

cripple piss
OP
Developer
Joined
Oct 16, 2015
Messages
2,820
Trophies
2
Location
home
XP
9,310
Country
Hungary
Make it so you have to double tap the power button to turn off the system. Prevents accidental power off.

I could perhaps increase the time it requires to register the button press. Y'know, debouncing is implemented in software via a small timer variable in RAM for each button (5 ticks for the HOME button, 27 ticks for a single Power button press, and 375 ticks for an "emergency" shutdown when you hold down the Power button for long enough), so it's as easy as patching a single byte in the firmware to increase the time required to register a button press.

Edit: this is so easy to do in fact that once I get in a good enough shape I'll quickly do this, will probably take 1-3 days if everything goes right.
 
Last edited by Sono,
  • Like
Reactions: Deleted User

Nutez

Assimilator of Lumas
Member
Joined
Jan 2, 2018
Messages
175
Trophies
0
Location
The other side of paradise.
XP
1,813
Country
United Kingdom
Very cool project! Would it be possible to double tap the home button for wifi instead? I'd be afraid of closing out a game. Or use the 3D slider for wifi? I liked the physical 'slider' for wifi on the old 3DS. Thanks.
 

Sono

cripple piss
OP
Developer
Joined
Oct 16, 2015
Messages
2,820
Trophies
2
Location
home
XP
9,310
Country
Hungary
Very cool project! Would it be possible to double tap the home button for wifi instead? I'd be afraid of closing out a game. Or use the 3D slider for wifi? I liked the physical 'slider' for wifi on the old 3DS. Thanks.

I'm avoiding the HOME button on purpose. I doubt you'd want to hold down the HOME button for one second to be able to exit out of a game due to this patch. I NEED TO increase the delay on the button in order to be able to detect doublepress. But if you're fine with it then sure, reply and I'll add it to my queue.

Edit: my doubletap-Power patch would prevent accidental closes from happening, but it only works for the Power button. Also, there might be not enough RAM to be able to keep track of the slider position and wifi state (to avoid false triggering due to ADC noise). Besides, I can't place anything anywhere. The 3D slider is an analog value, so if I were to place it in the wrong RAM address, you could brick the MCU while flashing if the value were to fluctuate while the flashing is happening.

i have a 2ds with screen damage (indent on touch screen) causing the touch screen to constantly believe i am pressing it . . . would it be a possibly to turn off touch input?

The best thing I could recommend is you try InputRedirection. After patching InputRedirection you could send a malformed touch release value which should confuse the patch, resulting in a permanently released touchscreen.
 
Last edited by Sono,

Balallax

Well-Known Member
Newcomer
Joined
Jul 27, 2017
Messages
45
Trophies
0
XP
166
Country
Brazil
Using the 3D slider as a brightness slider would be fantastic. Having some button combo to swap between the functionality would be nice too (not really sure the best way to implement that though).
I'm really looking foward for the brightness 3D slider. 98% of the time its disabled and the 2% of the time its enabled, is by accident.
 
Last edited by Balallax,

Ryccardo

Penguin accelerator
Member
Joined
Feb 13, 2015
Messages
7,689
Trophies
1
Age
28
Location
Imola
XP
6,904
Country
Italy
No problem except the touchscreen border scratching the top one :D

But if it's possible, select + volume = brightness, almost like on the DSi, would be quite cool!
 

Sono

cripple piss
OP
Developer
Joined
Oct 16, 2015
Messages
2,820
Trophies
2
Location
home
XP
9,310
Country
Hungary
No problem except the touchscreen border scratching the top one :D

But if it's possible, select + volume = brightness, almost like on the DSi, would be quite cool!

I highly doubt it's possible because I haven't yet discovered if any of the buttons are hooked up to the MCU other than HOME, Power, WiFi, and sleep switch. This should explain why I chose double-Power to toggle WiFi.
 
  • Like
Reactions: Itzumi and Ryccardo

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    Psionic Roshambo @ Psionic Roshambo: @SylverReZ, Indeed lol