u8glib 1.11 function SleepOn don't work.

Hi, sorry by my English, I'm from Spain. I'm doing an sketch with a LCD ST7565 128x64, I'm trying to use the functions "SleepON" and "SleepOff".

In the reference of U8glib this functions are avalaible since version 1.11. I'm using this constructor:

U8GLIB_DOGM128 u8g(13, 11, 10, 9, 8);

When I compiled my sketch, it appears an error: 'class U8GLIB_DOGM128' has no member named 'SleepOn'

I had search this member in all files in the library u8glib, but i dont found it.

Can you help me? Thanks.

Release 1.11 is not yet out. But I have just put another prerelease on the download page.
Let me know if the sleep function works. I added it some hours ago.

Oliver

Thanks Olikraus, I'm pending.

Hello Olikraus, I downloaded the version 1.11 ( u8glib_arduino_v1.11.zip ) at Google Code Archive - Long-term storage for Google Code Project Hosting..

I read the news for 1.11: New release v1.11 is available for download:
Support for T6963
Support for Arduino Due
Sleep Mode
4x mode for ST7920
New C++ interface for ST7920

but i not find how i have to do for use the function sleepon and sleepoff.
I'm looking for text "sleepon" in all archives of library and I not find it.

Can you help me. Thanks.

Hi

Thanks for the hint. Procedure names are:

    void U8GLIB::sleepOn(void)
    void U8GLIB::sleepOff(void)

I will add this to the reference manual.

Thanks,
Oliver

Thanks, Oliver

I put the code in my sketch and when i compile it say me:

ProAACon_V115.ino: In function 'void SCRApagaPantalla()':
ProAACon_V115:702: error: 'class U8GLIB_DOGM128' has no member named 'sleepOn'
ProAACon_V115.ino: In function 'void SCREnciendePantalla()':
ProAACon_V115:709: error: 'class U8GLIB_DOGM128' has no member named 'sleepOff'

My functions are:

/////////////////////////////////////////////////////////////// 
// APAGAMOS LA PANTALLA
/////////////////////////////////////////////////////////////// 
void SCRApagaPantalla(){
  scru8g.sleepOn();  
}

/////////////////////////////////////////////////////////////// 
// ENCENDEMOS LA PANTALLA 
/////////////////////////////////////////////////////////////// 
void SCREnciendePantalla(){
  scru8g.sleepOff();  
}

All others funtions work fine, why those not?

Thanks again

ok, I have to investigate this more closely. I have currently only limited access to the u8glib project, but I hope to work on this topic next week.

Oliver

Hi, Oliver:

I found the function at file u8g_ll_api.c and the syntax are:

void u8g_SleepOn(u8g_t *u8g)
{
  u8g_call_dev_fn(u8g, u8g->dev, U8G_DEV_MSG_SLEEP_ON, NULL);
}

void u8g_SleepOff(u8g_t *u8g)
{
  u8g_call_dev_fn(u8g, u8g->dev, U8G_DEV_MSG_SLEEP_OFF, NULL);
}

In te reference we have SleepOn and SleepOff not u8g_SleepOn and u8g_SleepOff. Maybe this is the matter?

I'll try later at home and i'll say you something.

These two procedures are part of the C interface. However the same procedure should be also available in the C++ interface.

Oliver

Hi, I tried at home and don't work, I don't know what is the matter. I'll continue looking for, but

If you found the bug please send me.

Thanks again.

Hi

I have added the following commands into the loop() procedure of the GraphicsTest example:

  if ( (draw_state % 8) == 2 )
   u8g.sleepOn();
   
  if ( (draw_state % 8) == 3 )
   u8g.sleepOff();

Everything works as expected. I did not found any bug.

Why do you think that it is not working?
Do you receive any warnings or compiler errors?
Can you upload your code?

Oliver

Hello oliver,

I found my problem, not because reason though I copied the new library, compiled with the old

I deleted the directory \library\u8glib and I copied u8glib again. compiled ok. I not have arduino card now, I test at my home later.

I tell you if the function works

Thanks for all. :slight_smile:

Glad to hear that your problem has been solved.

Oliver