Jump to content

dm13dv1b

Members
  • Posts

    34
  • Joined

  • Last visited

Posts posted by dm13dv1b

  1. @ivanbraga, dm13dv1b: I have uploaded a new binary for Linux that was build on Ubuntu 15.04 64-Bit using Qt 5.4.1. Can you guys please download that from the µGFX-Studio website and tell me whether it is working?

    Tectu! It seems to be working now!

  2. Ok, and thank you again. Sorry for the post outside I know what you mean but I did not know what happens if I write that long post...

    So now I have the last version of my code, everything before I have updated ChibiOS and uGFX.

    That one is the only one what worked. The repo is here:

    https://dm13dv1b@bitbucket.org/dm13dv1b/stm32f4_chibios_ugfx_working.git

    It includes both the ChibiOS and uGFX sources!!!

    Since that I have tried two things.

    Updated the uGFX and used the ChibiOS_2.6.5. Did not worked.

    Updated the ChibiOS and used the uGFX 2.1. Did not worked.

    Updated both, did not worked. :)

    I will try to summarize the problems soon. Take your time. I take mine.

  3. Ok, I think I give it up. I've tried with fresh OS, fresh uGFX and could not make it. Something was always wrong.

    Thank you!

    And thank you again for this awesome work! :) Maybe in the future I will try it again. If I would be a better programmer... :)

  4. No it does not stuck in the code the system is up and running. I know because it is weird - the touch sometimes senses but not at the position where I touch it. Once again - it is not a hardware issue. I've checked the getpin_pressed() pin with an oscilloscope and Im sure it is ok.

    And yes, I have changed ChibiOS_2.6.8 from 2.6.5... I guess this will be the problem.

  5. Little update. It is not the touch device. I went back to my old laptop and successfully uploaded the source with the old ugfx and chibios and everything worked fine.

    I did push the to the repo, cloned to the new laptop, changed what I needed to change, compile, flash, run, stuck at calibration.

    It seems my SPI never get initialized. So it is not an uGFX issue. :(

  6. Looks like I still need your help. :(

    Before I had this in the mouse.c:


    GSourceHandle ginputGetMouse(uint16_t instance) {
    #if GINPUT_MOUSE_NEED_CALIBRATION
    Calibration *pc;
    #endif

    // We only support a single mouse instance currently
    // Instance 9999 is the same as instance 0 except that it installs
    // a special "raw" calibration if there isn't one we can load.
    if (instance && instance != 9999)
    return 0;

    But now it is only:

    GSourceHandle ginputGetMouse(unsigned instance) {
    if (instance == GMOUSE_ALL_INSTANCES)
    return (GSourceHandle)&MouseTimer;
    return (GSourceHandle)gdriverGetInstance(GDRIVER_TYPE_MOUSE, instance);
    }

    So how can I put my calibration data as I did before?

  7. Board: STM32F4Discovery

    SSD1289 ADS7843

    I guess the drivers are ok now. What I miss now is the touchpad.

    As I remember I have used the

    ginputGetMouse(9999);

    somehow and I had to insert the calibration data manually.

    Even if I dont have that, something is not ok now since the calibration routine does not work. I have the calibration screen but it does not see anything.

    A wiring and the hardware have been double checked. I guess I miss something on the SPI side... The source is here: https://github.com/dm13dv1b/STM32F4_ChibiOS_uGFX_gwin_2.git

    But I dont want anyone to write my code :) Just if you are curious.

  8. Usually that error occurs if you have defined ginput_need_mouse (except in uppercase) in your gfxconf.h file but haven't added a mouse driver to your build. That error indicates it can't find the mouse driver to compile in.

    Ps. The extern is needed. Without the extern it is an auto variable which makes the unresolved symbol dissappear but the program will crash as the mouse driver it is expecting is not linked in.

    Note: if you are using a mouse driver outside the repository (not one of our standard ones) you will need to upgrade the driver to match the new mouse calling interface.

    It sounds like Chinese for me :( It was easier in the previous version I have used. :( How can I add a mouse driver?

  9. It seems to be ok if I remove the "extern" :(

    	#else
    {
    extern const GMouseVMT const GMOUSEVMT_OnlyOne[1];

    if (!(GMOUSEVMT_OnlyOne->d.flags & GMOUSE_VFLG_DYNAMICONLY))
    gdriverRegister(&GMOUSEVMT_OnlyOne->d, GDISP);
    }
    #endif

    But I dont know if it is the proper way to do this...

    And still makes an error:

    /workspace/ugfx/src/ginput/ginput_mouse.c:648:39: warning: 'GMOUSEVMT_OnlyOne[0u].d.flags' is used uninitialized in this function [-Wuninitialized]

    if (!(GMOUSEVMT_OnlyOne->d.flags & GMOUSE_VFLG_DYNAMICONLY))

  10. Regarding your new GEVENT related problem: The structs werencleaned up and all the field holding widget pointers are named gwin now.

    if (((GEventGWinButton*)pe)->button == ghConsole)

    becomes

    if (((GEventGWinButton*)pe)->gwin == ghConsole)

    and so on.

    ~ Tectu

    Thank you... Sloooooowly seems to be ok...

    but:

    Linking build/ch.elf

    build/obj/ginput_mouse.o: In function `_gmouseInit':

    /home/makkmarci/workspace/ugfx/src/ginput/ginput_mouse.c:648: undefined reference to `GMOUSEVMT_OnlyOne'

    collect2: error: ld returned 1 exit status

    make: *** [build/ch.elf] Error 1

    BUILD FAILED (exit value 2, total time: 11s)

    in the ginput_mouse.c:

    void _gmouseInit(void) {
    // GINPUT_MOUSE_DRIVER_LIST is defined - create each driver instance
    #if defined(GINPUT_MOUSE_DRIVER_LIST)
    {
    int i;
    typedef const GMouseVMT const GMOUSEVMTLIST[1];

    extern GMOUSEVMTLIST GINPUT_MOUSE_DRIVER_LIST;
    static const GMouseVMT * const dclist[] = {GINPUT_MOUSE_DRIVER_LIST};

    for(i = 0; i < sizeof(dclist)/sizeof(dclist[0]); i++) {
    if (!(dclist[i]->d.flags & GMOUSE_VFLG_DYNAMICONLY))
    gdriverRegister(&dclist[i]->d, GDISP);
    }
    }

    // One and only one mouse
    #else
    {
    extern const GMouseVMT const GMOUSEVMT_OnlyOne[1];

    if (!(GMOUSEVMT_OnlyOne->d.flags & GMOUSE_VFLG_DYNAMICONLY))
    gdriverRegister(&GMOUSEVMT_OnlyOne->d, GDISP);
    }
    #endif

    }

    Since I did not declared GINPUT_MOUSE_DRIVER_LIST I dont understand why the OnlyOne is undefinied :(

  11. After I recognised some changes I have solved the previous.

    Now I have:

            ^
    main.c: In function 'main':
    main.c:693:32: error: 'GEventMouse' has no member named 'meta'
    if ((pem->meta & GMETA_MOUSE_CLICK)) {
    ^
    main.c:701:43: error: 'GEventGWinButton' has no member named 'button'
    if (((GEventGWinButton*)pe)->button == ghConsole)
    ^
    main.c:709:41: error: 'GEventGWinSlider' has no member named 'slider'
    if (((GEventGWinSlider*)pe)->slider == ghBrightness)
    ^
    main.c:712:113: error: 'GEventGWinSlider' has no member named 'slider'
    chprintf((BaseSequentialStream *)&SD2,"Slider %s = %d\r\n", gwinGetText(((GEventGWinSlider *)pe)->slider),
    ^
    main.c: At top level:
    main.c:382:13: warning: 'mysave' defined but not used [-Wunused-function]
    static void mysave(uint16_t instance, const uint8_t *calbuf, size_t sz)
    ^
    main.c:408:20: warning: 'myload' defined but not used [-Wunused-function]
    static const char *myload(uint16_t instance)
    ^
    make: *** [build/obj/main.o] Error 1

    BUILD FAILED (exit value 2, total time: 11s)

  12. Hi, I have the same problem. :( I have a previous project worked on my previous computer but I failed to compile now :(

    /home/makkmarci/workspace/ugfx/drivers/ginput/touch/ADS7843/ginput_lld_mouse.c:48:35: error: unknown type name 'MouseReading'

    void ginput_lld_mouse_get_reading(MouseReading *pt) {

    ^

    make: *** [build/obj/ginput_lld_mouse.o] Error 1

    http://pastebin.com/mxVcekEz

    with warnings:

    http://pastebin.com/2Mii4YsF

    would you please take a look at this? :( Thank you!

×
×
  • Create New...