torsdag den 4. juli 2019

PlayStation Classic - Internal OTG mod


En af de ting jeg finder allermest interessant når det kommer til konsoller er at modde dem. Det er altid underholdende at finde loddekolben frem, åbne en konsol op og så ellers modificere denne så der bliver åbnet op for nye muligheder, som normalt ikke er tilstede.

I forbindelse med at der i 2018 udkom en PlayStation Classic konsol, som tilbyder gode gamle PlayStation spil via HDMI signal, fik jeg igen lyst til at gå i krig med at lodde. PlayStation Classic udkom med 20 præinstallerede spil på systemet, dog med mulighed for via modding at afvikle en lang række andre PlayStation titler. Dette er muligt ved hjælp af et forholdsvis simpelt softmod, hvilket betyder at der som udgangspunkt ikke er behov for at ændre på selve hardwaren. Muligheden i sig selv er sjov, dog betyder det også, at glæden ved at modde hardwaren - og lodde i maskinen - ikke som sådan er en nødvendighed.


Løsningen med et regulært softmod fungerer ved at modificere softwaren ved hjælp af data som bliver afviklet fra et USB flashdrev. Da jeg i første omgang kiggede på mulighederne vedrørende denne løsning, var der dog på dette tidspunkt den mangel, at controller port 2 blev optaget af denne USB enhed. Dette betød at muligheden for at tilslutte en ekstra controller bortfaldt, med mindre der blev gjort brug af en USB hub. I praksis betød det, at man var nødt til at have en ekstern USB hub tilsluttet, som både indeholdte USB flashdrevet med selve softmod-softwaren, samt en sekundær controller, hvis man måtte ønske at spillet 2 player i et spil som ikke i forvejen befandt sig på maskinen.

Løsningen i sig selv er som sådan okay funktionel, dog læste jeg om andre som havde udført et mod, som gjorde det muligt at integrere en USB hub internt i systemet, hvorved maskinen fortsat så standart ud eksternt, hvilket betød at man slap for at have diverse USB tilslutninger siddende på fronten af maskinen. Denne løsning tiltalte mig!



Jeg anskaffede en billig USB hub, som jeg efterfølgende strippede for dens kasse, så jeg endte op med selve PCB´et. Herfra forsynede jeg indgangen til USB med +5V direkte fra det punkt, hvor konsollen bliver forsynet med +5V fra den eksterne strømforsyning. Grunden til at jeg ikke snuppede de +5V fra den sekundære controller port var, at USB portene i maskinen er begrænset i mængden af ampere der kan trækkes fra disse. Det er muligt at omgå dette forholdsvis nemt, dog virker det i mit hoved som en bedre løsning at forsyne med USB hub´en med +5V direkte fra kilden.

Foruden +5V´en loddede jeg en ledning til Ground, hvorefter jeg kun manglede dataforbindelserne (Data+, Data-). Disse 2 forbindelser snuppede jeg internt fra den sekundære controllerport, ved at løfte de midterste 2 ben fra punkterne hvor selve USB porten er loddet på bundkortet af maskinen. Herfra loddede jeg på bundkortet en ledning fra hver af dataforbindelserne og dirkete til de matchende punkter på indgangen på USB hub´en. Fra en af de 4 udgange på USB hub´en loddede jeg så igen 2 ledninger retur til selve den sekundere USB port (controller port 2), hvorved dataforbindelserne nu - efter at havde været en tur igennem USB hub´en, nu igen var retur i den sekundære USB port på fronten af maskinen.

Efter at jeg fik loddet USB hub´en i maskinen, måtte jeg dog konstatere at løsningen ikke fungerede i praksis. Jeg gik i gang med Google og fandt frem til at det ikke er samtlige USB hubs som er kompatible med PlayStation Classic maskinen. Jeg kunne derfor give mig til at fjerne USB hub´en igen, eftersom den ikke havde noget formål. I setdet for at lodde databenene fra den sekundære USB port tilbage på bundkortet, valgte jeg i stedet at lodde de ledninger på, som jeg havde loddet på bundkortet, direkte tilbage på controller port 2 USB porten. Med denne løsning var alt som før, dog med den forskel at jeg i fremtiden ville have nemmere ved igen at montere en anden USB hub, uden at skulle trække nye ledninger fra bundkortet, men i stedet blot genbruge disse 2 ledninger.



Efter at projektet havde ligget stille i noget tid, så jeg at der var kommet en ny opdatering til BleemSync software, som nu gjorde det muligt at afvikle indholdet på USB flashdrevet (softmoddet) via OTG teknologi. Denne teknologi går ud på at der i samme port (USB Micro-B) som strømforsyningen tilsluttes ligeledes kan trækkes data. Nu hvor denne mulighed er åben, kan man via en adapter placere samme USB flashdrev på bagsiden af maskinen, samt afvikle software fra denne.

Som med den tidligere USB hub-løsning havde jeg dog lyst til dels at få gang i loddekolben igen og dels undgå at skulle have diverse ekstra kabler og adapter er hængende uden for selve konsollen.



Målet blev derfor at lave en intern OTG adaptor, så selve USB flashdrevet kunne gemmes væk internt i konsollen, hvorved maskinens ydrer fremstår intakt. Jeg gik derfor i gang med at montere en USB port på en lille printplade, som jeg så igen fastgjorde til selve bundkortet via nogle stabile punkter på bundkortet, som jeg kunne lodde til.

Ground ledningen blev loddet på pundkortet, hvorfra den går direkte til den pågældende forbindelse i USB porten. Dette gjorde jeg ligeledes med +5V forbindelsen. Denne blev - ligesom ved det mislykkedes USB hub forsøg - forbundet direkte til +5V forsyningen.

Hvor der i USB porten kun er 4 forbindelser (+5V, Ground, Data+, Data-) er der i USB Micro-B forbindelsen en ekstra forbindelse (Sence/ID). For at gøre brug af OTG teknologien, skal denne forbindelse føres til Ground. Eftersom jeg ikke er interesseret i at lave en permanent løsning, har jeg tilføjet en omskifter, som gør det muligt at kortslutte Sence/ ID med Ground, ved blot at flytte på denne. På den måde har jeg nemt mulighed for at afbryde OTG konfigurationen, hvis jeg på et tidspunkt måtte ønske dette.



I skrivende stund mangler jeg fortsat at trække 3 forbindelser (Data+, Data-, Sence/ID) fra USB Micro-B porten af bundkortet og over til det lille print som jeg har monteret. Grunden til at jeg endnu ikke har gjort det er dels at bundkortet - inklusiv den pågældende port - formentlig er blevet lakeret fra fabrikkens side, samt at det hele er ganske småt.

Jeg skal derfor først finde en fornuftig metode til at lave hul i lakken, før jeg kan lodde de 3 ledninger fast. Ligeledes er mine gamle øjne ved at være for gamle til at se klart på disse små forbindelser, hvorved jeg er nervøs for at komme til at fjerne / beskadige selve benene på porten, hvis jeg forsøger.




Jeg forventer derfor at montere de resterende 3 ledninger når jeg finder en fornuftig lup, samt eventuelt en smallere spids til min loddekolbe. Det er meget muligt at jeg kommer til at trække på min kære fars ekspertise i den forbindelse, eftersom han dels har det rette udstyr til opgaven og samtidig har mange års erfaring med at lodde små stumper :)



Uanset hvad, fungerer selve softmoddet dog fremragende. Dette kan klart anbefales, uanset om man ønsker at rode med hardware modding eller ej! Der findes flere OTG adaptorer (1, 2) derude, som ikke koster en mange kroner at bestille hjem. Hvis man derfor har det fint med at have et USB flashdrev hængende bagpå maskinen, er dette en ganske funktionel og fin løsning.




Processen i forhold til at tilføje spil er ligeledes ganske ligetil. I tilfælde af at du ønsker at gå i krig med at softmodde din PlayStation Classic, finder du en glimrende - og ganske simpel - guide her.


>>> Update (17. juli):

Efter at have tilbragt et par timer i fællesskab med min kære far, har jeg fået det interne OTG mod til at fungere. Som først antaget var selve printet - inklusiv indersiden af USB Micro-B forbindelsen - lakeret. Jeg startede derfor først med at skrabe lakken væk fra benene af stikket ved hjælp af en lille flad skruetrækker.



Herfra gjorde jeg brug af 0,18mm lakeret kobbertråd, til at trække de 3 forbindelser med (Data+, Data-, ID/Sence). Eftersom der er tale om så ganske små lodninger, gav det god mening at gøre brug af noget tyndt tråd, for at undgå at forbindelserne blev loddet sammen til en stor kortslutning.

Undervejs i processen stødte jeg på nogle opdagelser, som jeg ikke nødvendigvis kan forklare og / eller ikke ønsker at begynde at bruge en masse tid på at undersøge nærmere. Uanset hvad, vil jeg lige nævne disse, i tilfælde af at andre som står og skal i gang med et lignende mod, oplever samme udfordringer.



Under normale omstændigheder bruger jeg en strømforsyning til en Raspberry Pi til at forsyne konsollen med strøm. Da jeg havde maskinen med nede hos min far, havde jeg ikke taget strømforsyningen med, men gjorde i stedet brug af en anden strømforsyning som han havde liggende - typen hvor man kan sætte et USB kabel i. Her oplevede jeg, at jeg - når jeg startede maskinen op uden USB flashdrevet i - fint kunne boote op til "standart" menuen. Når jeg herefter valgte at slukke maskinen (trykke på power-knappen), skiftede den til orange lys (hvilket er normalt), hvorefter den dog genstartede. Dette problem opstod ikke når jeg bootede op via softmoddet på USB flashdrevet. Her kunne den fint slukke ned, uden at maskinen genstartede. Da jeg efterfølgende testede maskinen hjemme (med Raspberry Pi strømforsyningen) fungerede alt som det skulle, både med og uden USB flashdrevet. Hvad der konkret er gået galt aner jeg ikke?



I forbindelse med at jeg har trukket ledninger til det interne mod, har jeg ligeledes trukket en ledning fra ID/Sence forbindelsen som går hen til en kontakt (rød knap, sidder på det lille print). Jeg kan læse mig frem til, at denne forbindelse under almindelige omstændigheder bliver kortsluttet med Ground i en ekstern OTG adaptor. Eftersom jeg ikke ønsker at kortslutte ID/Sence forbindelsen med Ground permanent i det interne mod, loddede jeg en kontakt i, som gør det muligt at lave en kortslutning, samt fjerne denne igen, alt efter hvordan kontakten står. På den måde har jeg mulighed for at gøre maskinen helt "standart" i tilfælde af at jeg måtte ønske det.



Efter at jeg legede lidt med moddet efterfølgende, ser det dog ud til at maskinen booter fint op i softmoddet tilstand, uanset om ID/Sence bliver kortsluttet med Ground eller ej. Om det derfor er muligt at ignorere ID/Sence forbindelsen fuldstændigt, kan jeg ikke udelukke.



En sidste vigtig opdagelse jeg lavede omhandler Ground. Det virker som en ret dum fejl at lave, men samtidig også nem at overse hvis ikke man lige tænker sig om. Da jeg monterede det lille print, gjorde jeg brug af 4 store loddepunkter på selve Playstation PCB´et til at holde det lille print på plads. Jeg gik blindt ud fra at alle 4 punkter blot agerede Ground. Efter at havde målt modstanden imellem disse punkter, kunne jeg dog konstatere at de ikke blot agerer Ground - De er i hvert fald ikke fælles og der er modstand imellem nogle af dem! Efter at jeg nåede frem til denne erkendelse, fik jeg flyttet Ground ledningen til en anden loddeø, som pludselig fik moddet til at fungere.

Afslutningsvis kan jeg nu konstatere, at det er muligt at lave et velfungerende internt OTG mod. Det lækre ved dette mod er nu, at det er muligt at PlayStation Classic konsollen ser standart ud eksternt, samt at man slipper for at have et USB flashdrev hængende på fronten eller bagved. Om det er muligt at tilgå USB flashdrevet direkte via et USB kabel fra konsollen og hen til ens PC kan jeg ikke udelukke, dog vil denne forbindelse ligeledes skabe kontakt til selve konsollen, som nu er en samlet pakke med USB flashdrevet. Jeg påtænker derfor at fjerne USB flashdrevet og sætte dette direkte i min PC fremover, hvis jeg skal ændre på den software som ligger herpå, eftersom jeg ikke kan gennemskue om det vil medføre problemet at tilslutte maskinen direkte.


>>> Update (18. juli):

Efter at jeg oplevede at moddet både virkede når omskifteren (den røde knap på det lille print) stor til at ID/Sence forbindelsen blev kortsluttet med Ground, samt når den ikke gjorde, har jeg i dag forsøgt at lodde ledningen helt af omskifteren. Dette har jeg gjort for at udelukke at omskifteren eventuelt er defekt.



Jeg kan hermed konstatere, at moddet virker hvad enten ID/Sence bliver kortsluttet til Ground eller ej. Det er derfor muligt at udføre moddet uden at tænke på denne ID/Sence forbindelse og i stedet nøjes med at trække Data+ og Data- fra USB Micro-B stikket, samt lodde ledninger til +5V og Ground.



Ingen kommentarer:

Send en kommentar