Showing results for 
Search instead for 
Did you mean: 

HID host USB for getting barcode from a scanner.

Associate III


I use HID host as USB profile for getting barcode from scanner (ES4650 scanner).

I use STM32F746.

Most of the time I get the right barcode, but sometimes it misses a character .

I tried giving its interrupt the top priority, but it didn't solve the problem.

When trying the same scanner on a PC with a PC software, I always get the right barcode.

What can be the problem ?



Principal III


To check, whether there is a problem with the D-cache (if you have it on) , just switch off (or not enable) the D-cache.

If you feel a post has answered your question, please click "Accept as Solution".

Here is an old thread which you can check:

Here are some barcode reading solutions. Some may become helpful to you.

If you ever try to make an ESPhome based barcode scanner, you can try this:

Associate III

Dear AScha.3 and liaifat85

Thank for your replies.

I solved this bug.

I uncommented all the 6-7 in my main loop and found that one of them caused the bug.

It was a function that read data from sensors (21 same temperature DS18S20 sensors).

Instead of reading all the 21 sensors every iteration I changed to read only one sensor on each iteration.

Those sensors and the USB are connected to the same 5V power supply.

The sensors which have 1-wire interface need a large pull-up so they probably affect somehow on the USB.

Thanks anyway.