Announcement

Collapse
No announcement yet.

I Need Help, Arduino DUE + Diablo 9.0" uLCD90DCT communication is to slow!

Collapse
This topic is closed.
X
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #16
    Hi,

    In your project there are objects defined that don't exist.

    Could you please try this for me.

    Create another version of the Visi-Genie program by clicking on Save As and give it another name.

    Next click on Tools and then Renumber

    Then re-build the project and save to SD card etc.

    You will then have to check the Objects and change the Arduino code to accomodate any changes to Objects name and index.

    It might be best to back up the Arduino code also before making any changes.

    Then try to run the application with the Arduino attached.

    Best regards

    Paul

    Comment


    • #17
      Ok... I'll do it and let you you know! Thanks....

      Comment


      • #18
        Hi again.

        Even though you have code in your Arduino program which is looking at objects which don't exist in your Display project, I dont think any of it actually gets executed, so there is no reading or writing happening as the events coming back will not qualify those reads or writes to happen.

        That said, how you are attempting to read the slider is incorrect

        Code:
        tidalSlider = genie.ReadObject ( GENIE_OBJ_SLIDER, 0 );
        That is not how a genie.ReadObject works. It does not return anything. The genie.ReadObject requests data from the display, but the response appears in an entirely different place.
        You need to do another section like this:

        Code:
        //If the cmd received is from a Reported Object, which occurs if a Read Object (genie.ReadOject) is requested in the main code, reply processed here.
        if (Event.reportObject.cmd == GENIE_REPORT_OBJ)
        {
            if (Event.reportObject.object == GENIE_OBJ_SLIDER) // If the Reported Message was from a Slider
            {
                if (Event.reportObject.index == 0) // If Slider0 (Index = 0)
                {
                    tidalSlider = genie.GetEventData(&Event); // Receive the event data from the Slider0
                    genie.WriteObject( GENIE_OBJ_LED_DIGITS, 4, tidalSlider * 10 ); // Write it to LED Digits 4
                }
            }
        }
        Take a look at the genieArduino_Demo which comes in the examples folder of the library.

        I think though rather than doing a genie.ReadObject, which is polling the slider for a value, and then getting its response in the above handler, you simply want to capture any events that might have come from a slider, so its just that one line which you need to change to be this instead:

        Code:
        tidalSlider = genie.GetEventData(&Event);
        Obviously, after you actually put a slider into your Workshop4 project though.

        Also unrelated, but your LEDPeriod variable is an Int, it needs to be an unsigned long as milis() gets too big and your Habilitado LED stops flashing after a short time.

        I have not managed to get an Address Trap, simulating it here it all works correctly. I had to comment some stuff out to make it run on my hardware, but the main bulk of the code is still the same. What PmmC and Driver are you running on your Display? What version of Worskhop4 are you using?

        You are using Update Banks and Run, with uSD Destination. Have you by chance changed to Flash at one point and changed it back, without loading Update Banks and Run to the 9" display again?
        James

        Comment


        • #19
          Sorry James I was out of the office all the day and just now I'm reading your posted comments, I will attend them tomorrow morning and continuin with the testings!

          Luis

          Comment


          • #20
            Hi James, Good news!

            Finally I did it, I had to remake the whole LCD application, it was not so complicated, and now it's working well, everything updates on time, I had to download the PmmC Driver and I did it in automatic to reload and that fixed the message problem... and now it is working fine, I thank you very much for your coments and the advice...

            I think that the problem was as you said, to reuse a program done for a 35DCT got worse the implementation on the 90DCT!

            You can view the video on the same link that I shared to you in one of the last posted messages, link below:

            https://drive.google.com/file/d/1nDT...ew?usp=sharing

            Kind Regards!

            Comment


            • James_4DSystems
              James_4DSystems commented
              Editing a comment
              Excellent to hear, well done. I am glad things are working well now.

              Your video link does not work, I get the following error when trying to view from your provided link

              No Preview Available.
              File is in owner's Trash

          • #21
            Sorry This is the link!

            https://drive.google.com/file/d/1yuz...ew?usp=sharing

            please send me an email to give you access!

            Comment


            • James_4DSystems
              James_4DSystems commented
              Editing a comment
              Well done! I can see this, I must still have access from the previous video you sent.
              Lots of screens, all appear to be working correctly.
              Excellent work.
          Working...
          X