How can I sniff ethernet iOS traffic - ios

I have a USB camera that does work with iOS devices on a specific application made by the manufacturer. When connected, it creates an ethernet interface for which I'm always assigned the same IP address and then when launching the app the camera shows up.
There is no documentation for this device or known API to make it work on other devices or apps.
How can I monitor the traffic between the device and the USB camera in order to find out endpoints (wether HTTP/HTTPS or not) to be able to use the camera on other devices?
The virtual network created by MacOS is (at first glance) not the good approach because my iOS device port is already in use by the USB camera.
I'm interested in both non-jailbreak and jailbreak ways of doing that.

Related

How to programmatically obtain another device ip on an IOS ad hoc network?

I have a DLSR Canon camera connected directly via wiFi ("ad hoc" network) to an iOS device running iOS 10.
How do I programmatically determine the address of the camera? I want to send PTP ("Picture Transfer Protocol") messages to the device and receive the camera data on the iOS device.
I know I'm connected as WiFi network menu on the iOS device Network menu indicates I'm connected.
I can determine the iOS device IP address from within the app, but not the "other end point" of the network. (BTW, I'm using Objective-C.)
Is there a method in Bonjour I could use? Or something in Multipeer Connectivity? I don't know what the Bonjour service name, hostname or IP address would be for the camera. I know this is possible as Canon provides an app that does this very thing.

ASCII code on an external device through USB port

Is it possible to send an ASCII code on an external device through USB port using IOS API? I assume that it is possible through bluetooth connection, but I'm not sure through USB connector. Any thoughts?
I would appreciate if someone could put me in the right direction.
Thanking you in advance
That largely depends on the level of sophistication of this "external device". If this external device is just a bare metal embedded device without some sort of operating system you definitely need MFI.
Otherwise, you can run a usbmuxd server (e.g. on Raspberry PI with Linux) to establish a connection via USB. Usbmuxd is basically the technology that Apple uses to communicate between iOS devices and Desktop apps such as iTunes or Xcode. And yes, it is App Store compliant, e.g., Duet Display uses this approach to make an iPad a secondary display for your Desktop via USB.
There are several open source libraries that provide a high level API, e.g., PeerTalk or DarkLightning.

Connect Sony SmartEyeGlass to Wifi

today a SmartEyrGlass arrived at the office and I am having trouble connecting it to the wifi to take pictures.
The manual just says:
Turn on wireless LAN on your smartphone.
And in the settings off the glass it only displays the MAC address of the device.
I looked online for a full manual, but I couldn't find any.
What do I need to do to take pictures?
It will automatically connect over wireless LAN when you start the Camera application.
For connection, initial pairing over bluetooth is enough. Device will switch to WLAN automatically when application needs it.
Start Camera and you will see it is starting to connect.

ExternalAcessory Framework for iOS: using the iphone as a usb device

I'm looking into the iOS sdk for examples of the ExternalAccessory framework to use the iphone/ipad as an USB device that can be plugged into a PC or Mac and present as external device (like a midi controller or something else)
The App i want to create requires connecting to a host (PC or Mac) the iphone via USB or bluetooth and present to the host a functionality. How can i implement this?
You'll probably have an easier time connecting via WiFi. You need to be part of the Apple Made for iPhone program, which is not easy to get into, to use Bluetooth or the dock connector to talk to peripherals. There's no such restriction on the use of WiFi. Also, you'll find a lot more helpful examples of connecting via WiFi on the web.
CoreMIDI is the appropriate API for emulating a MIDI device, which may be possible over USB using Apples Camera Connection kit.

Is Wi-Fi Direct connection possible within iOS devices and among Wi-Fi Direct enabled devices?

Is Wi-Fi Direct connection possible within iOS devices and among Wi-Fi Direct enabled devices?
The objective is to enable communication between an iOS device and another device (not necessarily another iOS device. It could be Android, Mac, PC) without the presence of any controllers. (WAPs).
iOS devices can connect to an ad-hoc network, and if they do so they will have full wireless network capabilities. The limitation is with creating an ad-hoc network from the device itself, which is not allowed/not possible.
An alternative would be to use the GameKit/Game Center API which uses Bluetooth to create a network between iOS devices. This would obviously include the more limited range of Bluetooth vs Wifi, as well as the constraints of Apple's SDK.
More information on Game Center in iOS 6 is available here: http://developer.apple.com/library/ios/#documentation/NetworkingInternet/Conceptual/GameKit_Guide/Introduction/Introduction.html#//apple_ref/doc/uid/TP40008304
I have been looking into this recently and from my research,(please see "Device to device communication with WiFi Direct: Overview and experimentation" by Daniel Camps-Mur,....) the WiFi Direct does NOT create ad-hoc network. It's actually creating a WiFi infrastructure network where one party takes the role of AP (soft-AP). Once this established, the network works much like a normal WiFi network. Do we agree on this?
Given this is the fact, Apple iPhone should be able to connect to WiFi Direct device that is already set up as AP. I haven't check this though.
Having said this, How can you get an Android phone like Samsung Galaxy S3 or S4 to act as AP? there is nothing in the settings as far as I know. If you connect two such devices, one of them will take the role of AP. Now, iPhone will detect the established network, but when trying to connect to that, will be asked for WPA password. Good luck finding it! Cus you can't get it from the phone. I read somewhere that a file in Samsung Galaxy called WPA_Suppliciant.conf has the WPA key in it but I didn't see it there.
I believe if you could find WPA password, you can get the iPhone to easily connect.
iOS devices do not support Wi-Fi Direct functionality, they do not have WFD (Wi-Fi Direct) group creation or role negotiation (P2P Group Owner or Group Client) support.
During a normal WFD connection one of the 2 devices takes role of Group Owner (Soft-AP) allowing other device to connect as a Group Client.
iOS has support for tethering which is normally know as Personal Hotspot option in Settings. It can be used for communication between iOS and non-iOS devices. For example,
Application ShareIt uses similar way to connect iOS to non-iOS devices by creating a temporary Hotspot and in the non-iOS device and promts iOS user to go to Wi-Fi screen and connect manually. This is normally recommended when a common Wi-Fi network is not present.

Resources