Error during initializing the Scanner of mPop Printer - eaaccessory

I am developing a point of Sale Application in which there is requirement of Bluetooth connectivity which printer and scanner. I am using star Printer. I am getting following error randomly when scanner is being initialized.
ERROR - opening session
ERROR - /SourceCache/ExternalAccessory/ExternalAccessory-288.20.7/EASession.m:-[EASession dealloc] - 141 unable to close session for _accessory=0x16768100 and sessionID=65536
Thanks,
Ratneshwar

I had the same bug, so finally i fixed it downloading the mPOP utility and changing in the bluetooth configuration the Name port.
It isnt a complete solution, but while star micronics fix the problem can works to the customers.
EDIT: If you have implemented both sdks StarIO.framework and StarIO_extension.framework and you are using the barcode lector always in your app you should use the method [_starIoExtManager.lock lock]; before you try to get the connection of the port and after you do that and close the port, use [_starIoExtManager.lock unlock];

Related

Windivert fails in Win10 - Solution to TCP 3handshake - Evade windows RST packets

I had a project which used windivert to work as a router in my network, and it worked fine but now is dead with the same code. Previous versions which worked succesfully now dont work. I always get the same Windivert error which is 997 (Overlapped I/O operation is in progress).
For example when I use WindivertOpen I get the error, when I restart the computer to reset the windivert driver I dont get the error 997 in WindivertOpen but I get it in WindivertSend or WinDivertSendEx and after use them I again get the error in WindivertOpen. These functions worked fine for me months ago and my router worked as I expected, but now I am done with these errors, there is nothing I can do, maybe this is caused by a windows security update.
I need to know how to reset the driver without restart the computer and to know what I can do to face this problem. I used windivert to block windows TCP RST packets to my router fordwards, windows does this when there is not sockets associated with the ports that you are fordwarding, what can I do to block this packets without windivert or with a working way of windivert?
The 997 error is ERROR_IO_PENDING, but the error code is meaningless unless WinDivertOpen returns INVALID_HANDLE_VALUE. Otherwise the call will have completed successfully.
Presumably you have upgraded to WinDivert 1.4 from a previous version. Simply replacing the binary files (dll/sys) won't work -- you must instead recompile your program against the new API.

Error message when initializing EKEventStore on OS X 10.10

I would like to programmatically create a new reminder in my app that runs on Mavericks.
As written in the Mac Developer Library, I tried to use the method initWithAccessToEntityTypes to initialize an event store:
On OS X, use initWithAccessToEntityTypes: instead of the default init
method. Acceptable entity types are EKEntityMaskEvent for events and
EKEntityMaskReminder for reminders.
However, Xcode complained that this method is deprecated in OS X 10.9.
When using it anyway, I get the following error message:
[com.apple.calendar.store.log] [Tried to connect to XPC persistence,
but connection was invalidated, retrying...]
[com.apple.calendar.store.log] [Retried too many times, giving up.]
[com.apple.calendar.store.log] [Couldn't start the XPC store server.
[Error Domain=CalPersistenceCreationDomain Code=3 "Could not create
XPC connection to the CalendarAgent, connection interrupted or
invalidated more than 5 times" UserInfo=0x6080002698c0
{NSLocalizedDescription=Could not create XPC connection to the
CalendarAgent, connection interrupted or invalidated more than 5
times}]] [com.apple.calendar.agentLink.xpc] [Creating a remote proxy
object for com.apple.CalendarAgent.proxy resulted in an invalid
connection. The connection will be removed. Error
Domain=NSCocoaErrorDomain Code=4099 "Couldn’t communicate with a
helper application." (The connection to service named
com.apple.CalendarAgent.proxy was invalidated.)
UserInfo=0x600000475e80 {NSDebugDescription=The connection to service
named com.apple.CalendarAgent.proxy was invalidated.} (
I've searched using Google, StackOverflow, and the Mac developer forums but I could not find a way to make it work.
What can I do to initialize the event store in order to add a new reminder?
The app was sandboxed. I changed the sandbox setting in Xcode (see screenshot) and now it works. Also, it seems that it is now possible to initialize a store simply by using:
self.ekEventStore = [[EKEventStore alloc] init];

Error on checking balance via USSD

I've been trying to check my balance from by 3g modem via AT commands and seem to be stuck.
The device infomation is as follows:
Manufacturer: QUALCOMM INCORPORATED
Model: M6281
Revision: SSD_M6281A-0.0.1 1 [Oct 02 2008 07:00:00]
The modem has USSD capability (advertised and also present in the factory installed dashboard).
I am connecting via putty to COM4 serial port which is my modems application port. All AT commands are working fine but I am getting an error on issuing the following via putty:
AT+CUSD=1,"*111#",15
This returns a simple "ERROR". *111# is my carrier's balance check code. I suspect that there is a formatting error somewhere but I can't figure out where.
Note: If I issue a blank ussd command:
AT+CUSD=1,"",15
then I get an OK (although I later get a response +CME ERROR: retry operation) ... If I write anything within the quotation marks however, it returns an "ERROR".
Ok, I finally found the way to fix this. Apparently there was a problem in the encoding. Here is what I did:
AT+CSCS="GSM" // change character set to GSM
AT+CUSD=1,"*111#",15 // Issued balance check ussd code
It now works fine.
The default encoding was UCS2, I'd appreciate if someone can share how to convert ussd codes to UCS2 encoding in putty.
Have you tried issuing request by AT+CUSD=1,"*111#" ? (without last parameter)
AT cmmands sometimes differ due to manufacturer implementation.

Unable to Open SCOAudio connection with phone

I am trying to use IOBluetooth framework on OS X 10.8.2 to connect with the bluetooth enabled phones emulating computer as a hands free device. I can successfully make a connection with the phone and phone can recognise the connection as a HandsFree connected to the phone.
But when I try to make a call with the phone and want to send the audio to the mac (by selecting the source as handsfree), the audio never reaches the computer.
As at this point the bluetooth framework tries to open a SCO Audio connection with the device, but the connection establishment is never successful and I get the error code 0x0D status code in scoConnectionOpened status.
I am using IOBluetoothAddSCOAudioDevice function to attach the SCO Audio device with bluetooth device and it is always successful.
//btDevice is paired
res=IOBluetoothAddSCOAudioDevice((IOBluetoothDeviceRef) btDevice,NULL);
if(res != kIOReturnSuccess)
{
self.error.title = [NSString stringWithFormat:
#"Could not attach the Audio device. Try paring device again"];
}
The console log says
24/11/2012 4:02:13.000 PM kernel[0]: [SendHCIRequestFormatted] ###
ERROR: [0x0428] (Setup Synchronous Connection) -- Send request failed
(err = 0x000D (kBluetoothHCIErrorHostRejectedLimitedResources))
24/11/2012 4:02:13.000 PM kernel[0]: REQUIRE_NO_ERR failure: 0xd -
file:
/SourceCache/IOBluetoothFamily_kexts/IOBluetoothFamily-4090.4.33/Core/Family/Drivers/IOBluetoothSCOAudioDriver/IOBluetoothSCOAudioDevice.cpp:872
Although console log says limited resources but I have tried it with multiple phones having their batteries full.
I am stumped on this and just thinking if I need to do any thing special or different?
Thanks in advance for much appreciated help.
This error ("Connection Rejected due to Limited resource") typically happens when a T2 request is sent to a T1-only SCO listener. If you read the patch notes to version 5 you can get a discussion about this problem linux-bluetooth v5 patch notes

Windows XPe RAS error 756 "connection is being dialled"

I'm working with an embedded system which has a RAS entry already set up, using the API function RasDial from rasapi32.dll.
All works well except if something goes wrong after RasDial and before RasHangUp. In this case any further attempt to dial is met with error 756 "connection is being dialled", whether the dial attempt is done via the API or via the Windows rasdial command line utility.
rasdial connectionname /d doesn't help either.
The com port used for the modem is locked.
The only way to recover is to reboot.
Obviously under normal circumstances the solution is to make sure that RasDial is always followed by RasHangUp. But for cases where this doesn't happen, is there a way of aborting the dial attempt? For example, if the app calls RasDial and then crashes, how do I get out of that other than by rebooting?
Unfortunately, unless your application can properly terminate the connection that's in progress before exiting the RAS state machine becomes corrupted and must reboot to fix the problem. I've noticed that Windows 7 handles these sorts of scenarios better than XP and Vista did, but there are still occasions when I've had to reboot.
I've managed to prevent most of these sorts of problems with the DotRas API as long as they're occuring in the event handlers of the RasDialer, but if the application crashes from another thread and not from the background thread which raises the RasDialer events, there's nothing I can do about that.
For asynchronous dialing using the DotRas 1.2 SDK:
using DotRas;
RasDialer dialer = new RasDialer();
dialer.EntryName = "My Connection";
dialer.Credentials = new NetworkCredential("My", "User");
dialer.DialAsync();
From this point you can call dialer.DialAsyncCancel() if you want to cancel the connection attempt that's in progress.
For synchronous dialing using the DotRas 1.2 SDK is very similar to asynchronous dialing other than replacing the DialAsync call with simply dialer.Dial().
Here's a link to the API I was talking about: http://www.codeplex.com/DotRas
Hope that helps!

Resources