SSD1305 Component Macro problem?
Moderator: Benj
-
- Posts: 170
- Joined: Fri Jul 15, 2016 9:51 pm
- Has thanked: 69 times
- Been thanked: 61 times
- Contact:
SSD1305 Component Macro problem?
Hi,
I bought a display module with SSD1305 driver.
During testing, the following problems have occurred:
- "Clear Display" Function does not work. Random pixels are lit on the display after execution.
- The display 32 row offset will appear on the screen.
The (0, 0) pixel coordinates (0; 32) at coordinates lit on the display.
The first 32 lines of the display (0;31) can not be used. Here, the pixels is always dark.
(I hope not, the display is faulty.)
Can you tell me, Which type of display did you test this macro? I tested it with a RAYSTAR REX012864B.
Best Regards,
Lagoda
I bought a display module with SSD1305 driver.
During testing, the following problems have occurred:
- "Clear Display" Function does not work. Random pixels are lit on the display after execution.
- The display 32 row offset will appear on the screen.
The (0, 0) pixel coordinates (0; 32) at coordinates lit on the display.
The first 32 lines of the display (0;31) can not be used. Here, the pixels is always dark.
(I hope not, the display is faulty.)
Can you tell me, Which type of display did you test this macro? I tested it with a RAYSTAR REX012864B.
Best Regards,
Lagoda
- Attachments
-
- SSD1305test.jpg
- (318.98 KiB) Downloaded 3413 times
-
- 1305display_test10.fcfx
- (7.4 KiB) Downloaded 321 times
- Benj
- Matrix Staff
- Posts: 15312
- Joined: Mon Oct 16, 2006 10:48 am
- Location: Matrix TS Ltd
- Has thanked: 4803 times
- Been thanked: 4314 times
- Contact:
Re: SSD1305 Component Macro problem?
Hello,
Sometimes the GLCD manufacturers don't place pixel 0,0 at location 0,0 of the controller IC. There is often an offset.
Maybe we can add an offset component property to allow for this. I will investigate and see how much of a job it would be to do.
For now try increasing the dimensions of the display in the component properties and see if this allows more of the display to be cleared.
Sometimes the GLCD manufacturers don't place pixel 0,0 at location 0,0 of the controller IC. There is often an offset.
Maybe we can add an offset component property to allow for this. I will investigate and see how much of a job it would be to do.
For now try increasing the dimensions of the display in the component properties and see if this allows more of the display to be cleared.
Regards Ben Rowland - MatrixTSL
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
-
- Posts: 170
- Joined: Fri Jul 15, 2016 9:51 pm
- Has thanked: 69 times
- Been thanked: 61 times
- Contact:
Re: SSD1305 Component Macro problem?
Hi Ben,
Thanks for the tip I tried but the result is not good.
Maybe it would be helpful to identify a few specific type, by which the Component Macro was tested and which probably will not be a problem for the user.
(If it is possible.)
If you had a reference assortment, to designing and to debugging will be easier for the Flowcode users.
And then what I do now?
Well, it will not be rapid prototyping.
Best Regards,
Lagoda
Thanks for the tip I tried but the result is not good.
Maybe it would be helpful to identify a few specific type, by which the Component Macro was tested and which probably will not be a problem for the user.
(If it is possible.)
If you had a reference assortment, to designing and to debugging will be easier for the Flowcode users.
And then what I do now?
Well, it will not be rapid prototyping.
Best Regards,
Lagoda
- Benj
- Matrix Staff
- Posts: 15312
- Joined: Mon Oct 16, 2006 10:48 am
- Location: Matrix TS Ltd
- Has thanked: 4803 times
- Been thanked: 4314 times
- Contact:
Re: SSD1305 Component Macro problem?
Hello Lagoda,
I have added offset properties to the component to try and help work around the problem.
I think in your case you would need to set the new Height Offset property to 32.
To add the new component to your installation simply copy the file to your "Flowcode 7/components" folder and restart Flowcode.
Let me know how you get on.
I have added offset properties to the component to try and help work around the problem.
I think in your case you would need to set the new Height Offset property to 32.
To add the new component to your installation simply copy the file to your "Flowcode 7/components" folder and restart Flowcode.
Let me know how you get on.
Regards Ben Rowland - MatrixTSL
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
-
- Posts: 170
- Joined: Fri Jul 15, 2016 9:51 pm
- Has thanked: 69 times
- Been thanked: 61 times
- Contact:
Re: SSD1305 Component Macro problem?
Hello Ben,
Thank you very much, to deal with the issue.
Unfortunately, the situation is apparently the same as before.
Lagoda
Thank you very much, to deal with the issue.
Unfortunately, the situation is apparently the same as before.
Lagoda
- Benj
- Matrix Staff
- Posts: 15312
- Joined: Mon Oct 16, 2006 10:48 am
- Location: Matrix TS Ltd
- Has thanked: 4803 times
- Been thanked: 4314 times
- Contact:
Re: SSD1305 Component Macro problem?
Hi Lagoda,
No change at all? Can you send me your current Flowcode program and a photo of the display running the latest firmware and I will check I have done things correctly.
Also do you have a link to the specific display you purchased.
No change at all? Can you send me your current Flowcode program and a photo of the display running the latest firmware and I will check I have done things correctly.
Also do you have a link to the specific display you purchased.
Regards Ben Rowland - MatrixTSL
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
- Benj
- Matrix Staff
- Posts: 15312
- Joined: Mon Oct 16, 2006 10:48 am
- Location: Matrix TS Ltd
- Has thanked: 4803 times
- Been thanked: 4314 times
- Contact:
Re: SSD1305 Component Macro problem?
Here is another attempt to solve the problem, this time rather than manipulate the pixel address I have applied the offset to the display initialisation values using command 0xD3 - Set display Offset.
Hopefully this will improve things.
Again try the value 32 for the Height Offset, if this doesn't work correctly then also try 16 and see what that gives you.
Hopefully this will improve things.
Again try the value 32 for the Height Offset, if this doesn't work correctly then also try 16 and see what that gives you.
Regards Ben Rowland - MatrixTSL
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
- Benj
- Matrix Staff
- Posts: 15312
- Joined: Mon Oct 16, 2006 10:48 am
- Location: Matrix TS Ltd
- Has thanked: 4803 times
- Been thanked: 4314 times
- Contact:
Re: SSD1305 Component Macro problem?
If you're still having problems then it might be worth talking to the supplier of the display and asking if they can provide example code. Then I can at least compare this to what we have here and hopefully spot the difference.
Unfortunately the display driver chips are usually very flexible and although most manufacturers will use the simple standard approach other may choose to do things differently.
Unfortunately the display driver chips are usually very flexible and although most manufacturers will use the simple standard approach other may choose to do things differently.
Regards Ben Rowland - MatrixTSL
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
-
- Posts: 170
- Joined: Fri Jul 15, 2016 9:51 pm
- Has thanked: 69 times
- Been thanked: 61 times
- Contact:
Re: SSD1305 Component Macro problem?
OHH Sorry!
The previous version, it pushed down the the display content with 32 rows.
I just pushed a reset. The "Clear Display" is not functional and could not see the change.
The second version was better.
Now writable of the top 32 row but of the lower 32 row are not.
Sorry but I have not been close to the computer for a while.
Can you help me yet?
Here I purchased the display: http://www.tme.eu/gb/katalog/#idp=1&sea ... rameters=1
Best Regards,
Lagoda
The previous version, it pushed down the the display content with 32 rows.
I just pushed a reset. The "Clear Display" is not functional and could not see the change.
The second version was better.
Now writable of the top 32 row but of the lower 32 row are not.
Sorry but I have not been close to the computer for a while.
Can you help me yet?
Here I purchased the display: http://www.tme.eu/gb/katalog/#idp=1&sea ... rameters=1
Best Regards,
Lagoda
- Attachments
-
- SSD1305test1.jpg
- (300.8 KiB) Downloaded 3368 times
-
- SSD1305test1b.jpg
- (291.82 KiB) Downloaded 3368 times
-
- 1305display_test010.fcfx
- (7.75 KiB) Downloaded 312 times
- Benj
- Matrix Staff
- Posts: 15312
- Joined: Mon Oct 16, 2006 10:48 am
- Location: Matrix TS Ltd
- Has thanked: 4803 times
- Been thanked: 4314 times
- Contact:
Re: SSD1305 Component Macro problem?
Sounds like the lower 32 rows may have a different offset again!
e.g. the SSD1305 memory map for your display may look something like this.
Rows 0 - 31 = Nothing
Rows 32 - 63 = Top 32 lines
Rows 64 - 95 = Nothing
Rows 96 - 128 = Bottom 32 lines
Hmm how to deal with this in a nice way!? I'll think on it.
I can certainly fix the component for you but it doesn't solve the wider issue of making a flexible component suitable for all.
e.g. the SSD1305 memory map for your display may look something like this.
Rows 0 - 31 = Nothing
Rows 32 - 63 = Top 32 lines
Rows 64 - 95 = Nothing
Rows 96 - 128 = Bottom 32 lines
Hmm how to deal with this in a nice way!? I'll think on it.
I can certainly fix the component for you but it doesn't solve the wider issue of making a flexible component suitable for all.
Regards Ben Rowland - MatrixTSL
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
- Benj
- Matrix Staff
- Posts: 15312
- Joined: Mon Oct 16, 2006 10:48 am
- Location: Matrix TS Ltd
- Has thanked: 4803 times
- Been thanked: 4314 times
- Contact:
Re: SSD1305 Component Macro problem?
I've emailed TME to see if they have any specific example code for the display.
Fingers crossed they can dig something out for us.
Otherwise your best bet may be to send us a display so we can play with it and get it working correctly.
Fingers crossed they can dig something out for us.
Otherwise your best bet may be to send us a display so we can play with it and get it working correctly.
Regards Ben Rowland - MatrixTSL
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
-
- Posts: 170
- Joined: Fri Jul 15, 2016 9:51 pm
- Has thanked: 69 times
- Been thanked: 61 times
- Contact:
Re: SSD1305 Component Macro problem?
That would be great. Thank you very much.
I tried different offsets:
Heigh offset=0, Bottom 32 lines available
Heigh offset=32, Top 32 lines available
Heigh offset=64, Bottom 32 lines available
Heigh offset=96, Top 32 lines available
I tried different offsets:
Heigh offset=0, Bottom 32 lines available
Heigh offset=32, Top 32 lines available
Heigh offset=64, Bottom 32 lines available
Heigh offset=96, Top 32 lines available
- Benj
- Matrix Staff
- Posts: 15312
- Joined: Mon Oct 16, 2006 10:48 am
- Location: Matrix TS Ltd
- Has thanked: 4803 times
- Been thanked: 4314 times
- Contact:
Re: SSD1305 Component Macro problem?
Sounds like it's wrapping. Maybe the X coordinate is the key. What if you go beyond the X = 127 boundary? does that allow you to control the other half of the display?
Regards Ben Rowland - MatrixTSL
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
-
- Posts: 170
- Joined: Fri Jul 15, 2016 9:51 pm
- Has thanked: 69 times
- Been thanked: 61 times
- Contact:
Re: SSD1305 Component Macro problem?
I have not studied thoroughly the technical data of SSD1503, but I think I'll do it today.
- Benj
- Matrix Staff
- Posts: 15312
- Joined: Mon Oct 16, 2006 10:48 am
- Location: Matrix TS Ltd
- Has thanked: 4803 times
- Been thanked: 4314 times
- Contact:
Re: SSD1305 Component Macro problem?
Good luck! Let me know if you spot anything.
Section 10.1.26 looks interesting but I can't make a whole lot of sense out of it.
Section 10.1.26 looks interesting but I can't make a whole lot of sense out of it.
Regards Ben Rowland - MatrixTSL
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
-
- Posts: 170
- Joined: Fri Jul 15, 2016 9:51 pm
- Has thanked: 69 times
- Been thanked: 61 times
- Contact:
Re: SSD1305 Component Macro problem?
Hi Ben,
If you have time, can you check the display initialisation process?
I thought might bring us closer to the solution.
I would not say that, I understand everything.
For the time being.
Thanks,
Lagoda
If you have time, can you check the display initialisation process?
I thought might bring us closer to the solution.
I would not say that, I understand everything.
For the time being.
Thanks,
Lagoda
- Attachments
-
- SSD1305_init.pdf
- (33.99 KiB) Downloaded 258 times
- Benj
- Matrix Staff
- Posts: 15312
- Joined: Mon Oct 16, 2006 10:48 am
- Location: Matrix TS Ltd
- Has thanked: 4803 times
- Been thanked: 4314 times
- Contact:
Re: SSD1305 Component Macro problem?
Hi Lagoda,
Did you try the X values >= 128 to see if this allows you to write to the other half of the display.
e.g. x = 128, y = 0
I've got some more example code to go through so I'll let you know if I spot anything.
That's what I've been looking at. The component as is works well with some SSD1305 displays so there is something different about the display you're using.If you have time, can you check the display initialisation process?
Neither would I the datasheet is certainly not as clear as it could be.I would not say that, I understand everything.
Did you try the X values >= 128 to see if this allows you to write to the other half of the display.
e.g. x = 128, y = 0
I've got some more example code to go through so I'll let you know if I spot anything.
Regards Ben Rowland - MatrixTSL
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
- Benj
- Matrix Staff
- Posts: 15312
- Joined: Mon Oct 16, 2006 10:48 am
- Location: Matrix TS Ltd
- Has thanked: 4803 times
- Been thanked: 4314 times
- Contact:
Re: SSD1305 Component Macro problem?
Right the manufacturer has been in touch with some example demo code.
I've changed the initialise routine to match up with their example.
Fingers crossed.
I've changed the initialise routine to match up with their example.
Fingers crossed.
Regards Ben Rowland - MatrixTSL
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
-
- Posts: 170
- Joined: Fri Jul 15, 2016 9:51 pm
- Has thanked: 69 times
- Been thanked: 61 times
- Contact:
Re: SSD1305 Component Macro problem?
Hello Ben,
I tried to modify the X value.
If I want to write out the text on the display and the text extends over on the 132nd pixel column (128-132 not shown on the screen) then repeated cyclically
prints on the screen and reset, prints on the screen and reset.
If the initial position of the text X> 132 then will be scribbled in the current "PAGE" (8 pixel lines) but then there is no reset.(This has not been fully analyzed yet.)
Have a nice weekend.
Lagoda
PS.: The attached Compiler Messages are okay?
I tried to modify the X value.
If I want to write out the text on the display and the text extends over on the 132nd pixel column (128-132 not shown on the screen) then repeated cyclically
prints on the screen and reset, prints on the screen and reset.
If the initial position of the text X> 132 then will be scribbled in the current "PAGE" (8 pixel lines) but then there is no reset.(This has not been fully analyzed yet.)
Have a nice weekend.
Lagoda
PS.: The attached Compiler Messages are okay?
- Attachments
-
- SSD1305_Comp_Mess.jpg
- (182.93 KiB) Downloaded 3292 times
-
- Posts: 170
- Joined: Fri Jul 15, 2016 9:51 pm
- Has thanked: 69 times
- Been thanked: 61 times
- Contact:
Re: SSD1305 Component Macro problem?
Hi,
Quickly I tried this version.
Improved but it is still not perfect.
X = 0, Y = 0 position "Thanks for helping"
X = 0, Y = 32 position "Volume = 1000"
Quickly I tried this version.
Improved but it is still not perfect.
X = 0, Y = 0 position "Thanks for helping"
X = 0, Y = 32 position "Volume = 1000"
- Attachments
-
- SSD1305test2.jpg (184.68 KiB) Viewed 16147 times
- Benj
- Matrix Staff
- Posts: 15312
- Joined: Mon Oct 16, 2006 10:48 am
- Location: Matrix TS Ltd
- Has thanked: 4803 times
- Been thanked: 4314 times
- Contact:
Re: SSD1305 Component Macro problem?
Hello Lagoda,
Looks like we're nearly there.
This component should hopefully fix the mirrored display problem.
I take it the clear function is not currently clearing everything. Are you drawing those horizontal lines?
Looks like we're nearly there.
This component should hopefully fix the mirrored display problem.
I take it the clear function is not currently clearing everything. Are you drawing those horizontal lines?
Regards Ben Rowland - MatrixTSL
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
-
- Posts: 170
- Joined: Fri Jul 15, 2016 9:51 pm
- Has thanked: 69 times
- Been thanked: 61 times
- Contact:
Re: SSD1305 Component Macro problem?
It's just been really bad.
The picture has been mirrored x-axis, compared to the previous state .
The picture disintegrated and always changeing the image content after the reset. (More and more unreadable.)
The "Dislay Clear" function in the Componet Macro do not working.(I did not drew. )
It would help if I can send a photo about the screen?
The picture has been mirrored x-axis, compared to the previous state .
The picture disintegrated and always changeing the image content after the reset. (More and more unreadable.)
The "Dislay Clear" function in the Componet Macro do not working.(I did not drew. )
It would help if I can send a photo about the screen?
- Benj
- Matrix Staff
- Posts: 15312
- Joined: Mon Oct 16, 2006 10:48 am
- Location: Matrix TS Ltd
- Has thanked: 4803 times
- Been thanked: 4314 times
- Contact:
Re: SSD1305 Component Macro problem?
Thanks for letting me know. I have been through the clear function now too so hopefully this will also work correctly.
Regards Ben Rowland - MatrixTSL
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
-
- Posts: 170
- Joined: Fri Jul 15, 2016 9:51 pm
- Has thanked: 69 times
- Been thanked: 61 times
- Contact:
Re: SSD1305 Component Macro problem?
Hi,
The "Dislay Clear" function is working now.
After the reset the operation is stable.
The "Dislay Clear" function is working now.
After the reset the operation is stable.
- Attachments
-
- SSD1305test3.jpg (148.41 KiB) Viewed 16124 times
- Benj
- Matrix Staff
- Posts: 15312
- Joined: Mon Oct 16, 2006 10:48 am
- Location: Matrix TS Ltd
- Has thanked: 4803 times
- Been thanked: 4314 times
- Contact:
Re: SSD1305 Component Macro problem?
Great, Very close now.
Looks like there is still a bit of an X offset so the attached has a new property which should hopefully fix that.
Set the H Offset property to 4 and hopefully you should now be good to go.
Looks like there is still a bit of an X offset so the attached has a new property which should hopefully fix that.
Set the H Offset property to 4 and hopefully you should now be good to go.
Regards Ben Rowland - MatrixTSL
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel