Connecting USB printer on Windows CE device - windows-ce

I have connected the USB printer for windows xp and windows 7 without printer driver, It connects properly, by using the win32 API we can open port and communicate with it.
Que- Now I wanted to connect USB printer to Win CE device, Win CE device gives error of install the Printer driver.
How I can handle the this to connect the printer and to communicate with it.
How windows dll will work on win CE.?

If the printer's usb support is a simple printer class, Microsoft's parallel cable replacement driver should work fine 'usbprn.dll'. This driver will instantiate a stream driver 'LPT1:' or 'LPTn:' which you can open with CreateFile() and use WriteFile() to send data to the printer.
You can get access to the simulated parallel states (paperout, etc) via simple IOCTL calls.
Some label printers (Zebra/Cognitive/etc) have their own proprietary control languages which you will need to get technical documentation for.
For other printers you have PCL or reverse engineer using open-source code.
Which specific printer are you trying to get working?

You cannot use the desktop driver in CE - you need a driver built specifically for CE.
First, try adding the USB PCL Printer driver from the Platform Builder catalog to your CE OS image and see if that works. It works on a fair number of printers.
If it doesn't work, then see if the printer OEM has a Windows CE specific driver.

You have to get a portable printer for it to work.Windows ce
is very limited on programs and usb drivers.What I think is that
it isn't worth buying a portable printer for the devie.What I
say that you wipe out the hard drive and install Win.xp.

Related

Windows CE HP iPAQ - USB Stick

Hi all Windows CE developer,
is there an option that a Windows CE device (HP iPAQ) acts as a "normal" USB-drive if it will connected to PC. In this case I have an linux (embedded) device and I have to copy some files from iPAQ every few seconds.
I can not change or recompile any CE Firmware from this devices. The best would be a program to get the USB-drive possibility.
I tryed an CE-ftp server but it did not work because of the "RNDIS" stuff - TCP/IP is missing.
The ActiveSync did not work with linux. I only could get an usb-ethernet connection with RNDIS but without the communication library it makes no sense. "Synce" did not work as well some derivates.
thanks
regards
ferdl

Controlling a driverless USB Audio Device

I have a USB audio device (Scarlett Focusrite 18i6) which does not require a driver, so I assume it uses the USB HID Audio Class standard.
It works on everything from Windows and Mac to Linux and iOS.
But on Mac and Windows, it has a control application which can for instance enable and disable direct monitoring.
How would I go about reverse-engineering how this is done, so that I can reproduce it on platforms where the control application does not exist?
I'm thinking of booting up Windows in a VMWare session and then logging the USB communication (somehow?) while using the control application, but it does sound tedious considering the amount of data and my very limited understanding of USB.
Any other suggestions?
You could try running the control application using Wine instead of reverse engineering it. However, if it's accessing USB devices then there is a good chance it might be using an API not supported by Wine.
To reverse engineer it, you should find a way to look at the USB traffic between the computer and the device. Total Phase has some hardware USB protocol analyzers, but you might be able to find a good software solution for free.

How to use TI Sensortag on Windows Desktop with USB 4.0 BLE Dongle

I have an Asus USB-BT400 Bluetooth Dongle, it works with BLE devices. I also have an TI Sensortag, i installed the drivers and software and I can connect my PC to the sensortag (using windows 7 or windows 8.1 in VM, both works).
Windows doesn't find drivers for the sensors (I think 8 in total) so I would like to know how I can communicate to them. I already exposed a COM port for the bluetooth device (that's possible via Bluetooth settings). I tried the BLE device monitor, where the COM port shows up, but it gives an error (no response from BLE host at port COM3). I also tried the windows Desktop app (win8), which doesn't work either.
I would be glad for any solutions, resources and hints which do not require me to buy the Dongle from TI website for ~50$.
Thank you!
I don't believe it works under anything less than Win 8.1 as the OS must have the BLE Profile drivers.
Running VM is not going to help, as you need those drivers at the base OS level.

Wince Device Driver

I am trying to connect my POS Terminal(WinCE Secure Multi-Application Operating System,200 MHz ARM 920T 32 bit CPU) to my windows 7 PC. The issue is i am getting a device driver software issue and the device is not been recognized. I didn't got any installation CD or software with the product.I couldn't find a suitable driver for the same in the web and would need to install the CAB files through WMDC into the device so that i can automate the product testing. Can someone please advice in fixing this driver issue and direct me on how to establish the connection. Any help is highly appreciated.
Thanks,
John
This can be a complex task. First, the connection type (serial, USB, Ethernet, other) is important. I'm going to assume USB, as that feels like what you're probably talking about (you should edit and clarify though).
For USB to work, you need drivers on both ends - the device and the PC - and they need to cooperate. For Windows CE devices and USB, the common way (though not only option) is to use ActiveSync. There is an out-of-the-box client application driver for Windows CE (repllog.exe) - though it requires the OEM actually plumbs it through to the transport driver. For the desktop (Vista and later) you would use Windows Mobile Device Center (WMDC).
You might simply be able to install WMDC and you're off and running, but it's always possible that the OEM disabled that, since you might not want someone to connect a PC to a POS system and subvert the normal operation. Have you asked the device OEM?

How to use USB GPRS Modem on ARM - Windows CE 6.0?

I've been involved with a project where I have to install and use a USB GPRS modem on an ARM board (RSC-W910) with Windows CE 6.0 installed.
The modem is the Sierra Wireless product GL6110 (GL61x0) and I need to use it only for data, making HttpWebRequests (TCP) send/receive XML data. Prefered development tool is C# and .Net Framework 3.5.
When the modem is connected via USB to the board, the error message that appears is saying "Unidentified USB Device" which I believe its normal.
Siera Wireless(SW) provides a driver for ARM920, but it failed to install using 'wceload.exe'. The error was "Setup Failed" that I could see on the small LCD screen attached to the board. To install the driver I connect to the board via Telenet and CAB file is stored on SD card.
Am I right to think that the failure to install the driver could be related to the fact that the Win CE image has RAM-based Registry?
If SW does not provide a driver for the modem, could this mean that I have to develop my own driver? or is there a generic driver that I can use instead?
Will I have to create a new Win CE image for the board to support the modem, or is it possible to use code within the C# application to access it?
Any help will be very much appreciated!
Thanks,
Nick
There's no generic driver, no. Sierra modems generally have CE support (I'm not checked this model, but it's likely to work). What you need is:
A Driver DLL, build for ARM and for CE 6.0 or 7.0 (the CE 5.0 driver model differs, so a CE 5.0 driver probably won't work)
The registry entries the device.exe looks for when the device is enumerated
These sometime come in a CAB, sometimes not. Generally I prefer it when they don't but either will work.
If the CAB file fails to install, it's probably because it's marked for some other platform. I'd use something like WinZip or WinRAR to pull it apart, rename the DLL and extract the necessary reg entries (depends on the CAB format how easy/hard this will be).
Generally, though, you need to copy the driver DLL to the \Windows Folder, then apply the registry entries. Then when the device is plugged in, it will read the registry, which will point it to the DLL, which is then loaded. "Unidentified USB device" typically means the registry entries were not found.
This can all be done without rolling a new OS image, though sometimes a new image is simpler than doing the necessary copying at startup, especially if the device is plugged in at boot.

Resources