-
Notifications
You must be signed in to change notification settings - Fork 118
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Oddball request #412
Comments
@snhirsch I have tried all the above options of this by manually adding the setting to the config.txt file and most of them have issues like flickering menus and screen corruption probably due to the way that RGBtoHDMI works. For the scanning you mention above, the options would seem be You could try the above yourself by adding one of the above lines to config.txt in the Common video settings section Do you have any further info on the Corvus Concept video like number of bits per pixel or resolution? |
Thanks for getting back. I'm not actually have any success in getting a display - rotated or otherwise. On my Extron 300A scaler, I get a perfect (rotated) image with these parameters:
Hsync is positive going @ 35.5KHz. Vsync is negative @ 30Hz With the analog board installed on the rgb2hdmi I tried grounding pins 1,3,5 connected hsync to 2 and video to 4. It complains about "NO SYNC" and presents a totally garbaged display. I could get the no sync warning to disappear by backing down the voltage level in sampling, but I'm unable to successfully dial in the geometry. If I try to set the clock to 35Khz. or change the line length, the screen goes solid green and the unit stops responding. Not sure where to go at this point. |
The analog board only has composite sync input with no separate inputs for H/V sync so for full RGB support you would first have to combine the H and V syncs to make composite. Set "Palette" to Test 4Lvl B or U in the palette menu (This displays only the blue channel) Note that a new beta due soon will map the standard mono palettes on the blue channel in a special new mode to support this as the test palette is not really the correct option but it should allow you to test it with the current release. |
Once you have setup the above things, you should be using the Create Custom Profile menu which auto sets most things like that to sensible defaults based on the incoming sync timing so you would only need to adjust the number of clock cycles per line or the pixel clock. However it looks like the pixel clock rate for this screen is quite high and if it is >30Mhz then you will need to reduce the bits per pixel from 6BPP to 3BPP So, make the above changes, set the Sample mode to 3 bits per pixel in the sampling menu then go into the create custom profile menu and change the clock cycles per line to the correct value or the pixel clock to the correct value (the other will auto adjust based on the sync timing) You can then make other tweaks like the offsets. |
Thanks, I followed your advice and was able to dial in a beautiful display. Unfortunately it starts flashing on and off when I exit the menu. So something is still not right. What I do not understand is why the display is stable when the menu is visible. If it can lock to it under those circumstances then why not when I exit? Here's the capture of the flashing display: |
When the menu is on some code to do with detecting problems with the timing is disabled so you can actually make adjustments without the screen flashing but when the menu is off that code is enabled and that makes the screen flash indicating there is a timing problem. (note when the menu is on every other frame is being dropped and if that happens when the menu is off then the screen will flash) |
@snhirsch |
Thanks so much for all the help! I have a crisp, stable display now. Here are some screen shots and the config file. Please let me know if anything looks out of place? The only nit I noticed is that screen capture failed when I tried to grab a full display of the Concept word processor. When I press the 'down' button it flashes... something on the screen too quickly to read. In the capture directory I found a 75 byte file that represented the header of a PNG, but was corrupt and could not be viewed. A grab of the empty screen did work correctly. |
I moved on to try rotating the display. Unfortunately adding:
to config.txt in the root of the SD card has no effect at all. Am I misunderstanding something? |
I made the changes you suggested to sampling and geometry - thanks. Rotate does take effect when it's ahead of all the other video settings. It actually looks quite good, but I cannot get it to lock (flashing). Do I need to transpose the dimensions manually - or should I generate a new configuration? Recalibrating did not help with the flashing. Regarding corrupted screen capture - it seems to have something to do with scanlines. If I turn off scanlines it claims to have captured the image, but there is nothing in the capture directory. After reverting the rotation mods I'll take another run at it. And, sorry to be dense, but can I actually log into the Pi Zero when it's running rgb2hdmi? I thought the video code ran on bare metal. |
I don't think there is anything you can do to get it to work any better at the moment, some code changes will be required.
No, you can't log in as it is bare metal and there is no OS. |
Hi, Ian. I tried using a 180-degree Pi rotation with the Concept landscape mode (more practical for contemporary monitors) and it works perfectly aside from the upside-down rgb2hdmi menus. Along the way I discovered that Concept video has an extra pixel or two in the horizontal direction and bumped up the 'max' setting accordingly. This may well have helped with the rotated image but I didn't go back to verify. I discovered it using one of the Concept's diagnostic features to put up an alignment grid. Attached is my final working configuration file along with setup and cabling notes. Thanks SO much for the help and input. You folks have designed a great gadget! |
@snhirsch You will still need to edit the config.txt for the rotate and l2cache settings but the profile now makes use of a new setting in the palette menu "Mono Palette" which switches mono usage between the green, blue and red channels so you can then use the standard mono palette with any option and don't need the test palette. I have updated your profile with that setting and put it in the "Other" section of the profiles so can you test that and confirm it still works. |
It's not working properly for me. The bottom of the display sort of comes and goes periodically - not flashing but simply invisible some of the time. Also, for some reason my custom saved profiles are not appearing in the select list. I did copy the entire Saved_Profiles tree but it's not recognized. |
Thanks for the feedback. I'll have to figure out when that got broken.
Saved profiles are only visible if there is a matching named profile in the Profiles folder tree which there won't be on a new install so put your saved profile in the Profiles folder tree at the same location instead. |
Let me know if you need any more information on the "comes and goes" lower screen display. Certainly strange behavior. There is no sync instability at all and it looks perfect when the bottom 1/3 of the screen deigns to become visible. |
@snhirsch In the meantime, stick with the current stable release and I will @ you when I have a new beta with those features implemented. |
One of my favorite vintage machines is a Corvus Concept desktop. It was sold with a Ball Bros. CRT monitor that could mount in landscape or portrait orientation. A switch on the CPU unit rotates display accordingly. When configured for landscape, the display is "upside down" with the origin at lower right, scanning to left and upwards. In portrait, the display origin is upper right, scanning down and to the left. Short of performing gyrations with the monitor, is there any way to use rgb2hdmi to normalize the output for display? The video output is an otherwise rather standard video/H/V sync. I've been able to use it with an older Extron scaler, but that required the referenced gyrations :-).
The text was updated successfully, but these errors were encountered: