Skip to content

Commit 054d5e0

Browse files
committed
adds debugging messages
1 parent 4a4ad88 commit 054d5e0

File tree

4 files changed

+85
-3
lines changed

4 files changed

+85
-3
lines changed

api_drivers/py_api_drivers/frozen/display/display_driver_framework.py

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,8 @@ def __init__(
7777
rgb565_byte_swap=False
7878
):
7979

80+
print('DisplayDriver: __init__')
81+
8082
if power_on_state not in (STATE_HIGH, STATE_LOW):
8183
raise RuntimeError(
8284
'power on state must be either STATE_HIGH or STATE_LOW'
@@ -93,7 +95,9 @@ def __init__(
9395
'STATE_HIGH, STATE_LOW or STATE_PWM'
9496
)
9597

98+
print('DisplayDriver: if not lv.is_initialized()')
9699
if not lv.is_initialized():
100+
print('DisplayDriver: if not lv.init()')
97101
lv.init()
98102

99103
self.display_width = display_width
@@ -122,6 +126,7 @@ def __init__(
122126
self._invert_colors = False
123127

124128
if data_bus is None:
129+
print('DisplayDriver: data_bus is None')
125130
self._reset_pin = None
126131
self._power_pin = None
127132
self._backlight_pin = None
@@ -130,11 +135,13 @@ def __init__(
130135
self._frame_buffer1 = frame_buffer1
131136
self._frame_buffer2 = frame_buffer2
132137
else:
138+
print('DisplayDriver: data_bus is not None')
133139
if reset_pin is None:
134140
self._reset_pin = None
135141
elif not isinstance(reset_pin, int):
136142
self._reset_pin = reset_pin
137143
else:
144+
print('DisplayDriver: self._reset_pin = machine.Pin(reset_pin, machine.Pin.OUT)')
138145
self._reset_pin = machine.Pin(reset_pin, machine.Pin.OUT)
139146
self._reset_pin.value(not reset_state)
140147

@@ -143,6 +150,7 @@ def __init__(
143150
elif not isinstance(power_pin, int):
144151
self._power_pin = power_pin
145152
else:
153+
print('DisplayDriver: self._power_pin = machine.Pin(power_pin, machine.Pin.OUT)')
146154
self._power_pin = machine.Pin(power_pin, machine.Pin.OUT)
147155
self._power_pin.value(not power_on_state)
148156

@@ -152,17 +160,24 @@ def __init__(
152160
pin = machine.Pin(backlight_pin, machine.Pin.OUT)
153161
self._backlight_pin = machine.PWM(pin, freq=38000)
154162
else:
163+
print('DisplayDriver: self._backlight_pin = machine.Pin(backlight_pin, machine.Pin.OUT)')
155164
self._backlight_pin = machine.Pin(backlight_pin, machine.Pin.OUT)
156165
self._backlight_pin.value(not backlight_on_state)
157166

158167
self._data_bus = data_bus
159168

169+
print('DisplayDriver: self._disp_drv = lv.display_create(display_width, display_height)')
160170
self._disp_drv = lv.display_create(display_width, display_height)
161171

172+
print('DisplayDriver: self._disp_drv.set_color_format(color_space)')
162173
self._disp_drv.set_color_format(color_space)
174+
175+
print('DisplayDriver: self._disp_drv.set_driver_data(self)')
163176
self._disp_drv.set_driver_data(self)
164177

165178
if frame_buffer1 is None:
179+
print('DisplayDriver: frame_buffer1 is None')
180+
166181
buf_size = int(
167182
display_width *
168183
display_height *
@@ -180,14 +195,17 @@ def __init__(
180195
lcd_bus.MEMORY_SPIRAM
181196
):
182197
try:
198+
print('DisplayDriver: frame_buffer1 = data_bus.allocate_framebuffer(buf_size, flags)')
183199
frame_buffer1 = data_bus.allocate_framebuffer(buf_size, flags)
184200

185201
if (flags | lcd_bus.MEMORY_DMA) == flags:
202+
print('DisplayDriver: frame_buffer2 = data_bus.allocate_framebuffer(buf_size, flags)')
186203
frame_buffer2 = data_bus.allocate_framebuffer(buf_size, flags)
187204

188205
break
189206

190207
except MemoryError:
208+
print('DisplayDriver: frame_buffer1 = data_bus.free_framebuffer(frame_buffer1)')
191209
frame_buffer1 = data_bus.free_framebuffer(frame_buffer1)
192210

193211
if frame_buffer1 is None:
@@ -204,6 +222,7 @@ def __init__(
204222
else:
205223
buffer_size = len(frame_buffer1)
206224

225+
print('DisplayDriver: data_bus.init()')
207226
data_bus.init(
208227
display_width,
209228
display_height,
@@ -212,8 +231,10 @@ def __init__(
212231
rgb565_byte_swap
213232
)
214233

234+
print('DisplayDriver: self._disp_drv.set_flush_cb(self._flush_cb)')
215235
self._disp_drv.set_flush_cb(self._flush_cb)
216236

237+
print('DisplayDriver: self._disp_drv.set_buffers()')
217238
if isinstance(data_bus, lcd_bus.RGBBus):
218239
self._disp_drv.set_buffers(
219240
frame_buffer2,
@@ -249,13 +270,16 @@ def __init__(
249270
render_mode
250271
)
251272

273+
print('DisplayDriver: data_bus.register_callback(self._flush_ready_cb)')
252274
data_bus.register_callback(self._flush_ready_cb)
253275

254276
self._frame_buffer1 = frame_buffer1
255277
self._frame_buffer2 = frame_buffer2
256278

279+
print('DisplayDriver: self.set_default()')
257280
self.set_default()
258281

282+
print('DisplayDriver: self._disp_drv.add_event_cb(self._on_size_change, lv.EVENT.RESOLUTION_CHANGED, None)')
259283
self._disp_drv.add_event_cb(self._on_size_change, lv.EVENT.RESOLUTION_CHANGED, None) # NOQA
260284

261285
self._displays.append(self)

builder/__init__.py

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -312,6 +312,10 @@ def process_output(myproc, out_to_screen, spinner, cmpl, out_queue):
312312
line += out
313313
if out == b'\n':
314314
line = _convert_line(line.strip())
315+
if not line:
316+
line = b''
317+
continue
318+
315319
out_queue.put(line)
316320

317321
if not spinner and out_to_screen:
@@ -327,8 +331,11 @@ def process_output(myproc, out_to_screen, spinner, cmpl, out_queue):
327331
sys.stdout.write(line + padding)
328332
last_line_len = len(line)
329333
else:
330-
last_line_len = -1
331-
sys.stdout.write(line + '\n')
334+
if last_line_len == -1:
335+
sys.stdout.write(line + '\n')
336+
else:
337+
sys.stdout.write('\n' + line + '\n')
338+
last_line_len = -1
332339

333340
sys.stdout.flush()
334341

@@ -347,6 +354,10 @@ def process_output(myproc, out_to_screen, spinner, cmpl, out_queue):
347354
err_line += out
348355
if out == b'\n':
349356
err_line = _convert_line(err_line.strip())
357+
if not err_line:
358+
err_line = b''
359+
continue
360+
350361
out_queue.put(err_line)
351362
if out_to_screen and not spinner:
352363
sys.stderr.write(err_line + '\n')

builder/esp32.py

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -340,6 +340,7 @@ def setup_idf_environ():
340340
# There were some modifications made with how the environment gets set up
341341
# @cheops put quite a bit of time in to research the best solution
342342
# and also with the testing of the code.
343+
print('Getting ESP-IDF build Environment')
343344

344345
if sys.platform.startswith('win'):
345346
return None
@@ -502,6 +503,25 @@ def compile(): # NOQA
502503
'CONFIG_ESPTOOLPY_FLASHFREQ_80M=y',
503504
'CONFIG_ESPTOOLPY_AFTER_NORESET=y',
504505
'CONFIG_PARTITION_TABLE_CUSTOM=y',
506+
'BOOTLOADER_LOG_LEVEL_NONE=n',
507+
'BOOTLOADER_LOG_LEVEL_ERROR=n',
508+
'BOOTLOADER_LOG_LEVEL_WARN=n',
509+
'BOOTLOADER_LOG_LEVEL_INFO=n',
510+
'BOOTLOADER_LOG_LEVEL_DEBUG=y',
511+
'BOOTLOADER_LOG_LEVEL_VERBOSE=n',
512+
'CONFIG_LCD_ENABLE_DEBUG_LOG=y',
513+
'HAL_LOG_LEVEL_NONE=n',
514+
'HAL_LOG_LEVEL_ERROR=n',
515+
'HAL_LOG_LEVEL_WARN=n',
516+
'HAL_LOG_LEVEL_INFO=n',
517+
'HAL_LOG_LEVEL_DEBUG=y',
518+
'HAL_LOG_LEVEL_VERBOSE=n',
519+
'LOG_DEFAULT_LEVEL_NONE=n',
520+
'LOG_DEFAULT_LEVEL_ERROR=n',
521+
'LOG_DEFAULT_LEVEL_WARN=n',
522+
'LOG_DEFAULT_LEVEL_INFO=n',
523+
'LOG_DEFAULT_LEVEL_DEBUG=y',
524+
'LOG_DEFAULT_LEVEL_VERBOSE=n'
505525
]
506526

507527
if flash_size == '2':

ext_mod/lcd_bus/esp32_src/spi_bus.c

Lines changed: 28 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,7 @@ STATIC mp_obj_t mp_lcd_spi_bus_make_new(const mp_obj_type_t *type, size_t n_args
113113

114114
self->host = host;
115115
self->panel_io_handle.panel_io = NULL;
116+
self->bus_handle = (esp_lcd_spi_bus_handle_t)host;
116117

117118
self->bus_config.sclk_io_num = (int)args[ARG_sclk].u_int;
118119
self->bus_config.mosi_io_num = (int)args[ARG_mosi].u_int;
@@ -125,6 +126,13 @@ STATIC mp_obj_t mp_lcd_spi_bus_make_new(const mp_obj_type_t *type, size_t n_args
125126
self->bus_config.data7_io_num = -1;
126127
self->bus_config.flags = flags;
127128

129+
printf("host=%d\n", self->host);
130+
printf("sclk_io_num=%d\n", self->bus_config.sclk_io_num);
131+
printf("mosi_io_num=%d\n", self->bus_config.mosi_io_num);
132+
printf("miso_io_num=%d\n", self->bus_config.miso_io_num);
133+
printf("quadwp_io_num=%d\n", self->bus_config.quadwp_io_num);
134+
printf("quadhd_io_num=%d\n", self->bus_config.quadhd_io_num);
135+
128136
self->panel_io_config.cs_gpio_num = (int)args[ARG_cs].u_int;
129137
self->panel_io_config.dc_gpio_num = (int)args[ARG_dc].u_int;
130138
self->panel_io_config.spi_mode = (int)args[ARG_spi_mode].u_int;
@@ -143,6 +151,17 @@ STATIC mp_obj_t mp_lcd_spi_bus_make_new(const mp_obj_type_t *type, size_t n_args
143151
self->panel_io_handle.init = &spi_init;
144152
self->panel_io_handle.get_lane_count = &spi_get_lane_count;
145153

154+
printf("cs_gpio_num=%d\n", self->panel_io_config.cs_gpio_num);
155+
printf("dc_gpio_num=%d\n", self->panel_io_config.dc_gpio_num);
156+
printf("spi_mode=%d\n", self->panel_io_config.spi_mode);
157+
printf("pclk_hz=%d\n", self->panel_io_config.pclk_hz);
158+
printf("lcd_cmd_bits=%d\n", self->panel_io_config.lcd_cmd_bits);
159+
printf("lcd_param_bits=%d\n", self->panel_io_config.lcd_param_bits);
160+
printf("dc_low_on_data=%d\n", self->panel_io_config.flags.dc_low_on_data);
161+
printf("sio_mode=%d\n", self->panel_io_config.flags.sio_mode);
162+
printf("lsb_first=%d\n", self->panel_io_config.flags.lsb_first);
163+
printf("cs_high_active=%d\n", self->panel_io_config.flags.cs_high_active);
164+
146165
return MP_OBJ_FROM_PTR(self);
147166
}
148167

@@ -173,14 +192,19 @@ mp_lcd_err_t spi_init(mp_obj_t obj, uint16_t width, uint16_t height, uint8_t bpp
173192
} else {
174193
self->rgb565_byte_swap = false;
175194
}
195+
printf("rgb565_byte_swap=%d\n", self->rgb565_byte_swap);
196+
176197

177198
if (self->buffer_flags & MALLOC_CAP_DMA) {
178199
self->bus_config.max_transfer_sz = buffer_size;
179200
} else {
180201
self->bus_config.max_transfer_sz = SOC_SPI_MAXIMUM_BUFFER_SIZE;
181202
}
203+
printf("max_transfer_sz=%d\n", self->bus_config.max_transfer_sz);
182204

183205
self->panel_io_config.trans_queue_depth = 10;
206+
printf("trans_queue_depth=%d\n", self->panel_io_config.trans_queue_depth);
207+
184208

185209
#if CONFIG_IDF_TARGET_ESP32
186210
int dma_chan = SPI_DMA_DISABLED;
@@ -193,12 +217,15 @@ mp_lcd_err_t spi_init(mp_obj_t obj, uint16_t width, uint16_t height, uint8_t bpp
193217
#else
194218
int dma_chan = SPI_DMA_CH_AUTO;
195219
#endif
220+
221+
printf("dma_chan=%d\n", dma_chan);
222+
196223
mp_lcd_err_t ret = spi_bus_initialize(self->host, &self->bus_config, dma_chan);
197224
if (ret != ESP_OK && ret != ESP_ERR_INVALID_STATE) {
198225
mp_raise_msg_varg(&mp_type_ValueError, MP_ERROR_TEXT("%d(spi_bus_initialize)"), ret);
199226
}
200227

201-
ret = esp_lcd_new_panel_io_spi((esp_lcd_spi_bus_handle_t)self->host, &self->panel_io_config, &self->panel_io_handle.panel_io);
228+
ret = esp_lcd_new_panel_io_spi(self->bus_handle, &self->panel_io_config, &self->panel_io_handle.panel_io);
202229
if (ret != ESP_OK) {
203230
mp_raise_msg_varg(&mp_type_ValueError, MP_ERROR_TEXT("%d(esp_lcd_new_panel_io_spi)"), ret);
204231
}

0 commit comments

Comments
 (0)