Hardware Project XZZ's Switch Boardviews Cracked!

  • Thread starter Thread starter slimeinacloak
  • Start date Start date
  • Views Views 42,072
  • Replies Replies 74
  • Likes Likes 45
perhaps you had already done some steps before. i had to install phyton and some other scripts. i dunno. it somehow worked. but i get the error with the unsupported file format.
tried it to install it on ubuntu too. i cant start the problem there, because the message occurs with "that operation is not supported" and a directory is not avaivlable something like /dev/dri

Got it working now, waiting for the diode values for obv
Against using the free version of FlexBV? It honestly does a better job of rendering the component and pin shapes, and the diode values provided earlier in the thread are compatible. OBV just renders circles for pins/contacts, and doesn't (currently) do a great job of differentiating between drill holes, test pads, etc.
 
Against using the free version of FlexBV? It honestly does a better job of rendering the component and pin shapes, and the diode values provided earlier in the thread are compatible. OBV just renders circles for pins/contacts, and doesn't (currently) do a great job of differentiating between drill holes, test pads, etc.
I thought there is no diode value with flexbv So i was hoping for openboardbiew will be delivered woth this feature to in the future
 
I thought there is no diode value with flexbv So i was hoping for openboardbiew will be delivered woth this feature to in the future
I'm not sure if there are current plans to add a way of displaying the diode readings in OBV.. With the current implementations, only the part/pad names are visible, so there would need to be a system built out for reading the metadata for parts/pins and displaying that somewhere. OBV doesn't do this for any of the board formats currently, even some cad files that have basically everything listed out for you.

Slime's post earlier with the obdata files:
https://gbatemp.net/threads/xzzs-switch-boardviews-cracked.663854/page-2#post-10581574

To use these files:

In FlexBV, go to the top menu > Board > 'Preferences / Details':
Screenshot_20250407_170902.png

Then, click 'Select' next to 'OBData Local File' to choose the appropriate Open Board Data file for the board you have loaded.:
Screenshot_20250407_170927.png

Note: If the names match up, and they are in the same directory it will be auto-loaded.
(E.g. "HAC-CPU-20.pcb" and "HAC-CPU-20.obdata" in the same folder)

Values will be shown when hovering over pins that have them:
Screenshot_20250407_172201.png


If you do repairs regularly, the licensed version has some really nice additions like working with pdf schematics alongside the boardviews, and being able to quickly scan your entire library of boardviews/schematics for donor parts (if you have other boards lying around).
These features don't really apply to the switch boards though, as proper part labels do not exist in the file data. As a work-around, the best option is to export to a BVR file, which you can then edit as a text file, to rename things or add part labels or information.. Something I'm attempting to work on for the HAC-CPU-20 board, as I've got one lying around.. It is not.. a fast process, and life's distractions are numerous at the moment.
 
Last edited by Sjohnson1021,
Hello, when I went to remove the flat capacitor SP2 from my Oled Switch, it came loose and broke the pad, and now I can't solder it. Is there any way around this?Can I look for it somewhere else?
 

Attachments

  • 20250524-231919-803.jpg
    20250524-231919-803.jpg
    1.2 MB · Views: 93
I manually added most part values for the Switch OLED-HEG-CPU-01 PCB by taking them from the zzattack scan I previously linked. Hover over a part (not pad) to see the value in the pop-up window:

FlexBV-OLED_Values.jpg


I was debating posting this as there may be some mistakes and I only entered what I could decipher from the sketchy handwriting, but I figured it might be more useful than not, so take this for what it is and do your own verification of part values firsthand.

The file with the part values is in ".obdq" format, it seems to be created automatically if you try to edit values in the viewer. I couldn't find a good way to incorporate it into the original ".obd" file without doing it line by line, but I was done with it at this point. FlexBV will read the obd and obdq files automatically as long as they're named the same as the pcb file and in the same directory.

Reference what Sjohnson1021 says in his post above.

Attatching my whole Switch OLED folder as a zip, so you can just extract it and open the .pcb file inside.

Side-note: it seems newer releases of FlexBV free don't allow showing butterfly view and you need to switch between front/back board views by pressing space, but in Win V5.0565 butterfly view works no problem.
 

Attachments

Wrote a quick script to put the values into the obdata file :) thank you for doing the manual stuff I started to a while ago but very quickly gave up lol

side note new FlexBV versions keep a version of the obdata in C:\Users\User\AppData\Local\FlexBV5\meta so delete that folder and it should reload the obdata from the local file

side side note i realise i didnt update this thread about me writing a basic trace layer renderer so quoted post here:
I made a very basic viewer for the trace layers of the xzz pcbs if anyone needs thatI will make it better when I have time during the week but rn its kinda usable, it pretty much only renders the layers atm doesnt do any nets or stuff
https://github.com/slimeinacloak/XZZPCB-ImHex/tree/main/Layer render

View attachment 521585
 

Attachments

Last edited by slimeinacloak,
Without any tools, I reconstructed this file by locating each leaked screenshot layer using OpenCV.
Are you able to share the process for making the json file, I'd love to try with some other pcb files but if it would be too hard to do that I might have a go at writing a converter to the json structure of the file you provided.
 
  • Love
Reactions: impeeza
Are you able to share the process for making the json file, I'd love to try with some other pcb files but if it would be too hard to do that I might have a go at writing a converter to the json structure of the file you provided.
I did not convert it using the PCB file you posted. You need to create a tool to convert PCB to JSON.
 
Wrote a quick script to put the values into the obdata file :) thank you for doing the manual stuff I started to a while ago but very quickly gave up lol

side note new FlexBV versions keep a version of the obdata in C:\Users\User\AppData\Local\FlexBV5\meta so delete that folder and it should reload the obdata from the local file

side side note i realise i didnt update this thread about me writing a basic trace layer renderer so quoted post here:

slimeinacloak said:
I made a very basic viewer for the trace layers of the xzz pcbs if anyone needs thatI will make it better when I have time during the week but rn its kinda usable, it pretty much only renders the layers atm doesnt do any nets or stuff
https://github.com/slimeinacloak/XZZPCB-ImHex/tree/main/Layer render

View attachment 521585
Very nice, I love what you've built with that.
also..
Of course you made a web-based viewer, because that's the reasonable/smarter thing to do. :hateit::ha:(and you just seem to be on some sort of roll)

I started to go the web approach... and definitely should have pushed it further, as my background is in web-development.. wrote out a plan and promptly ignored it. :rofl: After getting an initial rough implementation of rendering the part geometries, and starting to work on the traces (was also reading from json), I for whatever reason (edit: was thinking I'd get more/smoother performance out of a desktop app, browser struggled rendering thousands of trace segments for macbooks) decided that digging back into C++ after 10+ years was a good idea/worthwhile. Was trying to work the pin/pad geometries and traces into OBV, and kept running into issues, and it quickly became its own project.

Semi-obligatory screenshot (I have a v0.0.1 cross-platform build on github for [I'm not able to test the mac build] , the code.. is a mess right now, was experimenting with Cursor and Augment). It has board-folding, and net highlighting, and shows what limited info is available in the .pcb file. Idk, I thought some people may find it useful. :
Switch2-pcb-layer-viewer.png


SMDH, yours definitely looks cleaner though, and being web-based (anyone could host it on github pages), is much more accessible. Props/Kudos.
 
Last edited by Sjohnson1021,

Site & Scene News

Popular threads in this forum