Control what services are published by Avahi? - ios

I've configured a print server on Raspbian (Jessie) using CUPS, SAMBA and Avahi to publish a USB printer to iOS devices. It works fine except when it comes time to actually print, the printer isn't found. (even after selecting the printer in the Printer Options dialog in iOS.)
I believe this is either related to 1) multiple services with the same name being published by Avahi 2) some kind of timeout between printer selection and printing or 3) the address of the printer changing somehow at each access.
In order to explore the first problem, I'd like to try to disable all but the _ipp._tcp. service for the printer. (simply by sharing a printer in CUPS, I get a Printer#Server over _ipp._tcp., _ipps._tcp. and _printer._tcp.)

Related

Touch events via HDMI

I need touch capable LCD panel that I need to connect to some sort of external computer. Panel itself does not contain any embedded computer, so no OS will run on it that could process touch events. Panel will be connected to external computer similar to Intel NUC via HDMI.
My question: Would I be able to handle touch events send from panel via HDMI without much trouble (special drivers, configuration etc.)?
External computer will have some flavor of Linux installed, which one is yet to be decided.
Touch events are similar to mouse events so I think X.org server would handle them transparently, or with some minor configuration.
I have seen it working with USB but not with HDMI.
There are USB ports on panel, but im not sure if it will transfer touch event through them when connected.
Note: I don't have panel yet, so can't just plug it in and try.
Panel will be something akin tho this (but not exactly) https://www.alibaba.com/product-detail/Wall-Mounted-LCD-Touch-Screen-Advertising_60650200010.html?spm=a2700.7724838.2017115.235.50af4611aIelfv&s=p

Use USB printer over TCP/IP

I have an application that sends ZPL print jobs via TCP/IP to a client in the network (I can configure IP and Port). I have only a USB printer available that is attached to a client. How can I send print job to the client with the USB printer, and let this client print the job with the USB printer?
Sending to the client is not the problem, I just configure the IP and some Port. But how can the client print this via the USB printer?
There are a couple of methods to do this. They all require a app on the system that the USB printer is attached to. You can send the ZPL to a generic raw driver. You can also use an SDK to send the ZPL to the USB printer. If it's a Zebra printer, we have a Java and a .NET based SDK that can do this. For a complete answer, it would be really helpful if you mentioned the platform/OS the printers will be connected to and the language the 'client' app will be written in.

How does an OS communicate with device drivers

I know that an OS provides an api for a device driver to access the configuration space so that the device driver knows the memory addresses assigned to the device and can control the device. However, my question is how does an OS communicate with device drivers? For example, let's say the OS wants a document to be printed. How does it tell that it wants a document to be printed to the printers device driver and provide the driver with the text to print? Device drivers are developed by different developers, so wouldn't the drivers expect different types or formats of data from an OS. For example, printer A's driver may expect the command byte before the text data but printer B's driver may expect the text data before the command byte.

Printing from iOS Application using CUPS

Has anyone tried printing using CUPS from iOS/Objective-C application?
I have an iOS application that is printing on 1 POS printer from multiple devices and when printer is busy, I am having issues. I am thinking I can build a print server in Linux using CUPS and send print request from all iOS devices to a common print server.
Any ideas/suggestions on the approach? I have setup EPSON T88v Printer on Linux Box and CUPS is working fine. Now from iOS will it be AirPrint or some other way to send request to the CUPS printer.
It depends on if the POS system is using the IOS printing api or it is sending directly to a printer over a tcp connection.
If it is using the IOS Printing API you can print to it from the app.
You can print from an iPad to a cups printer directly. The cups printer has to be discoverable and shared on the network (cups configuration). To verify that your cups printer is functioning correctly I would try to print from notes on the iPad to the newly created printer. If that is functioning than you can try the POS system. I would guess that the POS system is printing directly to the printer through a tcp connection using the proprietary esc/pos language in which case you will not be able to redirect it to a cups printer.

RDP Disconnects when checking Printers option

When I RDP into my Azure VM it quickly disconnects when I select Local Resources and the checkbox for Printers. Therefore I can't get printing pass through to work. I can RDP fine without checking the printers box. Looking for assistance in troubleshooting as I'm out of ideas.
OS: Win Pro 8.1
Printers: Dell 3100cn, Dell 1600
Installed printer drivers on remote VM
If I turn off the print spooler on the VM and check the printers on the RDP connection it won't kick me out. I can turn print spooler back on and it won't disconnect but I don't have access to my local printers when connecting this way.
It might mean that you don't have suitable printer drivers on server. However there are third-party software that enables you printer redirection over RDP such as tsprint.

Resources