ramapcsx2 / gbs-control

GNU General Public License v3.0
788 stars 110 forks source link

Allow to control this device completely via OSD and allow to use Arduino Nano again #265

Closed M-Reimer closed 3 years ago

M-Reimer commented 3 years ago

I came to this project from some YouTube videos where the scaler, based on the GBS mainboard and the GBS-Control firmare was tested.

I need a simple scaler to use a SNES, N64 and probably a NES on a "modern" LCD TV.

BUT: For me it just feels weird that I have to use an external device (Smartphone, PC, ...) to configure it. I would really prefer being able to do the configuration directly on the GBS mainboard. After all it's just a scaler, I don't plan to configure this regularly. Best case I'll do this once and forget about it.

I've seen that there is some OSD code which seems like a "proof of concept" attempt without covering most settings.

tomudo commented 3 years ago

Arduino base microcontroller has too little flash memory to achieve a certain code scale. You should try to modify the very old 2 years arduino gbs-control to see the reason to use ESP base microcontroller.

M-Reimer commented 3 years ago

I had a deeper look into the code in the meantime. Seems like at some point many features exclusive to the ESP controllers have been implemented which can't be just mapped to the atmega controllers. One example would be SPIFFS which does not work on the limited EEPROM of the atmega chips.

I'll at first build one device as intended here and give it some time to see how I like it.

If I, at some time, decide that I want to try the OSD approach I would most probably just fork this project and drop everything regarding the web interface and OLED support to reduce the overall code base a bit. For a start I would also completely drop profile support. For an atmega chip this has to be reimplemented based on efficient structs to save the data in binary form with fixed spacing to EEPROM.

ramapcsx2 commented 3 years ago

A classic Arduino (ATMega) chip can't do many of the advanced features anymore. The concept of adaptive presets, so the entire preset system really, doesn't make sense without it. This project should really use the much more advanced ESP chip. It's the same price, but better.