Difference between revisions of "Bluetooth Printers"

From SI-Droid Wiki
Jump to: navigation, search
 
(23 intermediate revisions by the same user not shown)
Line 1: Line 1:
SI-Droid Event (not the Lite version) have support for printing split time receipts on Bluetooth printers. The basic feature should work with almost all Bluetooth printers as long as you are only using the standard English alphabet (A-Z, a-z, 0-9) in the names of the runners. Other characters may come out as garbage.
+
SI-Droid Event (not the Lite version) have support for printing split time receipts on Bluetooth printers. The basic feature should work with all Bluetooth printers that supports the Serial Port Profile (SPP) and as long as you are only using the standard English alphabet (A-Z, a-z, 0-9) in the names of the runners. Other characters may come out correct or as garbage, depending on the printer.
  
 
If you want to use other characters (and get them correctly printed), the only printer that I know is working correct is the model that I used during development:
 
If you want to use other characters (and get them correctly printed), the only printer that I know is working correct is the model that I used during development:
[http://www.aliexpress.com/item/NT-5802-58mm-Black-Mini-Portable-Bluetooth-Thermal-Receipt-Printer-for-Comercial-POS-System/32230630572.html NT-5802 Bluetooth Printer]
+
[http://www.aliexpress.com/item/NT-5802-58mm-Black-Mini-Portable-Bluetooth-Thermal-Receipt-Printer-for-Comercial-POS-System/32230630572.html NT-5802 Bluetooth Printer]<br>
 +
I have gotten a report that this Ebay store also sells a very similar printer that is fully working with the app [http://www.ebay.com/itm/371537565147 Bluetooth Printer] (Thanks to Christoffer O).
  
For the above printer, I have added character set mappings for most languages, so it should also be able to print most non-english characters correct.
+
For the above printer, I have added character set mappings for most languages, so it should be able to print most non-english characters correct. See the table below for all character sets known to the app.
  
If you have tested my app with any other Bluetooth printer, I will be very interested in the result. If you can supply me with a list of all the supported code pages (character sets) for the printer, I might also be able to add support for it. Compare the printers code page numbers with the ones in the below table.
+
I have also gotten a report from David N that this very cheap printer (less than 30 GBP) is working with the app (at least for standard English):
 +
[https://www.ebay.co.uk/itm/Handheld-58MM-Wireless-Bluetooth-Thermal-Printer-Receipt-For-Restaurants/401788483666?ssPageName=STRK%3AMEBIDX%3AIT GOOJPRT Thermal Printer]
 +
 
 +
It is also possible to buy SportIdent's new [https://www.sportident.com/products.html#accessories BT-printer] and use it with the app. It has been used and tested to work by multiple users.
 +
 
 +
There exists a lot of other similar printers which might or might not work correct. Try these different searches for examples:
 +
* [http://www.aliexpress.com/w/wholesale-bluetooth-thermal-printer.html BT Printers from AliExpress]
 +
* [http://www.ebay.com/bhp/portable-bluetooth-printer BT Printers from Ebay.com]
 +
* [http://www.dx.com/s/Portable+Bluetooth+Receipt+Printer BT Printers from DealExtreme.com]
 +
* [https://star-emea.com/products/sm-l200 A quality rugged 2" BT Printer (but more expensive)]
 +
 
 +
If you have tested my app with any other Bluetooth printer, I will be very interested in the result. If you can supply me with a list of all the supported code pages (character sets) for the printer, I might also be able to add support for it. Compare the printers code page numbers with the ones in the table below.
  
 
==Supported character sets==
 
==Supported character sets==
The table below lists the character sets that SI-Driod knows about and have a known code page for in the printer.
+
The table below lists the character sets that SI-Driod knows about.
 +
 
 +
Different printer manufacturer are then assigning their own code page numbers to these character sets. In the app there are three different types of printers (or actually mapping tables from a character set to a code page number) to choose from.
 +
* Printer type 1 (ESC/POS, e.g. NT-5802 and the [https://www.sportident.com/products.html#accessories SI-Printer])
 +
* Printer type 2 (ESC/POS, e.g. [http://www.rongtatech.com/products-look-27.html RPP02N] and [http://www.cashinotech.com/58mm-portable-mobile-bluetooth-thermal-printer-ptp-ii_p8.html PTP-II])
 +
* Printer type 3 (StarPRNT, e.g. [https://star-emea.com/products/sm-l200 SM-L200]
 +
 
 +
The first 10 character sets are common for both types of printers. If you need to print a character that only exists in one of the later sets, you need to use the correct printer type / mapping table for it to print correctly.
  
 
{| class="wikitable"  
 
{| class="wikitable"  
 
! Character set
 
! Character set
 
! Java name and aliases
 
! Java name and aliases
! Printer code page
+
! CP # in type 1
 +
! CP # in type 2
 
! Comment
 
! Comment
 
|-
 
|-
 
| Nordic
 
| Nordic
| IBM865
+
| [https://en.wikipedia.org/wiki/Code_page_865 IBM865]
 +
| 5
 
| 5
 
| 5
 
|
 
|
 +
|-
 +
| Multilingual
 +
| [https://en.wikipedia.org/wiki/Code_page_850 IBM850]
 +
| 2
 +
| 2
 +
| Also the default code page if nothing else matches
 
|-
 
|-
 
| Portuguese
 
| Portuguese
| IBM860
+
| [https://en.wikipedia.org/wiki/Code_page_860 IBM860]
 +
| 3
 
| 3
 
| 3
 
|
 
|
 
|-
 
|-
 
| Canadian
 
| Canadian
| IBM863
+
| [https://en.wikipedia.org/wiki/Code_page_863 IBM863]
 +
| 4
 
| 4
 
| 4
 
|
 
|
 
|-
 
|-
| Latin-2, C European
+
| East European
| windows-1250
+
| IBM755
| 73
+
| 9
|
+
| 9
|-
+
| Cyrillic
+
| windows-1251
+
| 72
+
 
|
 
|
 
|-
 
|-
 
| West European
 
| West European
| windows-1252
+
| [https://en.wikipedia.org/wiki/Windows-1252 windows-1252]
 +
| 16
 
| 16
 
| 16
 
|
 
|
 
|-
 
|-
| Greek
+
| Latin2
| windows-1253
+
| [https://en.wikipedia.org/wiki/Code_page_852 IBM852]
| 90
+
| 18
 +
| 18
 
|
 
|
 
|-
 
|-
| Turkish
+
| MultiLatin1
| windows-1254
+
| [https://en.wikipedia.org/wiki/Code_page_858 IBM858]
| 91
+
| 19
 +
| 19
 
|
 
|
|-
 
| Israel
 
| windows-1255
 
| 32
 
| R-to-L
 
 
|-
 
|-
 
| Arabic
 
| Arabic
| windows-1256
+
| [https://en.wikipedia.org/wiki/Code_page_864 IBM864]
| 92
+
| 22
 +
| 22
 
| R-to-L
 
| R-to-L
 
|-
 
|-
 
| Baltic
 
| Baltic
| windows-1257
+
| [https://en.wikipedia.org/wiki/Windows-1257 windows-1257]
 +
| 25
 
| 25
 
| 25
 
|
 
|
 
|-
 
|-
| Vietnam
+
| Hebrew
| windows-1258
+
| [https://en.wikipedia.org/wiki/Code_page_862 IBM862]
| 94
+
| 8
|  
+
| 15
 +
| R-to-L
 +
|-
 +
| Israel
 +
| [https://en.wikipedia.org/wiki/Windows-1255 windows-1255]
 +
| 32
 +
| 33
 +
| R-to-L
 +
|-
 +
| Bulgarian
 +
| [https://en.wikipedia.org/wiki/Code_page_855 IBM855]
 +
| 60
 +
| 28
 +
|
 +
|-
 +
| Turkey
 +
| [https://en.wikipedia.org/wiki/Code_page_857 IBM857]
 +
| 61
 +
| 29
 +
|
 +
|-
 +
| Latin-2, C European
 +
| [https://en.wikipedia.org/wiki/Windows-1250 windows-1250]
 +
| 72
 +
| 30
 +
|
 
|-
 
|-
 
| Cyrillic
 
| Cyrillic
| IBM866
+
| [https://en.wikipedia.org/wiki/Windows-1251 windows-1251]
 +
| 73
 +
| 6
 +
|
 +
|-
 +
| Greek
 +
| [https://en.wikipedia.org/wiki/Windows-1253 windows-1253]
 +
| 90
 
| 17
 
| 17
 
|
 
|
 
|-
 
|-
| Latin2
+
| Turkish
| IBM852
+
| [https://en.wikipedia.org/wiki/Windows-1254 windows-1254]
| 18
+
| 91
 +
| -
 
|
 
|
 
|-
 
|-
 
| Arabic
 
| Arabic
| IBM864
+
| [https://en.wikipedia.org/wiki/Windows-1256 windows-1256]
| 22
+
| 92
 +
| -
 
| R-to-L
 
| R-to-L
 
|-
 
|-
| Hebrew
+
| Vietnam
| IBM862
+
| [https://en.wikipedia.org/wiki/Windows-1258 windows-1258]
| 31
+
| 94
| R-to-L
+
| -
 +
|
 
|-
 
|-
| Bulgarian
+
| Cyrillic
| IBM855
+
| [https://en.wikipedia.org/wiki/Code_page_866 IBM866]
| 60
+
| -
 +
| 7
 
|
 
|
 
|-
 
|-
| Turkey
+
| West Europe
| IBM857
+
| [https://en.wikipedia.org/wiki/ISO/IEC_8859-1 ISO-8859-1]
| 61
+
| -
 +
| 23
 +
|
 +
|-
 +
| Thai
 +
| [https://en.wikipedia.org/wiki/Thai_Industrial_Standard_620-2533 IBM-Thai]
 +
| -
 +
| 26
 
|
 
|
 
|-
 
|-
| Multilingual
+
| Arabic
| ISO-8859-1
+
| [https://en.wikipedia.org/wiki/Code_page_720 x-IBM720]
| 2
+
| -
| Default char set if nothing else matches
+
| 27
 +
| R-to-L
 +
|-
 +
| CP775
 +
| [https://en.wikipedia.org/wiki/Code_page_775 IBM775]
 +
| -
 +
| 31
 +
|  
 
|}
 
|}

Latest revision as of 17:24, 12 January 2021

SI-Droid Event (not the Lite version) have support for printing split time receipts on Bluetooth printers. The basic feature should work with all Bluetooth printers that supports the Serial Port Profile (SPP) and as long as you are only using the standard English alphabet (A-Z, a-z, 0-9) in the names of the runners. Other characters may come out correct or as garbage, depending on the printer.

If you want to use other characters (and get them correctly printed), the only printer that I know is working correct is the model that I used during development: NT-5802 Bluetooth Printer
I have gotten a report that this Ebay store also sells a very similar printer that is fully working with the app Bluetooth Printer (Thanks to Christoffer O).

For the above printer, I have added character set mappings for most languages, so it should be able to print most non-english characters correct. See the table below for all character sets known to the app.

I have also gotten a report from David N that this very cheap printer (less than 30 GBP) is working with the app (at least for standard English): GOOJPRT Thermal Printer

It is also possible to buy SportIdent's new BT-printer and use it with the app. It has been used and tested to work by multiple users.

There exists a lot of other similar printers which might or might not work correct. Try these different searches for examples:

If you have tested my app with any other Bluetooth printer, I will be very interested in the result. If you can supply me with a list of all the supported code pages (character sets) for the printer, I might also be able to add support for it. Compare the printers code page numbers with the ones in the table below.

Supported character sets

The table below lists the character sets that SI-Driod knows about.

Different printer manufacturer are then assigning their own code page numbers to these character sets. In the app there are three different types of printers (or actually mapping tables from a character set to a code page number) to choose from.

  • Printer type 1 (ESC/POS, e.g. NT-5802 and the SI-Printer)
  • Printer type 2 (ESC/POS, e.g. RPP02N and PTP-II)
  • Printer type 3 (StarPRNT, e.g. SM-L200

The first 10 character sets are common for both types of printers. If you need to print a character that only exists in one of the later sets, you need to use the correct printer type / mapping table for it to print correctly.

Character set Java name and aliases CP # in type 1 CP # in type 2 Comment
Nordic IBM865 5 5
Multilingual IBM850 2 2 Also the default code page if nothing else matches
Portuguese IBM860 3 3
Canadian IBM863 4 4
East European IBM755 9 9
West European windows-1252 16 16
Latin2 IBM852 18 18
MultiLatin1 IBM858 19 19
Arabic IBM864 22 22 R-to-L
Baltic windows-1257 25 25
Hebrew IBM862 8 15 R-to-L
Israel windows-1255 32 33 R-to-L
Bulgarian IBM855 60 28
Turkey IBM857 61 29
Latin-2, C European windows-1250 72 30
Cyrillic windows-1251 73 6
Greek windows-1253 90 17
Turkish windows-1254 91 -
Arabic windows-1256 92 - R-to-L
Vietnam windows-1258 94 -
Cyrillic IBM866 - 7
West Europe ISO-8859-1 - 23
Thai IBM-Thai - 26
Arabic x-IBM720 - 27 R-to-L
CP775 IBM775 - 31