Setting in the HMP(HomeMadePackage) screenshot are ok. In your previous version you had a wire soldered on top of the display module form GND to CS. This wire is now gone. Did you rewire the CS to GND at the bottom or wired to another pin ? If left open it will float and cause unexpected behaviour (sometimes it seems to work, sometimes not).
IN case of Dark and Under you must replace the Arduboy2 library included with the Dark and Under source with the one from the HMP.
The original display is a SSD1306 OLED display they have become more pricey nowadays.
CastleBoy uses ArgLib.h, which is a really old library.
It would need some modification.
It would be easier with a diff of @Mr.Blinky’s version of the library and the version he forked it off of.
Evade2 uses a git submodule to refer to a very specific version of the Arduboy2 library.
The library should be replacable.
You need to be looking around this area.
Theoretically the files you should be replacing should end up in Evade2/src/Arduboy2/src, but I won’t know for definite until Evade2 finishes downloading.
I’ve wired my Pro Micro like you with CS to GND, downloaded Evade 2 from github and opened evade2\evade2.ino without making any changes.
HMP version 1.2.4.
(Bootloader don’t care)
Based on: Arduino Leonardo (or Sparkfun Pro Micro 5V)
Core: Standard Arduino core
There are no problems with using a SH1106 display
To use the Arduboy optimized core you need to delete the file Evade2\src\ArduinoCore\wiring.c otherwise compiling will fail.
removing this file and compiling with core set to Arduboy optimized core will also show a proper display.
Please note that after you’ve uploaded Evade 2. There is no USB support when the game is running (USB code was removed by the developers to free space). To upload a new sketch you need to reset the Pro Micro or hold down LEFT+UP+A+B for 3 seconds after you’ve clicked the upload button.
I’ve adapted CastleBoy to use Arduboy2 library and it works fine on SH1106 displays too now when using HMP.
Note. Currently doesn’t compile with standard Arduino IDE / Arduboy2 library because of insufficient PROGMEM
Greetings to all!
Didn’t know what to write, that’s kind of already discussed this issue.
I will begin with gratitude for the help, thank you very much, until today everything works for me, but there was a game MiniRogue does not start on SH1106.
Is this the point where I need to switch to SSD1306 or is there a way to make it work?
In order to get my game to fit into the memory constraints of the Arduboy I did a couple of things:
I used a slightly modified version of ArdBitmap. My guess is this is not the culprit as it uses the standard screen buffer and display() function which is responsibile for writing the buffer to the screen
I used the ‘NO-USB’ macro. Again I do not think this is the culprit as this doesn’t affect screen handling - it simply removes the USB stack.
I used a hacked version of “wiring.c” which saved a few bytes, This was contributed by @Mr.Blinky and I cannot tell you what it does. I would look to remove this library and see if it compiles into the memory constraints of the Arduboy. It should do as we freed up some other memory.
The sound is created by attaching timers and interrupts. Maybe these are different to those needed by your board (assuming yours is not a Leonardo). You could remove this code by commenting out the #define SOUND and #define SOUND_ON_OFF in the Enums.h file.
My arduboy clone is made using Arduino Leonardo copy, soldered as indicated in the thread on the forum Arduboy homemade.
I came to the conclusion that the problem is in my computer, because at work I downloaded everything you need and download problems were no more. I try to remove the compiler from my home PC and try again. If there are any more problems, I’ll ask.
Again I am very happy to be part of your community. Thank you for your attention and quick answers!
I spent a very long time trying to get my Arduclone to work again and it doesn’t work. I’ve already ordered myself some SSD1306 displays to end the suffering. At the same time I have five pieces of SH1106 displays and do not want them to disappear.
I will build a test Arduclone from the new display and Board, if the problem is resolved, I will assume that ProMicro is broken.
@Pavlov_Roman Just out of curiosity are you running the atmega32u4 and sh1106 at 5V or 3V? I ask because while most commercially available sh1106 modules have a built in 3V regulator the I/O from the datasheet isn’t technically 5V tolerant and thus could kill the display after prolonged operation so I’ve always wondered if it would be a problem for custom builds. I’ve used the sh1106 before but I designed a custom board for the atmega32u4 with an onboard 3v regulator to run the entire system at 3V to get around this problem.