raspberry para funciona descargar como apple app ios iphone raspberry-pi

ios - para - Conexión por cable desde iPhone a Raspberry Pi



documents app para android (3)

Me gustaría crear una aplicación en mi iPhone que se conecte a mi Raspberry Pi. Debido a que estos van a estar muy cerca (uno al lado del otro), me gustaría utilizar la conexión por cable (puerto de iluminación a USB) para comunicarse. ¿Es esto posible o debo usar tecnologías inalámbricas? Mi suposición es que el cableado sería mejor, ya que garantiza una conexión y sería más rápido, sin embargo, estoy abierto a ser corregido.

Esto está relacionado con un proyecto de aficionado en el que quiero acceder a un sensor de frambuesa pi en mi iphone. El sensor (y Pi) estará al lado del iphone. Estoy construyendo un caso extraño personalizado para combinarlos.

Cualquier pensamiento muy apreciado.

Gracias Iain


Esto no es posible sin registrarse en el programa de MFI de manzanas. Tienes que pagar y firmar un montón de NDA.

https://developer.apple.com/programs/mfi/

Puede usar otros métodos, como bluetooth y conexión a través del puerto de audio.


Para la comunicación con dispositivos periféricos (Raspberry Pi, por ejemplo) tiene varias alternativas.

UART a través de un conector de 30 pines o relámpago (se necesita MFi)

USB a través de un conector de 30 pines o rayo (se necesita MFi)

Inicio rápido: kits de desarrollo de Microchip . Este módulo puede prolongar la comunicación a RPi o puede intentar implementar la pila de accesorios (y la comunicación con el chip de autenticación) a RPi.

FSK o comunicación de audio modulada similar a través de un conector de audio (no se necesita MFi)

Tendría que implementar el módem FSK de hardware en el lado de RPi y uno de software en el lado de iOS. Es un poco complicado pero de ninguna manera imposible.

Por supuesto, también podría implementar un módem de software en el lado RPi. Pero como RPi no tiene entrada de audio, tendrías que usar una tarjeta de audio USB o algo así. O complica tu vida tratando de probar un pin analógico lo suficientemente rápido.

Usuario no realmente Jake hizo una lista bastante impresionante de enlaces sobre este tema aquí en SO .

Bluetooth como accesorio externo (se necesita MFi)

Inicio rápido: RN-41/42-APL

Pila de Bluetooth fácil de usar. La comunicación con el chip de autenticación es manejada por el módulo BT. Tenga en cuenta que, al comunicarse con los dispositivos iOS, el rendimiento de los datos no es mucho mejor que cuando se utilizan módulos BLE.

Bluetooth como módulo BLE (no se necesita MFi)

La producción de datos no es mucho peor que la antigua BT. Implementar la comunicación puede ser un poco más complicado en cuanto a código. Este módulo parece interesante.

Comunicación WiFi (no se necesita MFi)

WiFi podría ser una buena opción. Pero para que su dispositivo y su dispositivo iOS puedan encontrarse entre sí, necesitará una IP estática (para el dispositivo servidor) o una implementación mínima de Zeroconf ( Bonjour ).

Al usar WiFi puede ir con una red de infraestructura (usando un punto de acceso externo) o puede ir con AdHoc (creado por su dispositivo). Más tarde parece prometedor, pero tenga cuidado: la red iOS7 y AdHoc no parece funcionar bien aún.

Con WiFi tienes muchos módulos para elegir. Un modo más simple de usar sería un módulo como RN-XV WiFly Module . La pila TCP ya está implementada en el módulo; puede usar la comunicación UART simple. No estoy seguro de cómo implementar Zeroconf en este caso.

O hay módulos WiFi sin procesar como MRF24WG0MA / MB . Son estables y confiables y se pueden usar en PCB grabadas en casa. Lo malo para el usuario de RPi es que seguramente necesitaría un PIC24 o algo similar entre el RPi y el MRF24W. Microchip proporciona una pila TCP / IP gratuita para sus microcontroladores y esta pila incluye Zeroconf.

Y de la manera más fácil : simplemente podría usar un dongle WiFi (con RPi) para comunicarse. Zeroconf debería ser lo suficientemente fácil de implementar en el RPi, y ni siquiera es necesario al principio si está bien asignar IP estática al RPi (si actúa como servidor).


Si bien la respuesta de @RokJarc es bastante completa, también he tenido éxito tanto con las conexiones por cable (del rayo al USB) como inalámbricas usando el punto de acceso personal de iOS. Estos son los pasos:

Para el cableado, en el Pi, instale ipheth-utils :

sudo apt-get install ipheth-utils

Y agregue una interfaz de red eth1 editando /etc/network/interfaces para incluir:

allow-hotplug eth1 iface eth1 inet manual

Para la /etc/network/interfaces inalámbrica, asegúrese de que /etc/network/interfaces tenga una entrada de red inalámbrica tal como:

allow-hotplug wlan0 iface wlan0 inet manual wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

Si está utilizando wpa_supplicant y agrega una entrada de red para el punto de acceso del iPhone en /etc/wpa_supplicant/wpa_supplicant.conf :

network={ ssid="Banana Phone" psk="ring ring ring" key_mgmt=WPA-PSK id_str="banana" priority=3 }

El ssid debe ser el nombre del teléfono en Settings -> General -> About -> Name y la contraseña debe venir de la pantalla del punto de acceso personal.

Ahora inicia el punto de acceso personal en tu teléfono. El pi debe conectarse automáticamente cuando está conectado por un usb al cable de iluminación o al usar wifi. Después de conectarse, el pi debería tener asignada una ip en 172.20.10.x Puede ejecutar ifconfig en el pi para descubrir cuál. (Creo que deberías poder definir una IP estática aquí, pero aún no te has equivocado)

Desde allí, puede conectar otra computadora al punto de acceso y ssh en el pi usando la ip 172.20.10.x o incluso ssh directamente desde el teléfono.

En mis pruebas personales, la latencia de los rayos es constantemente baja y lo he usado tanto en Raspberry Pi Two como en Raspberry Pi Zero para transmitir videos mjpeg en tiempo real desde dos cámaras a un auricular VR . En este esquema, la red es una fuente bastante pequeña de la latencia de aproximadamente 100 ms. La experiencia no es Vive, por supuesto, pero todavía se puede usar y el combo iPhone + Pi ofrece muchas oportunidades de hackeo divertidas.