How to write a Ping method in Cocoa/Objective-C? - objective-c

Method from this question "How to write a Ping method in Cocoa/Objective-C" wasn't helpful, because it only assesses if there is a pathway out of the machine by which the target domain is potentially reachable. So basically almost each host which you testing will be showing as reachable, even if it's not.

Check out the Apple same code for SimplePing
SimplePing demonstrates ping (ICMP) send and receive. The sample runs
on Mac OS X 10.5 and later, although the core code works just fine on
all versions of iPhone OS and the underlying approach works on earlier
versions of Mac OS
X

Related

STM32 Virtual COM Port appears as Device in DFU Mode on Windows 10

So, my knowladge in embedded development is quite bad and now I am trying to receive some data from PC inside my MCu STM32F429IGT6 which is on WaveShare Core4X9I dev-board and send it back via USB Virtual COM Port.
I realized how to set up connection from MCu part and I even see connected device from Windows 10 Device Manager but... it appears as STM Device in DFU Mode
I have tryed already to install drivers from ST for such things but they are useless and official documentation says that they are not needed for Windows 10.
I have been following tutorials where guys just clicked several times inside Cube MX, generated code and VCP worked out of the box.
The question is what am I doing wrong? I don`t even know what information you might ask for thats why I created GitHub repo: https://github.com/dessy4oko/stm32f429-vcp-appears-as-dfu
And this is events from Device Manager of Windows 10 (translation from ru lang):
Device USB\VID_0483&PID_DF11\305233703237 is running. code 410
Device USB\VID_0483&PID_DF11\305233703237 is configured. code 400
Device USB\VID_0483&PID_DF11\305233703237 have not been moved due to partial or ambiguous matching. code 442
Device USB\VID_0483&PID_DF11\305233703237 requires further installation. code 430
Thank you for any information about my mistakes.
STM32 starts in DFU mode if BOOT-pins are pulled accordingly:
"System memory" means embedded bootloader, DFU in this case. You need "Main Flash" to run your app.
Check jumpers and switches on your board. Refer also to the AN2606 app note for complete information.

Bluetooth LE on iOS cannot work with many services and characteristics

I develop a BLE application, using Core Bluetooth in my iPhone app.
My iPhone communicates with linux with bleno launched.
The problem is that it cannot work with more than one characteristic or service, though just one characteristic works nice.
Here is my code for iOS and .js code for Node.js:
http://pastebin.com/k5pUrbLt
http://pastebin.com/biCWLmJ3
Thank you!
P.S. That's what i get in console:
2014-07-24 13:18:02.819 lexy[142:60b] didDiscoverPeripheral
2014-07-24 13:18:04.503 lexy[142:60b] didDiscoverServices
2014-07-24 13:18:04.506 lexy[142:60b] D61191C0-FCE8-4F5A-912C-15EE39D927B4
I.e. I successfully discover and connect to the peripheral, but I do not find any characteristics. In that case I have one service with many characteristics.
iOS can work with multiple characteristics and multiple services on a remote device.
Your ObjC code seems okay (1 service with 2 characteristics).
Console output suggests that you send a discoverCharacteristics request but that it hangs and never returns. You could add logging to the didDisconnectPeripheral delegate method to see if there is a disconnect happening.
What you could also do is to look at the logs of the Bluetooth stack and to compare them to how the logs look like if you access a TI Sensor Tag (those tags are the hello world of BLE).
iOS 7.1 instructions for Bluetooth logs are located here, for iOS 8 you'll have to resort to Apple's official way to get the logs (installation of a configuration profile) but their logs contain less information than the ones by BluetoothCompanion.
Apparently, it works on Ubuntu 14.04, but doesn't work on OpenSuse 13.1.

chrome.socket UDP API useless on Chromebook?

I am working on a Chrome packaged app that requires multicast communication over the local network and is specifically targeting Chromebook users. The 'Network Communication' documentation on the packaged app site is outdated and the chrome.socket API documentation is lacking. I was able to get some idea of how to get multicast working by looking through Chrome's 'multicast' sample app (https://github.com/GoogleChrome/chrome-app-samples/tree/master/multicast).
I tested my app by loading it into the Chrome browser on my Mac and everything worked great. I loaded it onto my Chromebook and multicast did not work. I then tried the 'multicast' sample app on my Mac and Chromebook with the same result. The 'multicast' sample app is a chat app. When loaded on both computers on the same network, everything works as expected on the Mac - I can send chat messages out and receive chat messages. On the Chromebook I can send chat messages but not receive them - including the ones that the Chromebook sent.
According to this post - Chrome Sockets API Behaves Differently on Chrome OS (vs. Ubuntu, Windows)? - it looks like Chromebook has a restricted firewall that is blocking UDP packets. I followed the instructions on the post to turn on developer mode and allow UDP packets and that allowed my app to run as expected, but that is not a solution for me. I can't expect Chromebook users to run in developer mode to run my app.
Anyone know if it is possible to allow UDP packets on the Chromebook without going into developer mode? Is there an undocumented permission I can add to my manifest to override the Chromebook UDP restrictions (this seems possible since the 'udp-multicast-membership' permission included in the 'multicast' sample app is undocumented)? This seems like a long shot but chrome.socket.create can be given optional socket options which don't appear to be documented anywhere. Maybe there is something I can add there? And why have Chrome sample apps that don't run on a Chromebook???
---UPDATE---
In case someone is having a similar problem, it looks like this has already been filed as a bug and been looked at just within the past couple of weeks.
https://code.google.com/p/chromium/issues/detail?id=275737
I have no idea when it will actually make its way to a Chromebook update.
Regarding:
I have no idea when it will actually make its way to a Chromebook
update.
usually ChromeOS follows the same release schedule as desktop chrome, with new stable versions coming out about every 6 weeks. But because of the holidays in December when lots of people are on vacation, there is sometimes a hiccup. You can give the dev channel a try and see if the fix showed up there yet: https://support.google.com/chromebook/answer/1086915?hl=en

Email Sending Failed

I am developing an application for sending emails. I have used the EDMESSAGE framework. I developed the application in MAC OS X 10.6.7 and i got it working. When i installed the application in MAC OS X 10.7.2, email sending is failed.
The error that i am getting is:
Host (null) (() ())has no IPV4 address
Can anybody help me with a solution?
On the EDMESSAGE forum there is this EDMessage on 10.7 Lion / IPv6
Basicly it looks like EDMESSAGE does not support connection via IPV6 which is what your 10.7 Mac may be trying to do.
By the way that info was not hard to find, about 30 seconds of using google. Even with this being the first time hearing about EDMESSAGE. ;-)

How to test iphone p2p aplications?

Is there a way to test iphone OS 3.0 p2p applications?
Can I run multiple iphone simulator instances? Aperantly no.
Any help?
I put up a detailed post on how to do this a couple weeks ago, so I'll just refer you to it: http://ramin.firoozye.com/2009/06/18/debugging-peer-to-peer-and-wifi-apps-on-the-iphone/
Try to get permission from work or someplace with several computers on a LAN to run several instances. This will let you test network stuff, too.
According to this forum post you will need to test it on two real devices.
You must use 2 hardware devices for testing gamekit p2p connections.
Untested, but you should be able to run two instances of the iPhone Simulator by duplicating it..
Run the simulator as normal for phone 1.
For the second, go to /Developer/Platforms/iPhoneSimulator.platform/Developer/Applications/ and copy (not move) the application somewhere (your Desktop?). When you run the copy, it will ask where the Developer Tools are installed and the application to run. Provide this and it should run a second copy.
Also, perhaps you could test it on both your real phone and the simulator?
I found a solution:
activate tethering on your iPhone
connect your mac with the simulator on it to the phone
Now you can test the gamekit on your sim and your iPhone
(I also have internet-sharing activated on my macbook - but I think the tethering-part is important... oh, this implies that bluetooth is running on the iPhone and the mac, of course)...
I'm pretty happy I found this solution - this was a major drawback...
I try to the same test on my macbook OS5.0 and iPhone 3gs , the iPhone simulator app can see the iPhone device via the app , but can not connected ... does this problem cause the bluetooth device is unauthorized ?
install VMware seem great but too trouble...