app for creating logos on 20x4 display

Hello guys, I’m developing a project and I would need logos to appear on the display, is there any software that converts an image logo to the code in binary? I even found the app “LCDv1.0.jar” but I have to manually make a group of 40 pixels at a time. I will leave an example image below.

sorry my english … (google translator)

Probably will not work in practice as you can only have eight custom (bitmap) characters defined at any one time on the HD44780-based display. While two of the characters in that image are in the standard character set, I am pretty sure there are more than eight that are not and would thus require a "custom" character.

You have to figure out how to limit the logo you wish to display, to the available characters. :astonished:

Thanks for the answer, yes I know that the standard is byte [8], what I was looking for was a way to assemble the sequence automatically, without having to assemble one by one on sites like LCD Custom Character Generator good if I don't find anything I will create an app for this purpose.

The logo you have shown is 14x4 characters or 70x32 pixels.

Are you understanding that the logo you have shown can not be displayed as a static image?
Maybe you could animate it but only show small portion of it at time.

The hd44780 only supports a total of 8 custom characters.
You can only have and display 8 custom characters, this limits you to a smaller graphic area.
2x4 or 4x2 characters, which is 10x32 or 32x10 pixels.

--- bill

Guys I think I didn't know how to explain correctly, what I wanted to find is a way to convert an image or an app that would create the lines automatically without having to create a 40-pixel block at a time, I'll post an example of the code based on the image that I posted above, supposing that I would do the logo, I would start with the first block, second and third in "white" starting from the fourth block, I would start "painting" the pixels and so until the block 19/3, see that in the lines that I did I would already be building the logo of block 0/0 until 6/0 but I would have to do all of them until the last one.

byte char00[8] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
byte char10[8] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
byte char20[8] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
byte char30[8] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07};
byte char40[8] = { 0x00, 0x00, 0x03, 0x0F, 0x1F, 0x1F, 0x1F, 0x1F};
byte char50[8] = { 0x07, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1C, 0x10};
byte char60[8] = { 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x00, 0x00};

a) you only can define 8 special characters at the same time.
b) if you "paint" your special character in binary, you don't need an App.

instead of

byte char50[8] = { 0x07, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1C, 0x10};

write:

byte char50[] = {0b00000111, 
                 0b00011111, 
                 0b00011111, 
                 0b00011111,             
                 0b00011111,              
                 0b00011111, 
                 0b00011100, 
                 0b00010000};

and you can see the result.

Thank you guys, I've been programming a few years in some languages, but I'm a beginner in the Arduino world.

I think I understand what you are wanting to do but it is not possible.
It sounds like are you assuming you can create custom characters to create a 70x32 bitmap.
The bitmap you have shown in your first post would need 56 custom characters.
That is not possible.

The hd44780 only supports 8 custom characters so when using it for a bitmap, you are limited to the number of pixels in 8 characters. A total of 320 pixels.
You cannot create a bitmap the size that you have shown in the first post using custom characters.
The largest bit map you can do with custom characters is 10x32 or 20x16

I am assuming you are not understanding how the hd44780 and its custom characters work.
Each custom character is a code point 0-7
If you redefine the custom character for a code point all character positions on the display contained that code point would simultaneously change.

The only way to attempt to “draw” a bitmap as large as you want would be to display only a portion of it at a time.
You could show 2 of your 14 columns at a time.
I’m not sure that user would be able to visualize it at it would be very dim with lots of flicker since only 1/7 of the bitmap can be displayed a time.

— bill

bperrybap at first it was what I imagined, but with the clarification of the forum people I understood how hd44780 works, but I changed a little what I had in mind and it turned out that it worked. in the future i will change the project to a tft lcd display, for now i can continue the project. thank you all!