n0xa / m5stick-nemo

M5 Stick C firmware for high-tech pranks
Other
829 stars 161 forks source link

Custom Startup Image on M5Stick Project #170

Closed tamirhaddad closed 3 months ago

tamirhaddad commented 6 months ago

Hello Team,

I am currently working on customizing the startup image for an M5Stick project and need some guidance on how to properly generate and implement a new image. Despite making some adjustments, my changes do not seem to be reflected, and I suspect that there might be specific formats or steps I am missing.

Could anyone provide detailed instructions or point me towards resources on the correct procedures for generating and updating the startup image? Information on the accepted image formats, conversion tools, or any coding adjustments required would be greatly appreciated.

Thank you in advance for your assistance!

Best regards,

Max9th commented 6 months ago

Hello,I'm also working on nemo customisation, and figured that out a few weeks ago! idk if i can explain it well enough, but here it is: Resize your image to 240px lenght and 135px height, and then send it to this site: https://lang-ship.com/tools/image2data/ and select 16bit RGB565(BIG ENDIAN) Copy the output

Now go to m5stickc-nemo.ino on the arduino ide preferably rename NEMOMatrix.h to img.h (don't forget to also change line 285 of the code to img.h) Paste the code you got from the site in img.h Remove lines 90 and 153 from the source code, and replace lines 2219 to 2227 with this:

void bootScreen(){
  // Boot Screen
  #ifdef SONG
  setupSongs();
  #endif
  M5.Lcd.drawBitmap(0, 0, 240, 135, img);
  Serial.println("unsupported"); 
  delay(3000);
}

Note that this might break things for devices that weren't tested (I only tested this with my m5stickcplus2) and i also plan on figuring out how that site works, i want to make that into a python script Btw, i also posted a similar tutorial on reddit sometime ago

I might make a fork of NEMO that focuses on even more customization, but

  1. i need to read the license included with it
  2. I need to solve irl problems
  3. some more S*** you aren't interested in

Hope that helps :3