Issue using Display N18 and FEZ Cerberus

Hi guys,

I wrote a similar topic few days ago (and Gus replied me), after that I had a problem with my GHI’s account so I deleted the previous topic and now I’m here to write for the same issue.

I’m trying to use N18 Display with FEZ Cerberus but I get an exception “System.OutOfMemoryException in Microsoft.SPOT.Graphics.dll”.

I was developing using VS2010 SP1 and a FEZ Cerberus with firmware and tinybooter 4.2.6.0.

Gus suggested me to update firmware and tinybooter at last version.
So I’ve done it and I changed also Visual Studio.

Now I’m using Visual Studio 2012 and the FEZ Cerberus mainboard has both firmware and tinybooter version at 4.2.6.1.

I still get the exception “System.OutOfMemoryException”. :open_mouth:

The code executed is:

        Public Sub ProgramStarted()
            With display_N18
                .SetBacklight(True)
                .SimpleGraphics.BackgroundColor = GT.Color.White
            End With

            ' Use Debug.Print to show messages in Visual Studio's "Output" window during debugging.
            Debug.Print("Program Started")
        End Sub

Can you help me?

If you need additional information don’t hesitate to ask.

Thanks in advance.
Alex

We had a bug that is fixed now. Does your old account work now?

about the problem, did you update to the latest firmware and sdk? You are not using the latest.

@ Gus - Yes, now my account works properly. Thanks a lot! ;D

About the firmware, I installed on my new laptop (where I have Visual Studio 2012) these executables:

  1. http://netmf.codeplex.com/downloads/get/500745
  2. https://www.ghielectronics.com/support/netmf/sdk/8/netmf-and-gadgeteer-package-2013-r3

I found these link at .NET Micro Framework – GHI Electronics .

There are newest sdk?

That is the SDK but did you load the firmware? Open FEZ config and check the firmware. It will tell you if you have the latest.

Yep those are the latest. Did you apply the firmware to your board?

Yes I did.
Please look at the attached image.
Is there another way to check the firmware version?

You said 6.0 but it is clear you have 6.1 which is the latest. What code are you trying? Just the one above?

Have you checked the ebook listed on our gadgeteer support page? It has some examples and they all work for us.

In my first post I said that, as you suggested, I updated firmware from 6.0 to 6.1!

About the code, I haven’t checked the ebook because I’m writing code for gadgeteer mainboards from about 6 months using FEZ Spider and other displays, so I thought that display N18 wasn’t different at all.

The code that I try to execute is the one above and the exception is thrown from the row:

.SimpleGraphics.BackgroundColor = GT.Color.White

Can you provide me a link with a working example?
I can try to execute it and notify you if it works properly or if I still get the exception.

N18 is a very specific device, it is NOT one that I’d compare to the others. https://www.ghielectronics.com/docs/59/display-n18-module

The book https://www.ghielectronics.com/downloads/man/Learning_to_program_in_Visual_Basic_and_Gadgeteer_v1.1.pdf

@ Gus - Sorry but the link is dead, I can’t see nothing.

@ Brett - I’ve already seen that link but, for example, I can’t find the method “Initialize()” in the class “Display_N18” referenced in my project.

display_N18.Initialize(4000);

I read also many topics with examples about how show images on N18 display using small images to compose a biggest one, etc.

But I think my problem is another because I get an exception simply trying to display a text using a code row seen in many examples on this forum.

Hi guys,

I have the same exception “System.OutOfMemoryException in Microsoft.SPOT.Graphics.dll”.
I’m using Fez Cerberus and display N18.

Hi had updated yesterday the firmware and tinybooter at last version, but the error is not varied.

The Initialize method was for an older SDK version, I have removed it from the N18 page. It is a private method called automatically now. I tried the code in your first post and it worked fine. Do you have any other code in the program? Any other modules in the designer?

@ John - John, first of all thanks for reply.

Yes, your question made ​​me realize that I forgot an important detail (I think!): the FEZ Cerberus firmware is for ethernet module usage.
I don’t have other code in the program but I have other modules in designer (and also phisically plugged at the mainboard):

  • Ethernet ENC28 Module (at socket 6)
  • Micro SD Card Module (at socket 7)

For your information, Display N18 is plugged at socket 5.

Sorry, the link is fixed now

https://www.ghielectronics.com/downloads/man/Learning_to_program_in_Visual_Basic_and_Gadgeteer.pdf

@ BigFoot - The Ethernet firmware uses a lot of RAM for networking. It will not be enough to handle N18, not with the driver we provide (simple graphics).

@ Gus - Thanks for the link.

About the firmware, this is a bad news. Now I’ll going to try to update firmware without ethernet and test FEZ Cerberus with display N18.

For my project I need also display N18 and Ethernet module, so what do you suggest?
Change fez mainboard or what else?

If you need simple things in the display them you can still use the ethernet firmware. Of course you can upgrade your fez and you will get a lot more memory. Try to compare products on the catalog of you want.