Infrared (ІЧ) — це невидиме світло з довжиною хвилі, більшою за видиме світло. Воно широко використовується, наприклад, у пультах дистанційного керування для передавання невеликих обсягів даних.
У Sphero BOLT, BOLT+ та RVR/RVR+ інфрачервоне світло використовується для передачі даних, таких як відносна відстань і напрямок між роботами.
Це дає змогу організувати поведінку слідування або ухилення між декількома роботами, а також надсилати власні повідомлення.
Кожен робот має чотири пари інфрачервоних передавачів і приймачів для забезпечення огляду на 360°, за умови, що між роботами є пряма видимість.
Ефективна відстань дії становить до 3 метрів.

startIRBroadcast() — задає інфрачервоні передавачі для трансляції сигналу на двох заданих каналах, від 0 до 7, щоб інші роботи могли слідувати або уникати.
Передавач використовує два канали:
- Перший канал — передає сигнали ближнього діапазону (< 1 метра).
- Другий канал — передає сигнали дальнього діапазону (1–3 метри).
Це дозволяє роботам, які слідують або уникати, отримувати ці сигнали та визначати відносну близькість до джерела передачі.
Не можна використовувати канал одночасно для кількох цілей, наприклад, для передачі повідомлень та для слідування чи уникання.
Наприклад, використовуйте startIRBroadcast(0, 1), щоб передавати сигнал на каналах 0 і 1, так щоб інші роботи, налаштовані на слідування або уникання на цих каналах, могли розпізнати цей робот.
Підтримується у Sphero BOLT, BOLT+ та RVR/RVR+.

stopIRBroadcast() — зупиняє трансляцію сигналу.
Підтримується у Sphero BOLT, BOLT+ та RVR/RVR+.

startIRFollow() — налаштовує інфрачервоні приймачі для пошуку роботів, що транслюють сигнал, на тих самих парах каналів, від 0 до 7.
Після отримання сигналів від транслюючого робота, робот-«послідовник» коригує свій напрямок (heading) і швидкість для слідування за передавачем.
Якщо «послідовник» втрачає передавача з поля зору, він починає обертатися на місці, щоб знайти передавач.
Обмеження:
Канал не можна використовувати одночасно для кількох цілей, таких як передача повідомлень і слідування або уникання.
Наприклад, використовуйте startIRFollow(0, 1), щоб слідувати за іншим роботом, який транслює сигнал на каналах 0 і 1.
Підтримується у Sphero BOLT, BOLT+ та RVR/RVR+.

stopIRFollow() — зупиняє поведінку слідування.
Підтримується у Sphero BOLT, BOLT+ та RVR/RVR+.

startIREvade() — налаштовує інфрачервоні приймачі для пошуку роботів, що транслюють сигнал, на тих самих парах каналів, від 0 до 7.
Після отримання сигналів від транслюючого робота, робот-«ухилянт» коригує свій напрямок (heading) та рухається від передавача.
Якщо «ухилянт» втрачає передавача з поля зору, він починає обертатися на місці, щоб знайти передавач.
Робот може зупинитися, якщо перебуває в далекому радіусі (far range) протягом тривалого часу, щоб уникнути надмірного віддалення від передавача.
Обмеження:
Канал не можна використовувати одночасно для кількох цілей, таких як передача повідомлень і уникання, трансляція або слідування.
Наприклад, використовуйте startIREvade(0, 1), щоб уникати іншого робота, який транслює сигнал на каналах 0 і 1.
Підтримується у Sphero BOLT, BOLT+ та RVR/RVR+.

stopIREvade() — зупиняє поведінку уникання.
Підтримується у Sphero BOLT, BOLT+ та RVR/RVR+.

sendIRMessage() — надсилає повідомлення через заданий ІЧ-канал із заданою інтенсивністю (від 1 до 64).
Інтенсивність пропорційна відстані, де 1 — найближче, а 64 — найдальше.
Наприклад, використовуйте sendIRMessage(4, 5), щоб надіслати повідомлення 4 із інтенсивністю 5.
Для прийому повідомлення іншим роботом потрібно використовувати подію onIRMessage4(channel).
Також дивіться сенсор getLastIRMessage(), щоб відстежити останнє отримане вашим роботом повідомлення.
Обмеження:
Канал не можна використовувати одночасно для кількох цілей, таких як передача повідомлень, трансляція, слідування чи уникання.
Підтримується у Sphero BOLT, BOLT+ та RVR/RVR+.
