tty2oled Soft&Hardware Add-On (Shows Core based Pictures on a Display)
- venice
- Top Contributor
- Posts: 743
- Joined: Tue Jun 16, 2020 9:29 am
- Location: Germany
- Has thanked: 267 times
- Been thanked: 263 times
tty2oled Soft&Hardware Add-On (Shows Core based Pictures on a Display)
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
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.
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
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.
- venice
- Top Contributor
- Posts: 743
- Joined: Tue Jun 16, 2020 9:29 am
- Location: Germany
- Has thanked: 267 times
- Been thanked: 263 times
tty2oled Add-On
Direct Links
MiSTer Setup/Installation
https://github.com/venice1200/MiSTer_tt ... stallation
Arduino Setup/Install HowTo for Windows
https://github.com/venice1200/MiSTer_tt ... Windows%29
Electrical
https://github.com/venice1200/MiSTer_tt ... Electrical
PCB's
https://github.com/venice1200/MiSTer_tt ... ki/PCB%27s
Gallery
https://github.com/venice1200/MiSTer_tt ... ki/Gallery
Testing
https://github.com/venice1200/MiSTer_tt ... ki/Testing
How does it work
https://github.com/venice1200/MiSTer_tt ... es-it-work
Project History
https://github.com/venice1200/MiSTer_tt ... ki/History
New tty2oled Command Mode
https://github.com/venice1200/MiSTer_tt ... Command_v2
The Command Mode enables tty2oled usage with any other script languages which supports the serial interface.
MiSTer Setup/Installation
https://github.com/venice1200/MiSTer_tt ... stallation
Arduino Setup/Install HowTo for Windows
https://github.com/venice1200/MiSTer_tt ... Windows%29
Electrical
https://github.com/venice1200/MiSTer_tt ... Electrical
PCB's
https://github.com/venice1200/MiSTer_tt ... ki/PCB%27s
Gallery
https://github.com/venice1200/MiSTer_tt ... ki/Gallery
Testing
https://github.com/venice1200/MiSTer_tt ... ki/Testing
How does it work
https://github.com/venice1200/MiSTer_tt ... es-it-work
Project History
https://github.com/venice1200/MiSTer_tt ... ki/History
New tty2oled Command Mode
https://github.com/venice1200/MiSTer_tt ... Command_v2
The Command Mode enables tty2oled usage with any other script languages which supports the serial interface.
-
- 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)
This is the best thing I have ever seeeen!!!!
-
- 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)
Where did you get the little oled?
-
- 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)
Very very cool! This could definitely be adapted to replace the marquee for the lucky bastards that have their MiSTer in a cabinet too.
You do not have the required permissions to view the files attached to this post.
- venice
- Top Contributor
- Posts: 743
- Joined: Tue Jun 16, 2020 9:29 am
- Location: Germany
- Has thanked: 267 times
- Been thanked: 263 times
Re: tty2oled Add-On (Showing Corename based Text or Pictures on a Display)
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.
- LamerDeluxe
- Top Contributor
- Posts: 1191
- Joined: Sun May 24, 2020 10:25 pm
- Has thanked: 838 times
- Been thanked: 269 times
Re: tty2oled Add-On (Show Text or Pictures based on Corename on a Display)
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.
I love the MiSTer community, so active and always so many new creative developments.
- venice
- Top Contributor
- Posts: 743
- Joined: Tue Jun 16, 2020 9:29 am
- Location: Germany
- Has thanked: 267 times
- Been thanked: 263 times
tty2oled now with SD Card Support
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:
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:
You do not have the required permissions to view the files attached to this post.
- venice
- Top Contributor
- Posts: 743
- Joined: Tue Jun 16, 2020 9:29 am
- Location: Germany
- Has thanked: 267 times
- Been thanked: 263 times
Re: tty2oled Add-On now with SD Support (Show Text or Pictures based on loaded Core on Display)
Question, is this the wrong forum's folder for sharing my add-on?
- Newsdee
- Top Contributor
- Posts: 843
- Joined: Mon May 25, 2020 1:07 am
- Has thanked: 101 times
- Been thanked: 215 times
Re: tty2oled Add-On now with SD Support (Show Text or Pictures based on loaded Core on Display)
So this works off any USB port right? It doesn't require using the serial IO?
-
- 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)
Looks like USB from the image above.
- venice
- Top Contributor
- Posts: 743
- Joined: Tue Jun 16, 2020 9:29 am
- Location: Germany
- Has thanked: 267 times
- Been thanked: 263 times
Re: tty2oled Add-On now with SD Support (Show Text or Pictures based on loaded Core on Display)
Correct, USB only.
"USB-Serial" is related to the USB-Serial Chip on the Arduino.
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.
-
- 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)
Is that the biggest oled available for something like this? I can't find a bigger one.
- venice
- Top Contributor
- Posts: 743
- Joined: Tue Jun 16, 2020 9:29 am
- Location: Germany
- Has thanked: 267 times
- Been thanked: 263 times
Re: tty2oled Add-On now with SD Support (Show Text or Pictures based on loaded Core on Display)
The used library supports various display-controller and display-sizes.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.
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.
-
- 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)
Does this help ?Does onyone knows which font is used on the "Moon Patrol" Logo? I like to rebuild it.
You do not have the required permissions to view the files attached to this post.
- venice
- Top Contributor
- Posts: 743
- Joined: Tue Jun 16, 2020 9:29 am
- Location: Germany
- Has thanked: 267 times
- Been thanked: 263 times
Re: tty2oled Add-On now with SD Support (Show Text or Pictures based on loaded Core on Display)
Jepp, better. Thx.
...and V3 (Final?).
...and V3 (Final?).
You do not have the required permissions to view the files attached to this post.
- LamerDeluxe
- Top Contributor
- Posts: 1191
- Joined: Sun May 24, 2020 10:25 pm
- Has thanked: 838 times
- Been thanked: 269 times
Re: tty2oled Add-On now with SD Support (Show Text or Pictures based on loaded Core on Display)
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.
- 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.
-
- 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)
I like those ideas above, especially the disk drive track number, tape counter, etc...
- venice
- Top Contributor
- Posts: 743
- Joined: Tue Jun 16, 2020 9:29 am
- Location: Germany
- Has thanked: 267 times
- Been thanked: 263 times
Re: tty2oled Add-On now with SD Support (Show Text or Pictures based on loaded Core on Display)
Every known value can be displayed.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:
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?
- venice
- Top Contributor
- Posts: 743
- Joined: Tue Jun 16, 2020 9:29 am
- Location: Germany
- Has thanked: 267 times
- Been thanked: 263 times
Re: tty2oled Add-On now with SD Support (Show Text or Pictures based on loaded Core on Display)
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.
If I understand the DE10-Nano Board correctly the USB Ports are connected to the HPS Part.
- LamerDeluxe
- Top Contributor
- Posts: 1191
- Joined: Sun May 24, 2020 10:25 pm
- Has thanked: 838 times
- Been thanked: 269 times
Re: tty2oled Add-On now with SD Support (Show Text or Pictures based on loaded Core on Display)
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.
- venice
- Top Contributor
- Posts: 743
- Joined: Tue Jun 16, 2020 9:29 am
- Location: Germany
- Has thanked: 267 times
- Been thanked: 263 times
Re: tty2oled Add-On now with SD Support (Show Text or Pictures based on loaded Core on Display)
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)
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)
- 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)
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
- venice
- Top Contributor
- Posts: 743
- Joined: Tue Jun 16, 2020 9:29 am
- Location: Germany
- Has thanked: 267 times
- Been thanked: 263 times
Re: tty2oled Software Add-On now with SD Support (Show Text/Pictures based on loaded Core on Display)
You can ask the mt32 develpoper. I have no idea if it's possible.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
- venice
- Top Contributor
- Posts: 743
- Joined: Tue Jun 16, 2020 9:29 am
- Location: Germany
- Has thanked: 267 times
- Been thanked: 263 times
Re: tty2oled Software Add-On now with SD Support (Show Text/Pictures based on loaded Core on Display)
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
-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
Re: tty2oled Software Add-On now with SD Support (Show Text/Pictures based on loaded Core on Display)
Is it possible to display the current Game/File that's loaded in the core?
- venice
- Top Contributor
- Posts: 743
- Joined: Tue Jun 16, 2020 9:29 am
- Location: Germany
- Has thanked: 267 times
- Been thanked: 263 times
Re: tty2oled Software Add-On now with SD Support (Show Text/Pictures based on loaded Core on Display)
Not that I know.
Such a function would be nice but needs to be supported by the used cores.
- venice
- Top Contributor
- Posts: 743
- Joined: Tue Jun 16, 2020 9:29 am
- Location: Germany
- Has thanked: 267 times
- Been thanked: 263 times
Re: tty2oled Software Add-On now with SD Support (Show Text/Pictures based on loaded Core on Display)
Update Standard Version by RealLarry (Github Pull Request).
New Logos added: 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
New Logos added: 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.