I would like to print to thermal receipt and label printers through the web (PWA) on Android devices.
In this page you can see some example code:
https://github.com/WebBluetoothCG/demos/blob/gh-pages/bluetooth-printer/index.html
Is it possible to print to "any" bluetooth enabled thermal printer or is there some process to determine which bluetooth receipt and label printers are compatible.
My worry is that some printers will only work with provided sdk's that are only written for java/objective-c/swift.
Unfortunately from what I have seen it takes a bit of investigation into an individual model of thermal printer to figure out whether it supports Bluetooth LE (as opposed to Bluetooth Classic) and to learn what dialect of printer control language it speaks (ESC/POS, ZPL, etc.). I recommend asking the manufacturer for detailed documentation (in case you have to build your own library) and letting them know that you are looking for something you can interface with using Web Bluetooth. If enough customers ask for it maybe they'll start advertising compatibility and even produce SDKs.
Related
Currently, I can search my printer with Bonjour/SNMP protocol by
NSNetServiceBrowser
NSNetService
Now I want to print my document by IPP protocol.
Could you please tell me way to print with IPP in iOS?
Usually iOS Apps don't care about the printer protocol. It's sufficient to use Apples AirPrint focused Print-API. I can't see how UIPrinter would expose details like IPP connections through the API.
If you don't want to use Apples API for printing, you should implement IPP. A good start could be to look at my simple print-job implementation written in java. I'd be happy to assist in porting this to Swift of Objectiv C.
Actually iOS applications doesn't bothered about printing protocols.We can print images and other documents using apples AirPrint. The steps for printing from iOS device described below.
1.Connect our device and printer in the same network.
2.select an image/document for printing.
3.select the printer from network.
4.Give print
We can give print from gallery,chrome etc and other printing applications.In android we need print plugins for printing(eg:Mopria, a universal print plugin).
But in iOS we don't need the support of any plugins, i think.
I currently have a need to disable the bluetooth security on a Bixolon SRP-350IIObe thermal printer. The pairing process of having to type in the pin to connect to the printer isn't a positive thing for my use case of this printer. The printer is currently in iOS only mode, using MFI.
According to bixolon's documentation it should be possible as bixolon states the following
3-4 Register this Printer form the search results.
- If a security setting is enabled, register after entering the PIN Code.
(PIN Code=Pass Key: password of the Bluetooth device, Default code: 0000)
Source:
http://www.bixolonusa.com/upload/download/srp-350iiobe_bluetooth%20connection%20manual_english_rev_1_00.pdf
I have been searching out the information through the bixolon site's documents, but have yet to find any information on how to achieve this.
Any help or ideas on a resolution would be appreciated.
Edit:
In light of receiving downvotes with no justification as to why I feel that perhaps I should include more of a reason as to the need to disable the security setting on my own SRP350. I plan to have many of these printers and I won't be doing the pairing work on them so it will be easier to just tell someone how to pair without the passcode issue. I am writing against the bixolon api and the pairing process will be done by non tech oriented people at offsite locations between the printer and iOS devices.
Thank you.
After more digging it would appear the utility to achieve the bluetooth settings and pin code changes is called Unified POS Utility. The disc is included with the printer and the utility will run on a windows machine. After connecting to the printer you can go to the VMSM (Virtual Memory Setting Manager) and then bluetooth settings. It is in this menu you can edit the pin code and even disable the need for a security layer during the pairing process.
The download for the utility is found here > http://www.bixolonusa.com/html/en/download/download_product.xhtml?prod_id=82
I am looking at connecting a thermal receipt printer to Google Open Print, is this possible? and if so are you aware of any thermal printers that I can purchase?
The reason for the above is that I have a takeaway shop with an online store. When an order is placed the order then gets printed on an A4 Injet printer. This is wasting me lots of paper and ink, Ideally I'd like it do be done with a thermal printer. I know the website can work with this I just need to make sure I can get a thermal printer to work with Google Open print.
In the end I used the Espon TM88V Receipt printer. Once it was installed on a computer and working any printer can be added to Google Print. Please know that the printer I choose was a nightmare to get a driver for an up to date OS such as Windows 7 & 8. This printer was only supported for XP from my research but after trying all drivers for old OS's it worked. There are now drivers being made by others to support newer OS's.
There are a lot thermal receipt printers available in the market. EPSON is provides standard reciept pritners which are very good.
You can opt for TMT88 series which are pretty good.
But not sure about the google open print.
My objective is simple: Read the data from a barcode scanner.
I know that there's an option for scanning the barcode using camera, but in my experience the results are not very accurate in less than ideal situation i.e. bad lighting. So, I'm exploring if an external device can be easily connected with the iPhone/iPad and which can provide the barcode data just like an external keyboard.
So, can I read the barcode, which is scanned using an external device? If so, can I do it without writing any code, or will I have to specifically add some kind of support in my application?
Answer
Any iOS compatible Bluetooth scanner that supports HID mode. For instance, any Socket CHS. Once connected, it will behave exactly as you said "just like an external keyboard".
HID vs SDK
HID: Using any scanner as a keyboard, you are limited to inputting scanned data into open input fields where the user can modify the scanned data and there are limited options for post-processing and validation.
Because the scanner appears to iOS as a keyboard, iOS hides the onscreen keyboard - which makes sense... if the scanner were an actual keyboard. Some scanners (incl. Socket CHS 7Ci & 7Xi) provide a mechanism to force the keyboard (On our CHS double-click the power button) or the app can force the keyboard (see: related stackoverflow questions)
SDK: Developing an app using the SDK provides a more robust setup and handles more complex use cases: Scan into the application even if an input field is not active, enforce a particular scan order (Scan a UPC followed by a VIN number, not vice versa), or parse the scanned data (Breaking a timedate stamp into year, month, day, time).
Conclusion: Personally, I'd use HID mode as a quick and dirty way to get started, but would switch to the SDK for the final product. Obviously, it depends on how much control you need/want.
Disclaimer: I work for Socket Mobile
You can download the demo from the link
http://www.datecs.bg/en/products/Linea-Pro-iPhone-SDK/8/102
Just run LineaDemo after unzip it. It's scanning using Linea Pro Scanner[External device]
We've got a self-built mobile device which can transfer data via Bluetooth SPP to a PC. On the market there are numerous devices acting as mobile printers via Bluetooth. Some of them use a custom ASCII-based printing language, e.g. the label printers from Zebra.
So there is the idea of printing via SPP from our device.
Sadly there is not too much usable information on the internet on this special topic.
Can you recommend any printer (at least A4) capable of printing via Bluetooth SPP with publicly available protocol specs?
Or do you have any hints where to start?
Bluetooth printers typically use profiles other than SPP. There are several flavors, some printers will support a variety of them:
1) BPP - Basic Print Profile can send simple text-based data, no need for printer-specific drivers
2) HCRP - Hard Copy Cable Replacement Profile is used to send the same data format as you would over a wire, typically requires printer-specific drivers to format the data.
3) BIP - Basic Imaging Profile allows transfer of photos, etc.
4) OPP - Object Push Profile is also sometimes used to transfer files
So in general, you are not going to be able to just use SPP to talk to a normal printer, although these other profiles may sit on top of SPP.