I’m happy to be able to bring all of you an update to the Particle on Raspberry Pi beta that contain the most requested improvements from the past few months.
- Implement hardware serial (Serial1). IMPORTANT: Serial must be enabled in raspi-config
- Support for Raspberry Pi 1
- Verified compatibility with Raspbery Pi Zero and Zero W
- Support for Linux kernel 4.9 (rpi-update)
- Lower CPU usage by adding a delay of 5 ms between loop() to prevent overheating on the Raspberry Pi Zero and Zero W
To enable Serial1, run
sudo raspi-config, go to Interfacing Options, Serial and say No to the login shell over serial and Yes to enabling serial. Exit raspi-config and reboot and Serial1 will be enabled.
On the Raspberry Pi 1, only pins D0, D1, D2, D3, D9, D10, D11, D12 are available, as well as I2C, SPI and Serial1, i.e. the pinout is the same but only the top 26 pins out of 40 are available. Toggling D7 will turn a green LED on and off, but the associated hardware pin is not exposed on the GPIO connector.
To change the default delay between invocations of
SYSTEM_LOOP_DELAY(ms); at the top of your program where
ms is the desired delay in milliseconds. Use
SYSTEM_LOOP_DELAY(0); for running the firmware as fast as possible. This will make your Pi run hot. You can also use a longer delay to reduce the CPU usage even further if you don’t need to access the hardware so frequently.
How to upgrade
Most of the changes are in the cloud compiler, so simply reflash and you’re good to go!
If you have a Raspberry Pi 1 or plan to upgrade your kernel with
raspi-update, you should reinstall the agent with the usual command:
bash <( curl -sL https://particle.io/install-pi )
The new version numbers are:
- Firmware in cloud compiler: 0.5.1-pi.12
- Particle Agent: 0.2.4-1