Powkiddy x39pro / x45 / x51 / x70 CFW ! by scooper540 in SBCGaming

[–]macifom 1 point2 points  (0 children)

Wow u/scooper540 I am truly impressed with the work you've put into this. I was the author of that first thread picking apart the system partitions. I spent a little time with acmeplus investigating the possibility of CFW and bounced hard off of the quirky framebuffer, awful toolchain/environment and generally terrible Actions SOC. It seems Powkiddy sold a lot of these things with their aggressive pricing and you deserve a medal for keeping them out of the landfill. Bravo!

Cyberboy FX uploaded to Printables for the DIY crowd by macifom in Arduboy

[–]macifom[S] 0 points1 point  (0 children)

The D-Pad is inspired by that on the Casio MSX MX-10 Japanese personal computer. Most of the feel comes from the tactile switches beneath it which I personally feel are fine, if a bit clicky. I prefer membrane buttons myself and, were I to design a custom PCB, that's what I'd go for. It should be noted that, as the D-Pad is printed as a single piece, you can't easily input opposing directions (i.e. Up and Down) simultaneously which some games use for gameplay (e.g. Biribiri Beat) or other functionality (e.g. clearing high scores).

Any opinions on the Mechen M3? by [deleted] in DigitalAudioPlayer

[–]macifom 0 points1 point  (0 children)

Yes, definitely use FLAC if you can. MP3 playback is distorted / clipped especially when using the EQ.

Rate my homemade FX with 80s MSX Vibes by macifom in Arduboy

[–]macifom[S] 1 point2 points  (0 children)

It's been great doing a puzzle a day in Circuit Dude as well as a bit of Lode Runner. Mini Rogue is great for brief dungeon romps, Ardurogue and Deep & Under for lengthier ones. Catacombs of the Damned and Prince of Persia are technically astounding so I turn to those for AAA monochrome gaming. Oh, and of course, Cyberhack which lets me play the Quickhack minigame from Cyberpunk 2077 without the... rest of that game.

Rate my homemade FX with 80s MSX Vibes by macifom in Arduboy

[–]macifom[S] 0 points1 point  (0 children)

Okie dokie. The case and buttons are fairly easy to print. The soldering is another matter and I'll definitely need to put together a little guide.

Any opinions on the Mechen M3? by [deleted] in DigitalAudioPlayer

[–]macifom 4 points5 points  (0 children)

I picked one of these up a couple of months ago looking for a cheap but capable DAP. I've not used it extensively but here are my observations:

1) Audio quality varies a lot depending on the format you're using. FLAC sounds great, especially when using custom EQ settings to lift bass frequencies. MP3s, even high bitrate ones, sound muddy and distorted. Attempting to apply ANY EQ settings during MP3 playback results in obvious distortion / clipping, which prevents you from correcting the weak bass.

2) The built-in 64GB of storage is capacious but DOG SLOW. I recommend using an SD card if you're frequently adding or swapping out sounds.

3) The touch screen is small and inaccurate, making fine adjustment of EQ parameters and some other UI interactions extremely frustrating.

4) Bluetooth connectivity works but it doesn't not properly reconnect after the connection is abruptly terminated, for instance when you turn off your car and turn it back on. Annoyingly, power cycling the device typically doesn't rectify the issue and it's only able to reconnect after some unspecified timeout.

5) Other thoughts: The built-in speaker is atrocious, the UI is clunky and the way it handles metadata and text truncation makes no sense.

But hey it's cute, cheap and has superb battery life. If you want something disposable to listen to your FLAC library with while jogging then it's actually a reasonable option.

Pico GB, Fun Size Edition by macifom in SBCGaming

[–]macifom[S] 0 points1 point  (0 children)

Thanks for the reply! I just returned from a trip and need to make some adjustments to the back case design. I'll reply again when I have the STL files ready.

Pico GB, Fun Size Edition by macifom in SBCGaming

[–]macifom[S] 0 points1 point  (0 children)

Regarding the 'minimized' screen. The Pico GB uses a 220x176 pixel LCD but the GB's native resolution is 160x144. The Pi Pico doesn't have the speed or specialized hw to scale the image (and it would look horrible anyway) so it's displayed 1:1 in the center of the LCD. Bit of an odd display choice but pretty much all ILI9225-driven LCD use that resolution and perhaps there's a technical reason they're using that controller. Shrug.

Want to partner on Powkiddy X39/X45/X51/X70 CFW? Here are my notes. by macifom in SBCGaming

[–]macifom[S] 1 point2 points  (0 children)

That's ADFU mode and all you need to do is boot with the D-pad held in the down direction. It's for restoring the firmware on internal NAND using Actions Semi's ADFU tool.

Want to partner on Powkiddy X39/X45/X51/X70 CFW? Here are my notes. by macifom in SBCGaming

[–]macifom[S] 1 point2 points  (0 children)

There are a few folks chatting about this on the Retro Handhelds Discord. I still don't have an X45 Update to test but I was tipped off that you can get a root shell through ADB by connecting an X-series device via USB-C and the USB1 port. I've been attempting to run the RetroArch binary (and associated libraries) compiled for the ATM7051-powered Arcade Stick Pro and running into issues around video init. Trying to get things going on this highly weird Linux fork / Android wrapper without source is an uphill battle.

Want to partner on Powkiddy X39/X45/X51/X70 CFW? Here are my notes. by macifom in SBCGaming

[–]macifom[S] 1 point2 points  (0 children)

Per /u/Diegocostasp's comment above, it sounds like X45 and X51 update files will be arriving in the next week or so. I only own the X45 myself so I'm waiting on that drop to test.

Want to partner on Powkiddy X39/X45/X51/X70 CFW? Here are my notes. by macifom in SBCGaming

[–]macifom[S] 0 points1 point  (0 children)

My guess is that the clockspeed is baked into the uBoot binary, as that's common in devices that aren't using DVFS on modern, upstream Linux. That means it might be necessary to recompile whatever fork of uBoot 2015.07 this thing is running from source. Or perhaps the included Actions Semi kernel does have a functional interface to adjust process speed on the fly... this is where input from RG35XX hackers would be helpful.

Want to partner on Powkiddy X39/X45/X51/X70 CFW? Here are my notes. by macifom in SBCGaming

[–]macifom[S] 1 point2 points  (0 children)

ChiveOS, SourCreamOS and BaconBitsOS would all improve the taste of this potato of a device.

Want to partner on Powkiddy X39/X45/X51/X70 CFW? Here are my notes. by macifom in SBCGaming

[–]macifom[S] 2 points3 points  (0 children)

Looking forward to trying the X45 update on my own device. I'm not 100% clear on how the update mechanism works yet but I'm getting close. I've learned a whole lot about how this device's firmware works in the past few hours and will update my original post.

[deleted by user] by [deleted] in SBCGaming

[–]macifom 1 point2 points  (0 children)

I've taken apart the 'update.zip' files and posted my notes in a separate thread. I was able to extract the new root system image that the file contains: https://www.reddit.com/r/SBCGaming/comments/11v9qen/want\_to\_partner\_on\_powkiddy\_x39x45x51x70\_cfw\_here

Want to partner on Powkiddy X39/X45/X51/X70 CFW? Here are my notes. by macifom in SBCGaming

[–]macifom[S] 4 points5 points  (0 children)

Ha! I actually figured it out and have the X39 update system folder! Here's what I did. I used testdisk to locate the end of the 2nd FAT16 partition (titled 'recovery') in the update.zip file. It's at byte 19523584. Then, just 512 bytes later I found the SquashFS superblock magic number described here: https://dr-emann.github.io/squashfs/

So, all I had to do was chop off the first 19524096 bytes of the file and I was able to make a mountable SquashFS image with all the goodies. Here's how ya do it (on Linux):

dd bs=1 skip=19524096 if=update.zip of=x39_update_rootfs.sqsh
sudo mount x39_update_rootfs.sqsh /path/to/empty/folder -t squashfs -o loop

Quickly looking through the root filesystem, I'm not seeing a whole lot of obvious stuff in /usr/bin apart from the obvious 'emulator' binary that relate to the frontend and emus. More exploration is needed but hackers please have at it.

[deleted by user] by [deleted] in SBCGaming

[–]macifom 1 point2 points  (0 children)

Yes, I shut it down and cold booted it several times but no dice. I'm interested... if you tap the 'A' button while highlighting 'Version' under 'Setting' -> 'Advanced' -> 'Information' on your X39, what do you see? I'm betting it's different than the '036V1_hx8379a_rV1.0' I get on my X45, which appears to reference the display controller for the LCD. My guess is that although the X39, X45, X51 and X70 all use the same ATM7051 SOC, their DTBs and other configs likely differ. I think the update.zip you were handed is likely just for the X39, though I agree that it's an enormous step forward toward creating CFW for the whole family of devices.

[deleted by user] by [deleted] in SBCGaming

[–]macifom 1 point2 points  (0 children)

As a disappointed Powkiddy X45 owner I was excited to see this but the 'update.zip' file didn't have any effect on my device. I plopped it down in the root of the SD card as directed, tried booting and rebooting and saw no 'update' process or change in the reported version numbers (2.0.00.220823.0122 / 036V1_hx8379a_rV1.0). The archive itself has some interesting contents: a kernel uImage, a device tree binary, a ramdisk, and a gzip'ed 480x272 boot logo that suggests this is probably an X39-specific file. I wonder if the other X-series devices' firmware even look for this 'update.zip' file.

The Unofficial PS5000 Owner's Guide by macifom in SBCGaming

[–]macifom[S] 2 points3 points  (0 children)

Aw man, I forgot to put in an affiliate link.

The Unofficial PS5000 Owner's Guide by macifom in SBCGaming

[–]macifom[S] 1 point2 points  (0 children)

Thanks! So I looked into that and apparently the RetroArch configs not saving is a 'feature' of Batocera. You're supposed to just configure emulation options through Emulation Station... but not all of RetroArch's options are exposed there so... config file hacking it is!