В октябре 2016 года компания Particle объявила о добавлении поддержки Raspberry Pi на свою облачную платформу IoT. Теперь, когда Particle публично объявили о своей поддержке Raspberry Pi, любой может использовать Particle на Raspberry Pi.

Particle на Raspberry Pi позволяет объединить функции Particle Cloud с полными возможностями Raspberry Pi и создавать удивительные проекты, которые раньше было сложно создать. С Particle на Raspberry Pi вы можете использовать тот же код C++ для других устройств Particle для создания мощных решений.
Particle на Raspberry Pi обеспечивает полный доступ к сорока контактам ввода-вывода на Raspberry Pi, позволяя вам выполнять цифровые и аналоговые взаимодействия с вашей любимой электроникой. Кроме того, Particle на Raspberry Pi позволяет создавать функции для вызова практически любой команды или скрипта Bash, присутствующих на Raspberry Pi, облегчая динамическое и гибкое взаимодействие внутри прошивки.
Для начала убедитесь, что ваш Raspberry Pi обновлен до последней версии Raspbian и подключен к вашей сети. Обновите программное обеспечение вашего Pi, используя следующую команду:
$ sudo apt update && sudo apt upgrade
Затем выполните следующую команду на своем Raspberry Pi, чтобы установить Particle-агента (Particle-Agent):
$ bash <( curl -sL https://particle.io/install-pi )
Во время установки Particle-Agent вам будет предложено войти в систему, используя свои учетные данные Particle, чтобы подключить Raspberry Pi к своей учетной записи. После завершения установки вы можете использовать Raspberry Pi с инструментами Particle. Вы можете собрать и прошить прошивку, используя Web IDE, Particle Dev, Particle-Cli или po-util для локальной сборки.
Particle на Raspberry Pi поддерживает выполнение команд и сценариев bash в процессе работы Linux из встроенного ПО. Входные данные могут поставляться с аргументами и стандартным вводом, а выходные данные могут быть захвачены для использования в вашей прошивке.
Далее приведен пример получения внутренней температуры процессора Raspberry Pi с использованием Particle.
# include "Particle.h"
int getTempC(String args)
{
Process proc = Process::run("vcgencmd measure_temp");
proc.wait();
proc.out().find("=");
float cpuTemp = proc.out().parseFloat();
Particle.publish("cpu-temp", String(cpuTemp));
return 0;
}
void setup()
{
Particle.function("getTempC", getTempC);
}
void loop()
{
}
С помощью Particle на Raspberry Pi вы можете управлять многочисленными контактами на Raspberry Pi. Многие из них представляют собой цифровые входы и выходы, а некоторые из них могут работать с такими протоколами, как I2C, SPI и UART.

Несколько контактов способны работать с ШИМ (широтно-импульсная модуляция). Raspberry Pi не имеет собственных возможностей аналогового ввода, но можно использовать АЦП для получения аналоговых показаний.
© digitrode.ru