Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 11:16 01 Aug 2025 Privacy Policy
Jump to

Notice. New forum software under development. It's going to miss a few functions and look a bit ugly for a while, but I'm working on it full time now as the old forum was too unstable. Couple days, all good. If you notice any issues, please contact me.

Forum Index : Microcontroller and PC projects : CMM2 Slight flickering in non-black areas and more little problems

Author Message
Bluescreen2001
Newbie

Joined: 14/08/2020
Location: Germany
Posts: 12
Posted: 04:06pm 27 Aug 2020
Copy link to clipboard 
Print this post

Hi,

yesterday arrived my new Color Maximite 2. I noticed some slight flickering in the status line and especially in the inverse status line of the editor. In black screen areas this is not visible.

So I wrote a small program that creates a gray screen with a white grid on it. After drawing the image the program simply exits and stands there with the BASIC prompt visible beneath the drawed image.

There I see the the flickering all over the screen. It is not continously but every few seconds there is here and there on the screen some flickering visible. Also there are times where there is no flickering. It seems to somehow periodically.

I tried several monitors and always pressed the adjust function of the monitor.
But it looks not like sync failures of the monitor. The displayed grid is stable, but here and there appeared some colored little squares. I know such distortions from an ages old Z80 computer where it appears when the CPU writes to the framebuffer, because the CPU had priority over video controller. I also tried several power supplies.

So maybe there is some timing problem with the video DMA accessing the RAM. Maybe some software activities in the background which disturbes DMA.
Is that a known problem, or a speciality of my CMM2. It is the original board with the waveshare CPU board on it.


Another small issue is one of my two keyboards. It is a small Cherry keyboard without numpad and without a hub or mouse inside. It works, but if I accidently press Shift-Lock during editing the editor got stuck and I have to reset the CMM2. The other Logitech full keyboard does not show this effect.

And one last tiny issue: after startup the SD access LED is on until you first access the SD card. After that it behaves as desired.
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10310
Posted: 05:43pm 27 Aug 2020
Copy link to clipboard 
Print this post

  Quote  There I see the the flickering all over the screen.


Some Waveshare seem prone to this, others not. The solution is to install the optional crystal oscillator and decoupling capacitor on the motherboard

  Quote  Another small issue is one of my two keyboards.

See my answer on the keyboard thread. No answer for this - other than to use the good keyboard


  Quote  And one last tiny issue: after startup the SD access LED is on until you first access the SD card. After that it behaves as desired.

User manual - page 11
 
Bluescreen2001
Newbie

Joined: 14/08/2020
Location: Germany
Posts: 12
Posted: 06:19pm 27 Aug 2020
Copy link to clipboard 
Print this post

Thank you for advice. I will check that oscillator stuff when I next order electronics. Have no SMD oscillator at hand.

That flickering is the only real issue for me. Otherwise I like the system very much. The great video functions especially.

Sorry that I did that keyboard comment. It seems that is a bit of hatefull theme for you. I thought because it is not that mouse/hub issue, I tell about.

The LED "issue" from page I really missed, despite really reading the manual. Sorry.

One technical question about the video generation of the CMM2. What is the limiting factor for the 800x600 resolution limit. I ask, because most old 4:3 monitors have a 1024x768 panel. So it would be great to have this resolution, even with limited colors, because it would look much sharper when using native resolution. Is the DMA speed too limited for that?
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10310
Posted: 06:24pm 27 Aug 2020
Copy link to clipboard 
Print this post

The latest release supports 1024x768 (mode 9). The issue is that 800x600x8bit fits in the chips fast internal memory whereas 1024x768x8bit has to use the slower SDRAM. So 800x600 just happens to hit the sweet spot as far as the hardware goes
 
Bluescreen2001
Newbie

Joined: 14/08/2020
Location: Germany
Posts: 12
Posted: 08:16pm 27 Aug 2020
Copy link to clipboard 
Print this post

I just checked the newest beta 5.05.05b21.
The new video modes 9 and 10 work, but the flickering increasing that much that you cannot use it.

I cannot believe that the onboard oscillator is so bad, but I will try an external one if I find one. For me it looks more like a RAM speed issue. You told that these extended video modes use SDRAM as framebuffer. Maybe there are different RAMs on different Waveshare boards? Mine is named IS42S16400J-7TLI.
 
Bluescreen2001
Newbie

Joined: 14/08/2020
Location: Germany
Posts: 12
Posted: 09:21pm 27 Aug 2020
Copy link to clipboard 
Print this post

I just read that there are 400Mhz and 480MHz processor versions on the waveshare boards. How can I determine which one I have.

I found no 8Mhz oscillator in my parts box. Only tons of 8MHz crystals.
Can you tell me how the SMD footprint of the needed oscillator is named?
 
TassyJim

Guru

Joined: 07/08/2011
Location: Australia
Posts: 6283
Posted: 09:35pm 27 Aug 2020
Copy link to clipboard 
Print this post

  Bluescreen2001 said  I just read that there are 400Mhz and 480MHz processor versions on the waveshare boards. How can I determine which one I have.

print mm.info(cpuspeed)

From the construction notes:
  Quote  The latest PCB has provision for an external 8 MHz crystal oscillator to replace the 8 MHz crystal on the
Waveshare CPU board. This may be needed in some rare cases where a monitor has difficulty with some VGA
modes (such as 800x600 pixel 16-bit colour).
Most people will not need this mod however, if it is required, it can be implemented by removing the 8 MHz
crystal on the Waveshare CPU board and installing the external oscillator and a capacitor on the motherboard.
The parts required are:
1 SMD 1206 100nF ceramic capacitor
1 8MHz oscillator in 5.0 x 7.0 mm SMD package (QX7 XO 25ppm). Eg, RS Stock Nbr 813-6194 .





I mounted mine dead bug style on the Waveshare module but current mainboards have provision for it there which is much neater.

Jim
Edited 2020-08-28 07:48 by TassyJim
VK7JH
MMedit
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10310
Posted: 09:47pm 27 Aug 2020
Copy link to clipboard 
Print this post

  Quote  I cannot believe that the onboard oscillator is so bad, but I will try an external one if I find one.


It is - see https://www.thebackshed.com/forum/ViewTopic.php?TID=12324&P=2

  Quote   Mine is named IS42S16400J-7TLI.

That is the part the timings are set for. Faster versions give no advantage
 
darthvader
Regular Member

Joined: 31/01/2020
Location: France
Posts: 87
Posted: 10:26pm 27 Aug 2020
Copy link to clipboard 
Print this post

for oscillator i fitted this one on the motherboard and it work well.
8mhz SMD oscillator
Theory is when we know everything but nothing work ...
Practice is when everything work but no one know why ;)
 
Bluescreen2001
Newbie

Joined: 14/08/2020
Location: Germany
Posts: 12
Posted: 05:01pm 28 Aug 2020
Copy link to clipboard 
Print this post

Since I have no oscillator on hand, I first tried to change the crystal and both of it's capacitors. But that didn't help.

This is mode 9:


In the default mode the flickering is only ocassionally, so I can live with it for now.

I have to wait until I have a few more parts to order. 0,90€ plus 6€ shipping is too unefficient.

Thorsten
 
Bluescreen2001
Newbie

Joined: 14/08/2020
Location: Germany
Posts: 12
Posted: 03:10pm 08 Sep 2020
Copy link to clipboard 
Print this post

Now finally arrived my Crystal Oscillator. And it works. I am really surprised. I never heared about a simple crystal is too unstable for a bit video generations. But ok, it's great!

Now I will try to add a project supporting USB hubs to the Cube library to the firmware. First try failed because of out of heap space (?). But the sample project on an STM32F4 board works. Maybe there is some fixed heap size definition in MMBASIC which I can reduce a bit to get the extra 1.2kB heap for the device tables of the hub.

Thanks for your hints so far.

Thorsten
 
robert.rozee
Guru

Joined: 31/12/2012
Location: New Zealand
Posts: 2442
Posted: 04:43pm 08 Sep 2020
Copy link to clipboard 
Print this post

the problem is not the crystal itself, but the nature of the circuitry (within the H7 processor) that drives it:



while the OSC_OUT pin is a low-impedance output, the OSC_IN pin is a high-impedance input. on the waveshare module this pin is not only attached to the crystal, but also runs to a pin on the edge of the module's PCB. this acts like a little antenna that picks up signals from other traces that run near to it on the module. in particular, traces that have high-speed clock signals for the RAM chip located on the underside of the module.

the signals that are picked up by the 'antenna' attached to the OSC_IN pin interfere with the smooth/stable running of the crystal oscillator circuitry, randomly trying to pull the oscillator off-frequency ever so slightly, resulting in tiny glitches in the VGA output.

the folks who designed the waveshare module really should have considered this, and employed a better layout to avoid the possibility of having stray signals coupled into the OSC_IN pin.

when you add an external crystal module, this provides a low-impedance output that drives into the OSC_IN pin on the processor. because the source is low-impedance, signals from nearby traces are no longer able to interfere.


cheers,
rob   :-)
 
Bluescreen2001
Newbie

Joined: 14/08/2020
Location: Germany
Posts: 12
Posted: 04:47pm 08 Sep 2020
Copy link to clipboard 
Print this post

Thanks Rob for the explanations. Sounds logical to me.
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10310
Posted: 04:53pm 08 Sep 2020
Copy link to clipboard 
Print this post

The Waveshare layout would not normally be an issue because LTDC is clocked when using LCD panels. Because we are using it unclocked and the VGA monitor has to phase lock to the output it makes it particularly sensitive.
 
Bluescreen2001
Newbie

Joined: 14/08/2020
Location: Germany
Posts: 12
Posted: 04:59pm 08 Sep 2020
Copy link to clipboard 
Print this post

BTW: Does the firmware generates the LCD clock änd framing signals somewhere. I ask because I have some 800x600 TFTs laying around with digital rgb signals. I wonder if it is possible to connect them to the RGB bits and have a nice Maximite tablet.
 
JimM
Newbie

Joined: 26/10/2022
Location: United Kingdom
Posts: 2
Posted: 10:00am 26 Oct 2022
Copy link to clipboard 
Print this post

Hi there... I have just completed a build of a Colour Maximite 2 with the WaveShare board (Gen 1) and I am having some of the issues described above in relation to image display.

At certain resolutions it flickers like mad, particularly noticeable on games like the Gauntlet Demo and Wolfenstein. It seems to vary from resolution to resolution although the initial startup screen seems fine and I can tinker about quite the thing in MMBASIC.

It's only when I try to launch stuff others have made where I run into problems with the image... sends the monitor into a tailspin of mode switching and the sound drops in and out.

Should I still consider the SMD Oscillator route or is there something else at play that I should perhaps check? I read somewhere else that the firmware had been updated to address some of the display issues but I could be mistaken.

Apologies if this is a repeated question - I am new to this forum and couldn't see another thread that covered this.

Thanks in advance!

Jim
Edited 2022-10-26 20:03 by JimM
 
matherp
Guru

Joined: 11/12/2012
Location: United Kingdom
Posts: 10310
Posted: 10:06am 26 Oct 2022
Copy link to clipboard 
Print this post

Definitely implement the oscillator
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 7937
Posted: 11:15am 26 Oct 2022
Copy link to clipboard 
Print this post

First, make sure you have a *good* power cable. You should get 5V at the CMM2 - not just at the power supply. A lot of leads are very poor. If you are still having problems after checking that then definitely do the oscillator mod.
Mick

Zilog Inside! nascom.info for Nascom & Gemini
Preliminary MMBasic docs & my PCB designs
 
JimM
Newbie

Joined: 26/10/2022
Location: United Kingdom
Posts: 2
Posted: 04:20pm 27 Oct 2022
Copy link to clipboard 
Print this post

Thanks for your help all... just for the benefit again for anybody who encounters this issue and is reading this forum... the oscillator fix worked a treat. All display modes render normally on my monitor.

Thanks!  
 
Print this page


To reply to this topic, you need to log in.

The Back Shed's forum code is written, and hosted, in Australia.
© JAQ Software 2025