tty2oled Soft&Hardware Add-On (Shows Core based Pictures on a Display)

Showcase builds, discuss cases, embedding MiSTer into existing computer cases.
User avatar
venice
Top Contributor
Posts: 788
Joined: Tue Jun 16, 2020 9:29 am
Location: Germany
Has thanked: 278 times
Been thanked: 278 times

tty2oled Soft&Hardware Add-On (Shows Core based Pictures on a Display)

Unread post by venice »

Just for fun ;)

At first: Many Thx to Sorgelig and all Contributors.

I like to share my MiSTer Software & Hardware "Add-On" called tty2oled which shows Text or Pictures based on the loaded Core on a Display.
You can find the Add-On on Github.

<<Breaking NEWS>>
2021-11-26: The new tty2oled Updater supports installation & update of the tty2oled device firmware
2021-11-26: New Tool pixviewer https://venice1200.github.io/MiSTer_tty2oled_Pictures/
2021-10-15: Pictures now with 16 "Greyscale-Level" Support

tty2oled_video.gif

At first I had the idea to add an OLED-Display showing just the MiSTer Logo.
After a bit of searching I found the possibilty to get information about the actual loaded core out of the file /tmp/CORENAME.
I tried tail -F tmp/CORENAME which results in error messages so I choose cat /tmp/CORENAME in a timed loop.
Later the timed loop was replaced by inotifywait -e modify "/tmp/CORENAME" which makes the system more reactive.

I tried an USB (-Serial) connection between an Arduino and the MiSTer (not MiSTer's User Port)
as this is an standard communication feature on Arduino's and easy to use.
And USB Ports are available for most of the MiSTer users is some way.
My ATMega with an FTDI Serial Adapter was sucessfully detected as /dev/ttyUSB0 by the MiSter.
Later I used an ESP32 with an CP Communication Chip because of storage and speed.
My Display is an SSD1322-OLED with 256x64 Pixel connected via SPI to the ESP32 MCU.

Setup:
The very easiest way to do the MiSTer setup is to use the "Updater". See next Post for direct Links.

If you have questions go first through this thread and the wiki.
Maybe the questions was already answered.

If your problem was not already discussed we need to know your used Hardware and wiring,
which Arduino Program are you using (USB/SD) and add some detailed pictures.
Please do not ask for help via PM, other Forum Users can help as well!

Donating!
If you enjoy the project and if you like to donate to me SEND ME A POSTCARD with an nice picture of your City/Area/Location/Country/Continent/Planet.
Drop me an PM with the Subject "Cardware" and I will answer.
You do not have the required permissions to view the files attached to this post.

My MiSTer Add-On-Projects tty2oled, i2c2oled, SNAC2IEC
You can donate by sending a Postcard (Cardwarez) to me.

User avatar
venice
Top Contributor
Posts: 788
Joined: Tue Jun 16, 2020 9:29 am
Location: Germany
Has thanked: 278 times
Been thanked: 278 times

tty2oled Add-On

Unread post by venice »

My MiSTer Add-On-Projects tty2oled, i2c2oled, SNAC2IEC
You can donate by sending a Postcard (Cardwarez) to me.

User avatar
venice
Top Contributor
Posts: 788
Joined: Tue Jun 16, 2020 9:29 am
Location: Germany
Has thanked: 278 times
Been thanked: 278 times

Re: tty2oled Add-On (Showing Corename based Text or Pictures on a Display)

Unread post by venice »

Troubleshooting
Go to:
https://github.com/venice1200/MiSTer_tt ... leshooting

Useful commands for the cli:

Code: Select all

dmesg | grep tty
lusb

If you add USB hardware to you mister it can happen that your display get another ttyUSB Port assigned.

Use the dmesg command from the troubleshooting page and start with only the tty2oled USB device connected to MiSTer.
Then reboot with the other device connected and run the dmesg command again to see the difference.
The lsusb command can help as well. Try it.

Tip
I am using my tty2oled display at the USB Port with the lowest number to be sure to get a/the low(est) ttyUSB Number assigned.

My MiSTer Add-On-Projects tty2oled, i2c2oled, SNAC2IEC
You can donate by sending a Postcard (Cardwarez) to me.

hiddenbyleaves
Posts: 121
Joined: Mon Nov 02, 2020 11:25 am
Has thanked: 48 times
Been thanked: 19 times

Re: tty2oled Add-On (Showing Corename based Text or Pictures on a Display)

Unread post by hiddenbyleaves »

This is the best thing I have ever seeeen!!!!
hiddenbyleaves
Posts: 121
Joined: Mon Nov 02, 2020 11:25 am
Has thanked: 48 times
Been thanked: 19 times

Re: tty2oled Add-On (Showing Corename based Text or Pictures on a Display)

Unread post by hiddenbyleaves »

Where did you get the little oled?
MaxPlaysMiSTer
Posts: 6
Joined: Tue Jun 23, 2020 7:47 pm
Been thanked: 1 time

Re: tty2oled Add-On (Showing Corename based Text or Pictures on a Display)

Unread post by MaxPlaysMiSTer »

Very very cool! This could definitely be adapted to replace the marquee for the lucky bastards that have their MiSTer in a cabinet too.

maxresdefault.jpg
You do not have the required permissions to view the files attached to this post.
User avatar
venice
Top Contributor
Posts: 788
Joined: Tue Jun 16, 2020 9:29 am
Location: Germany
Has thanked: 278 times
Been thanked: 278 times

Re: tty2oled Add-On (Showing Corename based Text or Pictures on a Display)

Unread post by venice »

hiddenbyleaves wrote: Thu Jan 21, 2021 6:31 pm Where did you get the little oled?
My one is an 3.12" SSD1322 Controller based 256x64 Pixel OLED with at least an SPI Interface from AliExpress.
Most of the Displays support more connection modes (SPI/Parallel) so it's possible you need to change it.

My MiSTer Add-On-Projects tty2oled, i2c2oled, SNAC2IEC
You can donate by sending a Postcard (Cardwarez) to me.

User avatar
LamerDeluxe
Top Contributor
Posts: 1239
Joined: Sun May 24, 2020 10:25 pm
Has thanked: 887 times
Been thanked: 284 times

Re: tty2oled Add-On (Show Text or Pictures based on Corename on a Display)

Unread post by LamerDeluxe »

Wow, that is fantastic! Thanks for developing this and even explaining in detail how it works.

I love the MiSTer community, so active and always so many new creative developments.
User avatar
venice
Top Contributor
Posts: 788
Joined: Tue Jun 16, 2020 9:29 am
Location: Germany
Has thanked: 278 times
Been thanked: 278 times

tty2oled now with SD Card Support

Unread post by venice »

SD Support added to the Add-On, second Post updated.
The SD Support add "live" download of the Pictures from SD Card. No need to keep the Pictures in Code.
Go to https://github.com/venice1200/MiSTer_tty2oled for Non SD an SD Versions and some XBM Picture files.

Important:
Both Arduino Versions use updated Serial Speed of 57600 baud so you need to change/replace the MiSTer Script tty2oled as well to support this.

My Current Pictures:
2021-02-09_All.png
You do not have the required permissions to view the files attached to this post.

My MiSTer Add-On-Projects tty2oled, i2c2oled, SNAC2IEC
You can donate by sending a Postcard (Cardwarez) to me.

User avatar
venice
Top Contributor
Posts: 788
Joined: Tue Jun 16, 2020 9:29 am
Location: Germany
Has thanked: 278 times
Been thanked: 278 times

Re: tty2oled Add-On now with SD Support (Show Text or Pictures based on loaded Core on Display)

Unread post by venice »

Question, is this the wrong forum's folder for sharing my add-on?

My MiSTer Add-On-Projects tty2oled, i2c2oled, SNAC2IEC
You can donate by sending a Postcard (Cardwarez) to me.

User avatar
Newsdee
Top Contributor
Posts: 873
Joined: Mon May 25, 2020 1:07 am
Has thanked: 104 times
Been thanked: 239 times

Re: tty2oled Add-On now with SD Support (Show Text or Pictures based on loaded Core on Display)

Unread post by Newsdee »

So this works off any USB port right? It doesn't require using the serial IO?
User avatar
gojira54
Posts: 29
Joined: Sun May 24, 2020 7:02 pm
Has thanked: 16 times
Been thanked: 8 times

Re: tty2oled Add-On now with SD Support (Show Text or Pictures based on loaded Core on Display)

Unread post by gojira54 »

Love this project - got to give it a go =]
Just ordered 1x SSD1322 & 1x TTGO T8 ESP32
retrorepair
Posts: 257
Joined: Sun May 24, 2020 9:06 pm
Has thanked: 64 times
Been thanked: 13 times

Re: tty2oled Add-On now with SD Support (Show Text or Pictures based on loaded Core on Display)

Unread post by retrorepair »

Newsdee wrote: Wed Feb 10, 2021 2:36 am So this works off any USB port right? It doesn't require using the serial IO?
Looks like USB from the image above.
User avatar
venice
Top Contributor
Posts: 788
Joined: Tue Jun 16, 2020 9:29 am
Location: Germany
Has thanked: 278 times
Been thanked: 278 times

Re: tty2oled Add-On now with SD Support (Show Text or Pictures based on loaded Core on Display)

Unread post by venice »

retrorepair wrote: Wed Feb 10, 2021 4:34 pm
Newsdee wrote: Wed Feb 10, 2021 2:36 am So this works off any USB port right? It doesn't require using the serial IO?
Looks like USB from the image above.
Correct, USB only.
"USB-Serial" is related to the USB-Serial Chip on the Arduino.

gojira54 wrote: Wed Feb 10, 2021 12:10 pm Love this project - got to give it a go =]
Just ordered 1x SSD1322 & 1x TTGO T8 ESP32
Post your experiences here please.


Updates:
I changed the "Particle Effect" Arduino Code a bit. Works correctly now.

Does onyone knows which font is used on the "Moon Patrol" Logo? I like to rebuild it.

My MiSTer Add-On-Projects tty2oled, i2c2oled, SNAC2IEC
You can donate by sending a Postcard (Cardwarez) to me.

hiddenbyleaves
Posts: 121
Joined: Mon Nov 02, 2020 11:25 am
Has thanked: 48 times
Been thanked: 19 times

Re: tty2oled Add-On now with SD Support (Show Text or Pictures based on loaded Core on Display)

Unread post by hiddenbyleaves »

Is that the biggest oled available for something like this? I can't find a bigger one.
User avatar
venice
Top Contributor
Posts: 788
Joined: Tue Jun 16, 2020 9:29 am
Location: Germany
Has thanked: 278 times
Been thanked: 278 times

Re: tty2oled Add-On now with SD Support (Show Text or Pictures based on loaded Core on Display)

Unread post by venice »

hiddenbyleaves wrote: Thu Feb 11, 2021 10:31 am Is that the biggest oled available for something like this? I can't find a bigger one.
The used library supports various display-controller and display-sizes.
See https://github.com/olikraus/u8g2/wiki/u8g2setupcpp for a list.
I have found entries up to 400X240 (maybe bigger).

My actual Arduino Sketch supports (currently) only the SSD1322 with 256x64 Pixel.

My MiSTer Add-On-Projects tty2oled, i2c2oled, SNAC2IEC
You can donate by sending a Postcard (Cardwarez) to me.

MiSTer_Kirk
Posts: 210
Joined: Thu Feb 04, 2021 11:42 pm
Has thanked: 18 times
Been thanked: 46 times

Re: tty2oled Add-On now with SD Support (Show Text or Pictures based on loaded Core on Display)

Unread post by MiSTer_Kirk »

Does onyone knows which font is used on the "Moon Patrol" Logo? I like to rebuild it.
Does this help ?
You do not have the required permissions to view the files attached to this post.
User avatar
venice
Top Contributor
Posts: 788
Joined: Tue Jun 16, 2020 9:29 am
Location: Germany
Has thanked: 278 times
Been thanked: 278 times

Re: tty2oled Add-On now with SD Support (Show Text or Pictures based on loaded Core on Display)

Unread post by venice »

Jepp, better. Thx.

MiSTer_MoonPatrol_v2_256x64.png
...and V3 (Final?).
MiSTer_MoonPatrol_v3_256x64.png
You do not have the required permissions to view the files attached to this post.

My MiSTer Add-On-Projects tty2oled, i2c2oled, SNAC2IEC
You can donate by sending a Postcard (Cardwarez) to me.

User avatar
LamerDeluxe
Top Contributor
Posts: 1239
Joined: Sun May 24, 2020 10:25 pm
Has thanked: 887 times
Been thanked: 284 times

Re: tty2oled Add-On now with SD Support (Show Text or Pictures based on loaded Core on Display)

Unread post by LamerDeluxe »

I have some ideas for this display, I have no idea if they would be possible:

- Show the current track number being read from a disk drive, a tape drive counter would be cool as well
- Show the controller button assignments for the current core
- Show the source display resolution and frequency, maybe the destination as well, like the one that pops up when starting a core.
- Time, WiFi/Network status, Bluetooth Status, IP address, the stuff in the main menu.
- Audio peak/vu meters, that would probably require too much performance.
MiSTer_Kirk
Posts: 210
Joined: Thu Feb 04, 2021 11:42 pm
Has thanked: 18 times
Been thanked: 46 times

Re: tty2oled Add-On now with SD Support (Show Text or Pictures based on loaded Core on Display)

Unread post by MiSTer_Kirk »

I like those ideas above, especially the disk drive track number, tape counter, etc...
User avatar
venice
Top Contributor
Posts: 788
Joined: Tue Jun 16, 2020 9:29 am
Location: Germany
Has thanked: 278 times
Been thanked: 278 times

Re: tty2oled Add-On now with SD Support (Show Text or Pictures based on loaded Core on Display)

Unread post by venice »

LamerDeluxe wrote: Fri Feb 12, 2021 8:04 pm I have some ideas for this display, I have no idea if they would be possible:
Every known value can be displayed.
The Problem is how and where to get them.

And I don‘t know what happens if you send permanently data from the MiSTer to the Arduino.
Does this create Problems with other USB Devices (Joystick Lag).

Maybe @Sorgelig can give us some comments?

My MiSTer Add-On-Projects tty2oled, i2c2oled, SNAC2IEC
You can donate by sending a Postcard (Cardwarez) to me.

User avatar
venice
Top Contributor
Posts: 788
Joined: Tue Jun 16, 2020 9:29 am
Location: Germany
Has thanked: 278 times
Been thanked: 278 times

Re: tty2oled Add-On now with SD Support (Show Text or Pictures based on loaded Core on Display)

Unread post by venice »

The question is how much the HPS Part of the MiSTer knows about values from the FPGA Part like "disk drive track number, tape counter, etc...".

If I understand the DE10-Nano Board correctly the USB Ports are connected to the HPS Part.

My MiSTer Add-On-Projects tty2oled, i2c2oled, SNAC2IEC
You can donate by sending a Postcard (Cardwarez) to me.

User avatar
LamerDeluxe
Top Contributor
Posts: 1239
Joined: Sun May 24, 2020 10:25 pm
Has thanked: 887 times
Been thanked: 284 times

Re: tty2oled Add-On now with SD Support (Show Text or Pictures based on loaded Core on Display)

Unread post by LamerDeluxe »

venice wrote: Sat Feb 13, 2021 8:16 am The question is how much the HPS Part of the MiSTer knows about values from the FPGA Part like "disk drive track number, tape counter, etc...".

If I understand the DE10-Nano Board correctly the USB Ports are connected to the HPS Part.
It would need support from the menu core and the individual other cores. I also wonder if it would negatively impact performance, as I read that Sorgelig wrote about performance on the ARM side being tight.
But things like a disk drive track number are exactly the type of thing I'd not want to read on my main display but on an external one. Internal temperature would be another good one to have.
User avatar
venice
Top Contributor
Posts: 788
Joined: Tue Jun 16, 2020 9:29 am
Location: Germany
Has thanked: 278 times
Been thanked: 278 times

Re: tty2oled Add-On now with SD Support (Show Text or Pictures based on loaded Core on Display)

Unread post by venice »

Update tty2oled Script
Changed the timed loop from sleep $WAITSECS to an loop with inotifywait -e modify "/tmp/CORENAME".
This makes the system more reactive as the scripts waits for an Core change instead of polling.

Got the idea from here https://misterfpga.org/viewtopic.php?p=18302#p18302

Update SD-Version
Added some more Home Menu Effects (just for fun)

My MiSTer Add-On-Projects tty2oled, i2c2oled, SNAC2IEC
You can donate by sending a Postcard (Cardwarez) to me.

User avatar
terminator2k2
Posts: 36
Joined: Sun May 24, 2020 6:46 pm
Has thanked: 27 times
Been thanked: 22 times

Re: tty2oled Software Add-On now with SD Support (Show Text/Pictures based on loaded Core on Display)

Unread post by terminator2k2 »

could something like this be implemented into the mt32-pi ? so we could have 1 display that does everything? i love the idea of this
User avatar
venice
Top Contributor
Posts: 788
Joined: Tue Jun 16, 2020 9:29 am
Location: Germany
Has thanked: 278 times
Been thanked: 278 times

Re: tty2oled Software Add-On now with SD Support (Show Text/Pictures based on loaded Core on Display)

Unread post by venice »

terminator2k2 wrote: Wed Feb 17, 2021 1:02 pm could something like this be implemented into the mt32-pi ? so we could have 1 display that does everything? i love the idea of this
You can ask the mt32 develpoper. I have no idea if it's possible.

My MiSTer Add-On-Projects tty2oled, i2c2oled, SNAC2IEC
You can donate by sending a Postcard (Cardwarez) to me.

User avatar
venice
Top Contributor
Posts: 788
Joined: Tue Jun 16, 2020 9:29 am
Location: Germany
Has thanked: 278 times
Been thanked: 278 times

Re: tty2oled Software Add-On now with SD Support (Show Text/Pictures based on loaded Core on Display)

Unread post by venice »

Update SD-Version
-Using the Effects for all Picture/Logo Transistions (not only for the Menu)
-"MENU" Picture moved from Code to the SD, makes it easier to change (if you like)
-Modified Text Position calculation (See Arduino File for Details)
-Show a small "SD-Icon" on Startup Screen instead of the "dot" if SD Card was detected

My MiSTer Add-On-Projects tty2oled, i2c2oled, SNAC2IEC
You can donate by sending a Postcard (Cardwarez) to me.

User avatar
Epyc
Posts: 5
Joined: Mon May 25, 2020 5:50 am
Has thanked: 2 times

Re: tty2oled Software Add-On now with SD Support (Show Text/Pictures based on loaded Core on Display)

Unread post by Epyc »

Is it possible to display the current Game/File that's loaded in the core?
User avatar
venice
Top Contributor
Posts: 788
Joined: Tue Jun 16, 2020 9:29 am
Location: Germany
Has thanked: 278 times
Been thanked: 278 times

Re: tty2oled Software Add-On now with SD Support (Show Text/Pictures based on loaded Core on Display)

Unread post by venice »

Epyc wrote: Tue Feb 23, 2021 6:38 pm Is it possible to display the current Game/File that's loaded in the core?
Not that I know.
Such a function would be nice but needs to be supported by the used cores.

My MiSTer Add-On-Projects tty2oled, i2c2oled, SNAC2IEC
You can donate by sending a Postcard (Cardwarez) to me.

User avatar
venice
Top Contributor
Posts: 788
Joined: Tue Jun 16, 2020 9:29 am
Location: Germany
Has thanked: 278 times
Been thanked: 278 times

Re: tty2oled Software Add-On now with SD Support (Show Text/Pictures based on loaded Core on Display)

Unread post by venice »

Update Standard Version by RealLarry (Github Pull Request).

New Logos added:
Photo-2021-03-02-15-50-18_6679.jpg
Photo-2021-03-02-15-49-49_6678.jpg
Photo-2021-03-02-15-49-29_6677.jpg
Photo-2021-03-02-15-49-04_6676.jpg
Photo-2021-03-02-15-48-42_6675.jpg
I have adjusted the new uploaded XBM Filenames so they can be used with the SD Version as well.
Many Thanks

//Edit
New Pictures added by RealLarry for:
Chess, Gameboy, GBA, MegaCD, SG1000, VECTREX, VideoPac, Pooyan, SuperBreakout, Zaxxon
Many Thanks
You do not have the required permissions to view the files attached to this post.

My MiSTer Add-On-Projects tty2oled, i2c2oled, SNAC2IEC
You can donate by sending a Postcard (Cardwarez) to me.

Post Reply