Как начать работу с подключением USB-устройств к iPad?

iPad был бы идеальным портативным устройством для управления некоторыми USB-устройствами. Я хотел бы начать с программирования приложений для iPad, которые будут взаимодействовать с USB-устройствами.

Думаю, я мог бы использовать USB-адаптер док-порта для связи с самодельными USB-устройствами. Как следует программировать связь через этот док-порт и адаптер? Мне нужно несколько направлений. Не знаю, где искать, с чего начать. Даже не уверен, что это вообще возможно.

Я спрашиваю, потому что знаю, что большинство устройств не распознаются. Драйверы не устанавливаются автоматически, как на настольных или портативных компьютерах. Я хочу начать с программирования низкоуровневой связи, чтобы само приложение на iPad могло управлять всей связью USB со своим устройством.

Большое спасибо,

Любой полезный вклад приветствуется. До сих пор не нашел много успешных историй.

Ответы (2)

Вы не можете напрямую взаимодействовать с универсальными USB-устройствами со стандартной ОС iPad, если только вы не являетесь производителем в программе Apple MFi ( http://developer.apple.com/programs/mfi/ ). Кажется, что для того, чтобы просто подать заявку, требуется тонна бумажной работы. API внешних аксессуаров бесполезен на устройствах со стандартной ОС, если только вы не производите собственное устройство, совместимое с MFi.

Альтернативы

  • Если ваше USB-устройство может претендовать на роль MIDI-инструмента или контроллера, вы можете взаимодействовать с ним через USB, отправляя/принимая MIDI-сообщения с iPad.
  • Другой вариант — использовать небольшую недорогую плату, например Raspberry Pi Zero W, и использовать ее для программной передачи USB-данных через WiFi на iOS-устройство.
Да, MIDI-устройства видны напрямую через CoreMIDI, даже если они подключены, скажем, к комплекту для подключения камеры iPad. Однако не все устройства работают.

Вы, вероятно, захотите посмотреть документацию API внешних аксессуаров Apple:

http://developer.apple.com/library/ios/#featuredarticles/ExternalAccessoryPT/Introduction/Introduction.html

Обратите внимание, что это не просто дает вам доступ к USB-порту устройства - я понимаю, что для общения с устройством устройство также должно поддерживать этот API.