This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DLP2000: pattern_display gets "Float point exception" with an 24-bit RGB input image

Part Number: DLP2000

Host: BeagleBone Black with Debian 9 image.

Thanks for some answers in this forum to cope with GNU C compiler change, I get the pattern_display compiled and running fine with -t (test pattern) option.

However, if I tried to use a 640x360 24-bit RGB image (vertical_variable.bmp) as the input pattern and tried

./pattern_disp vertical_variable.bmp 1 3

then I got "Float point exception".  I have searched code in the "structured_light" folder and did not find any error handling producing this phrase, so I guessed that it may be beyond this code causing issue?  However, the DLP2000EVM seems to behave normal with other testing code in /opt/scripts/device/bone/capes/DLPDLCR2000/  (such as MPlayer demo code, etc.)

I'd appreciate some help to move forward.  Thanks!

Puck

  • Hello Puck,

    Welcome to the E2E forum. Thank you for your business!

    We do not own the pattern_display repository linked above so the repo-specific support we can provide is limited. 

    However, have you encountered the 'float point exception' error using any other Debian images? We recommend an eMMC IoT Flasher image such as this one. Are you seeing this error when attempting to use any other .bmp patterns? 

    Best,

    Maxine

  • Thanks for the reply.  I have used a Debian 11 image.  But that specific one does not even have Python, so I cannot even setup the python code in 

    dlp_lightcrafter-1.0.19.tar.gz
    So I swap back to that Debian 9 image that was working (until I tried my own image and met the Float point exception).
    I would like to make sure that the input image size
    1) has to have exact pixel counts as the DMD (640x360), and
    2) need to be 24-bit RGB (8-bit for each color)
    If there is any other known reason for the Float point exception, I would appreciate your pointing out.

    And I'll try that new Debian image (12.2). Since the DLP2000EVM manual so ancient (2017) that it still encourage user to use Jesse, so I was hesitate to try the most recent distribution.


  • I solved the issue.  This code is wisely excluded in the official TI's release (I bumped into it accidentally in github).  It is not supported by TI (but has TI's credit and disclaimer in the header).  It takes time to read the code and find the poorly documented usage.  But it is certain a good starting point to push the users write their own codes, and that was a success.

    BTW, the 12.2 images in the previous post does not boot BBB properly.  Maybe even more issue than it is expected.

  • Hello Puck,

    Thank you very much for the information. We are glad you found success using Debian 11 and we will update our documentation accordingly. 

    Best,

    Maxine

  • No, the issue was not solved by Debian 11.  Actually, it has nothing to do with the Debian version.
    I found the solution by looking into the c code.  The argument logic is not perfect, (and there is no comments on how input image should be arranged), so one has to work around the issue to avoid the ambiguous error message.

    So the solution is:  look into the c code.  (Hence the praise for this effort of pushing users to do their homework first)

  • Hello Puck,

    Apologies for the misunderstanding; we appreciate the clarification. Just be certain, you mean the C code found in the pattern_display repository?

    Best,

    Maxine

  • Yes, the "structured_light" folder.  If someone take a few hours to furnish up the document/in-code comments, it may be used as TI's official support.  It is quite helpful for the future users planning to use DMD as illumination (not display) source.