So looking into this, the problem is that the AXS15231 requires partial writes to be on 8 pixel boundaries, so it has a draw_rounding preset of 8. If you are using LVGL you might be able to set draw_rounding to 4 in the display config but 8 in the LVGL config (I have not tested that.)
If you’re using the native drawing functions you should stick with 176 and just avoid drawing in the off-screen area.
yeah im using native drawing, a shame that is the workaround when it worked with qspi, but i will try to adapt to it, just have to make seperate dimensions for display and drawing routines thanks for looking into it
i use same drawing logic for many displays and though i could fix it with a offset to this display, but that complains too about not being devideable by 8
problem is that it starts drawring at 0,0, where to avoid cropping it should start at 0,4 and only way i can do that without affecting other displays using same drawing yaml is to make a new substitution like “draw_offset” and set it to 4 for this display., 0 for all others displays and calculate that in all the drawing i do…
if you have a better suggestion i would be happy to hear it
You can set draw_rounding to 4 which will allow the dimensions and offsets to be divisible by 4. You will probably also need to set auto_clear_enabled to ensure full screen updates because previous tests with the AXS15231 showed it will not do partial updates except on 8 pixel boundaries.
draw_rounding: 4 doesn’t seem to change anything, still get compile error:
Dimensions and offsets must be divisible by 8.
no matter if i use original size and no offset:
no with qspi it works perfect with the real dimesion settings and no offset, all is good. it’s when i add offset and use 176 instead of 172 i get the extra line of garbage as expected. only testet that since you asked how offset worked with original driver, it’s not needed with qspi.
problem is if qspi is being removed and it isn’t working with mipi
Interestingly, testing this on a JC3248W535 it works fine. The original AXS15231 board that was tested required draw_rounding of 8, but maybe that is not fundamental to the chip, just that particular board.
The mipi_spi driver also needs tweaking so that setting draw_rounding overrides the default for the dimensions check but the custom model will get you going for now.
The init sequence is fine, it’s the same as what you have been using with the axs15231 model. Try without rotation first up, and use show_test_card: true with an update interval other than never.