Extension for ESC/POS bluetooth thermal printers + Quick Sort + Object Manager


#1

Dear inventors,
I want to introduce some new extensions:

ESC/POS Simple Converter

The ESC/POS Simple Converter enables to send formatted text, images, bar codes and QR codes from App Inventor to a bluetooth thermal printer without the need of having knowledge in ESC/POS programming.

This extension simplifies the communication with Bluetooth thermal printers and makes possible to create awesome apps that are able to print tickets, invoices or receipts. The converter provides blocks for basic ESC/POS commands (Epson Standard Code for Point Of Sale). To send your data to the printer, just combine one block from the extension with a SendBytes block from the BluetoothClient component. The ESC/POS Simple Converter returns the byte sequence your ESC/POS printer expects.

For example, you can print images from the assets, the SD card or the web. Just provide the name or the URL of the image. You can also take a photo with your camera and directly send it to your printer. A dithering algorithm is applied to create the illusion of a grayscale instead of monochrome black. The blocks for printing images, text and QR codes can be utilized with various options but also with reasonable default values.

Quick Sort

The Quick Sort extension provides a fast sorting algorithm for vast lists of numbers or text. You can easily sort interrelated lists and lists of lists.

Object Manager

The Object Manager offers a convenient way of structuring and handling data as objects with attributes.

Entities of the real world can be modeled as objects with attributes. For example, a person can have the attributes name, age and hobbies. Unforunately, app inventor doesn’t provide a convenient way to encapsulate your data representing objects. Data in app inventor is usually structured in form of lists. Handling those lists or lists of lists can often be very confusing and tedious.

The Object Manager enables to define attributes and handle your data in form of objects containing attribute values. Think of the Object Manager as a local and temporal database, where you can store, query and retrieve your entities and their attributes. The attributes are named so you can call them by their name in addition to calling them by their index. Attribute values are not restricted, they can be numbers, text, logicals as well as lists. You can use several search methods and select objects or return the attribute values.

Kind regards,
Daniel
– https://appinventordaniel.jimdo.com/


#2

Interesante. Do You have any free extension?


#3

Yes very nice job indeed…:hugs:
However in order to get a mouse you need to give away some cheese @Daniel , don’t you think? :stuck_out_tongue_closed_eyes:

@Taifun bro your index needs these (if you have not already added them) :wink:


#4

already added into the list :wink:
thank you
Taifun


#6

my friend it is not mine for the taking… I just spoke out what many others think …

Monetizing our work is not bad, on the contrary! But this place is also for knowledge sharing.
So I believe that all developers or in any way community contributors should have two types of work offered.
A free part (for advertising purposes & a way to say thanks to the supporters and/or future buyers)
and of course a paid part that will give the resources to continue.

However I am going a little off topic so I stop here…

I will test the apk and I will feed you back if I have anything interesting to say…
Have a nice day mate!


#7

is there any reference how to convert images or logos to esc/pos because I really do not understand.

or you can please make a free extension to convert images to esc/pos.
Please help me sir


#8

A extensão parece ser incríve! Mas é uma pena que 20 dólares eja muito caro aqui para o Brasil, pagar quase 70 reais é bem caro pra cá :frowning: :frowning:


#9

The Link to Daniel K’s extension is not working…can anyone help in getting me ECS/POS converter


#10

Sorry, my website is currently down, but you can send me a private message!


#11

I am very new to Thunkable and app making, so please forgive me if I ask wrong questions…
Can u tell me if this extension will work with any Bluetooth printer or a specific Bluetooth printer brand


#12

It works with any bluetooth receipt printer that supports the ESC/POS protocol. I also have a solution for ESC/P label printers.


#13

I want to test with a thermal printer I have now, will you send me the sample app for testing?


#14

Does this extension support Japanese Kanji?

Are you planning to develop the extansion with WiFi or USB communication specification?


#15

If you have a printer that supports Japanese Kanji, then it will be possible. Just set the number of the Japanese codepage according to your printer manual and choose an appropriate Java encoding. See the example for Arabic on my website!

The extension is not tied to bluetooth, it simply converts your input into an ESC/POS command sequence and uses the bluetooth functionality of App Inventor to send it to the printer. (That’s why you always use my ESC/POS Simple Converter blocks together with the Bluetooth Client blocks.) If you find a possibility to establish a WiFi or USB connection between App Inventor and an ESC/POS printer, the extension may work for you.


#16

Thank you for your reply.
As I develop POS system from now on, I may ask you a lot again. I look forward to working with you.


#17

Tem um apk de teste para que eu possa baixar e testar na minha impressora?Pois caso funcione eu tenho interesse em adquirir.


#18

Thank you for providing this extension.

I would like to confirm this extension.

(1) Is there no any problem with this extension that WiFi or USB will also support this extension?

(2) Is it possible to control a drawer connected via a printer?

(3) Does it supoort to the horizontal printing of the order slip to the kitchen?


#19

(1) I don’t know if this is possible. My extension just provides the conversion of your content into ESC/POS commands. With the built-in bluetooth component of App Inventor you can send it to your printer. If you find a way to establish a connection between your smartphone and the printer via WiFi or USB and if you are able to successfully use that connection to send the output of my extension, please let us know!

(2) Yes, there is a ESC/POS command for controlling the drawer. If your printer supports this command, I could add a block for this functionality.

(3) The ESC/POS Simple Converter extension supports upside down and 90° rotation printing.


#20

Thank you for your reply.

Is it possible to print from one device to two printers?


#21

Yes, this is possible. My extension just creates the message (command) that is sent to the printer. Of course you can send this same message to another printer. You just have to implement the connection between your app and the two printers in your app using the built-in Bluetooth blocks.