Non-working example in default Nextion library

There is a standard example from the Nextion library for working with a button:

/**
 * @example CompButton.ino
 * 
 * @par How to Use
 * This example shows that when the button component on the Nextion screen is released,
 * the text of this button will plus one every time.      
 *
 * @author  Wu Pengfei (email:<pengfei.wu@itead.cc>)
 * @date    2015/7/10
 * @updated 2016/12/25 bring HMI up to v0.32 to avoid too old issues
 * @convert by Patrick Martin, no other changes made
 * @copyright 
 * Copyright (C) 2014-2015 ITEAD Intelligent Systems Co., Ltd. \n
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public License as
 * published by the Free Software Foundation; either version 2 of
 * the License, or (at your option) any later version.
 */

#include "Nextion.h"

/*
 * Declare a button object [page id:0,component id:1, component name: "b0"]. 
 */
NexButton b1 = NexButton(1, 4, "b1");

char buffer[100] = {0};

/*
 * Register a button object to the touch event list.  
 */
NexTouch *nex_listen_list[] = 
{
    &b1,
    NULL
};

/*
 * Button component pop callback function. 
 * In this example,the button's text value will plus one every time when it is released. 
 */
void b1PopCallback(void *ptr)
{
    uint16_t len;
    uint16_t number;
    NexButton *btn = (NexButton *)ptr;
    dbSerialPrintln("b0PopCallback");
    dbSerialPrint("ptr=");
    dbSerialPrintln((uint32_t)ptr); 
    memset(buffer, 0, sizeof(buffer));

    /* Get the text value of button component [the value is string type]. */
    btn->getText(buffer, sizeof(buffer));
    
    number = atoi(buffer);
    number += 1;

    memset(buffer, 0, sizeof(buffer));
    itoa(number, buffer, 10);

    /* Set the text value of button component [the value is string type]. */
    btn->setText(buffer);
}

void setup(void)
{    
    /* Set the baudrate which is for debug and communicate with Nextion screen. */
    nexInit();

    /* Register the pop event callback function of the current button component. */
    b1.attachPop(b1PopCallback, &b1);
    
    dbSerialPrintln("setup done"); 
}

void loop(void)
{   
    /*
     * When a pop or push event occured every time,
     * the corresponding component[right page id and component id] in touch event list will be asked.
     */
    nexLoop(nex_listen_list);
}

I must say right away that my button is on page 2 (page1) (the button id and page number are indicated in the sketch correctly). After loading a sketch if you press button. you will get no reaction (everything is connected correctly).

In the Serial Port I can see this:

19:57:24.513 -> ⸮⸮⸮bkcmd=1⸮⸮⸮page 0⸮⸮⸮

It seems that there is no transition to the second page (page1). If so, what are the possible solutions? I was digging the Internet, but I didn’t find anything .. Thanks.

Feels more like a question for the Nextion forum...

What arduino are you running that on? What is connected where? (Including pin 0 and 1)

J-M-L:
Feels more like a question for the Nextion forum...

What arduino are you running that on? What is connected where? (Including pin 0 and 1)

Arduino UNO (lib edited for UNO), AM2320, RTC1307 (both SDA + SCL pins) and DS18B20 pin 9

How is that display connected?

If it's a software serial port, I would be suspcious that it's waiting for a reasponse, but because it was sending when the response was sent, and software serial is half-duplex, with the response being sent while it's still transmitting, and hence couldnt receive the response.

DrAzzy:
How is that display connected?

If it's a software serial port, I would be suspcious that it's waiting for a reasponse, but because it was sending when the response was sent, and software serial is half-duplex, with the response being sent while it's still transmitting, and hence couldnt receive the response.

via Hardware Serial (RX 0 Pin TX 1pin)
Software Serial isnt working for me, I dont know why..

How do you get things go the serial monitor if the serial port is used by the display? Do you have a USB cable to the UNO and the serial monitor open?

J-M-L:
How do you get things go the serial monitor if the serial port is used by the display? Do you have a USB cable to the UNO and the serial monitor open?

Do you have a USB cable to the UNO and the serial monitor open?
yes

andrwgldmn:

Do you have a USB cable to the UNO and the serial monitor open?
yes

you can't do that. The serial line is needed for your Screen, it can't be shared between the PC and the Screen