Connecter un iPhone à l'Arduino via Bluetooth
J'aimerais être capable de laisser mon iPhone-App communiquer à mon Arduino via Bluetooth.
J'ai trouvé quelques Bluetooth, boucliers qui prennent en charge les protocoles suivants: BCSP, DUN, LAN, GAP SDP, RFCOMM, et L2CAP. De ce que j'ai trouvé lors de googler un peu, c'est que l'iPhone est de les cacher de la pile bluetooth de suite?!? Est-ce correct? Il n'y a vraiment aucune chance de laisser mon iPhone communiquer avec un autre périphérique bluetooth sans jailbreak (qui, autant que je sais que si je ne l'utiliserais btstack: http://code.google.com/p/btstack/)?
Si la fonction bluetooth est vraiment pas possible, quels sont les autres moyens (attendre WLAN) proposeriez-vous pour réaliser une communication?
Ce que j'aimerais comprendre, c'est quelque chose comme ici: http://theiopage.blogspot.com/2011/08/yanis-android-wireless-eos-controller.html
Merci pour les conseils!
- découvrez core bluetooth de référence mais c'est vrai, vous devez vous payer Apple leur $100 ou jailbreak.
- Avez-vous fait quelque chose avec ça? Je vois que c'est deux ans maintenant.
- nan... j'y suis allé avec mon appareil photo déclenchement à l'aide de la prise jack... comme les mecs de chez triggertrap le font...
Vous devez vous connecter pour publier un commentaire.
Il existe plusieurs technologies de connexion disponible.
Comme d'autres l'ont mentionné, la norme Bluetooth (3.0) est contrôlée par l'Imf programme. La seule façon de se connecter à un non-jailbroke iPhone est de rejoindre l'Imf programme.
Accès série est intéressante. Vous devez joindre à l'Imf de distribuer un périphérique série, mais vous pouvez utiliser le Redpark Câble Série pour connecter votre propre iPhone à un port série de l'appareil.
Il existe plusieurs façons de connecter LE Bluetooth périphériques à l'Arduino. Celui que j'ai utilisé est le RedBearLabs BLE Bouclier. Il fonctionne sacrément bien.
Vous pouvez également connecter un Arduino à l'aide d'un WiFi-série pont. J'ai eu du succès avec la WiFly appareil.
L'une des choses intéressantes au sujet de la BLE Bouclier WiFly et vous ne devez pas utiliser Objective-C ou un Macintosh--bien que c'est une option, bien sûr. Vous pouvez accéder à la fois à travers techBASIC, à droite sur l'iPad ou l'iPhone.
Vous pouvez probablement trouver ces sur votre propre avec des recherches et des efforts, mais ces technologies de connexion (plus quelques autres qui ne s'appliquent pas directement à l'Arduino) sont également couverts dans La construction iPhone et iPad Appareils Électroniques, un nouveau livre de O'Reilly.
D'informations sur la connexion à des périphériques Bluetooth 3.0 ou inférieur dispositifs de stock OS appareils iOS n'est disponible qu'après avoir été admis dans Apple MFi programme.
Bluetooth 4.0 (BLE) est accessible à la fois dans le développement et le commerce, pour développeurs iOS (sans avoir besoin de l'accès à l'Imf de programme), en utilisant le public de Base Bluetooth cadre est disponible dans iOS 5 ou version ultérieure sur iPhone 4S, iPad 3 et versions ultérieures appareils transportant BT4.0 à bord.
Ajouté quelques années plus tard:
Il y a maintenant plusieurs BLE shields Arduino et compatibles ou Arduino-like produits avec haut-BLE (LightBlue Bean, RFduino, etc.) disponible sur le marché.
En fait, vous pouvez y arriver sans Jailbreak ou de l'Imf d'inscription.
Prendre un coup d'oeil mangé Bluetooth 4.0 dans de nouveaux appareils iOS et Arduino BT 4.0 le bouclier.
Ce qui pourrait aider: http://blog.makezine.com/2012/03/19/bluetooth-4-0-from-arduino-to-iphone-no-jailbreaking-no-mfi/
Donc je ne sais pas comment la mettre, mais je pense que votre Arduino doit simuler une Oreillette Bluetooth et laisser l'Application analyser les données. Parce que les iPhones uniquement en charge les Casques Bluetooth ce serait l'une des seules méthodes. Et il serait très dur.
Je vous recommande de faire des choses comme ça plus de Wifi avec un Wifi-Bouclier. Que vous pouvez utiliser des Pommes genial
bonjour
systeme, pour détecter automatiquement votre matériel.Espère que vous donne une idée, comment résoudre le problème,
Leo
L'amélioration de cette réponse et de couvrir tous les détails probablement besoin de certains article ou similaire. Je vais essayer de garder les choses à court et à faire le focus sur iOS côté, depuis Arduino, fondamentalement, n'ont pas de limitations sur les périphériques Bluetooth qui sont largement disponibles via Arduino BLE boucliers, telle est RedBearLab BLE Shild
Bluetooth v2.0 + EDR, v2.1 + EDR, v3.0 + HS....
Pile Bluetooth spécification avant v4.0 ne contient pas de Basse Énergie de la partie. Bien qu'il est facile d'utiliser le protocole, en particulier si simplifiée autour de SPP (Profil Port Série), il n'est pas disponible sur les appareils iOS d'Apple sans Imf programme. Il y a quelques modules Bluetooth sur le marché, tels est Pan1321 de Panasonic qui comprend Apple authentification coprocesseur et qui pourrait être utilisé avec iOS. Triste partie de l'histoire est que si vous le consulter sur cette page officielle iOS: profils Bluetooth pris en charge SPP n'est pas là, donc vous pouvez choisir entre les profils inscrits (ce que vous n'aurez probablement si vous êtes à la prise audio ou périphérique HID).
Bluetooth Low Energy (BLE)
Migration de Bluetooth v3.0 spécifications pour v4.0 introduit BLE. Nouvelle partie de la spécification a très peu en commun avec la précédente. Fondamentalement, vous pourrait regarder comme Bluetooth v3.0 + S = v4.0 ou Bluetooth Smart. BLE partie de la v4.0 spécification est ce qui nous intéresse pour.
CoreBluetooth
À côté de tous les avantages de BLE tels sont faible consommation d'énergie, de petite taille, à faible coût, le plus important a été l'adoption par les fabricants de mobiles, y compris Apple (pas Imf nécessaire). BLE est entièrement pris en charge par CoreBluetooth et la mise en œuvre sur iOS côté est simple. Une chose que vous devez garder à l'esprit est que BLE est faible, de l'énergie, mais aussi à faible vitesse. Bien que la norme spécifie connexion minimale de l'intervalle de 7,5 ms Apple la documentation dit recommandation est de 30ms 😀 Ce que j'ai vécu à l'aide de tas de différentes puces et les appareils iOS, c'est que vous serez capable de transmettre de 20bytes toutes les 20-30ms. Si l'accusé de réception est nécessaire, que de faire des doubles, comme 40-60ms.
Profils Personnalisés
La liste des standard profils de BLE est disponible par le Bluetooth Special interest Group (SIG). Jetez un oeil sur le GATT de Base. Malheureusement, si vous n'en faites pas un moniteur de fréquence cardiaque ou de l'appareil dans la liste, vous aurez probablement l'utilisation de la batterie de service ou similaire à partir d'une liste de profils. Heureusement, il n'est pas compliqué de créer un profil personnalisé, qui sera "réservé" pour l'application spécifique de données à transmettre. La compréhension des Rôles, le GATT (Services et Caractéristiques), Uuid et d'autres est obligatoire, mais la courbe d'apprentissage ou de BLE de la pile n'est pas difficile à mon avis.
Une fois quand BLE de profil, en cours d'exécution sur incorporé dispositif est connu, de connexion et de communication sur la BLE est très simple à l'aide de CoreBluetooth bibliothèque.
iBeacon
Apple a fait peu de bidouille à l'aide de BLE standard comme "transporteur" pour iBeacon. Ils sont à l'aide spécifique au fabricant les données dans BLE de la publicité paquet pour "réclamer" que certains appareil est iBeacon. Ce qui est parfaitement OK, je dirais. Ce que vous devez garder à l'esprit est que BLE n'est pas iBeacon, mais tous les iBeacons sont BLE (appareil avec codé en dur spécifiques de fabricant de données, d'exposer RSSI, UUID, mineur et majeur dans la diffusion de BLE mode). En outre, iBeacon est gérée par CoreLocation pas CoreBluetooth. Cela rend clair ce qui était Apple intension avec iBeacon.
Conclusion
Si vous souhaitez intégrer l'appareil iOS avec Arduino ou une autre périphérique intégré BLE est certainement quelque chose que vous voulez examiner. Il y a d'autres raisons pour lesquelles vous voulez en savoir plus sur la BLE si vous prenez un coup d'oeil sur l'Ido hype et RF disponibles options. BLE est ici pour rester avec v4.1 et à venir de la v4.2 cahier des charges qui permettra d'améliorer la bande passante, apporter de la prise en charge d'IPv6, l'amélioration de la sécurité, etc.
À la fin, pas si court, mais j'espère que cela aide.
Certains BLE modules peuvent être utilisés dans iBeacon mode et sont connectables à IOs. J'ai travaillé avec des modules HM10 et HM11, basé sur CC2540/CC2541. Ils ont plusieurs commandes AT pour iBeacon d'installation. Changable registres sont UUID, Majeur, Mineur et Puissance Mesurée. Plus détaillées sont exposées dans cet article "Transformez votre CC2541 base HM-10 Bluetooth Smart Module dans un iBeacon"