Particle IO Photon¶
Pinout¶

Prerequisities¶
Install the dfu-utility.
git clone git://git.code.sf.net/p/dfu-util/dfu-util
cd dfu-util
sudo apt-get build-dep dfu-util
./autogen.sh
./configure
make
sudo make install
cd ..
# Give users access to the device.
sudo cp simba/environment/udev/49-photon.rules /etc/udec/rules.d
Flashing¶
The Photon must enter DFU mode before software can be uploaded to it. It’s recommended to use the manual method to verify that software can be successfully uploaded to the board, and then start using the automatic method to reduce the manual work for each software upload.
Automatic (recommended)¶
- Connect DTR on the serial adapter to the RST pin on the Photon.
- Connect RTS on the serial adapter to the SETUP pad on the bottom side of the Photon. This requires soldering a cable to the SETUP pad.
Upload the software with make BOARD=photon upload
.
Manual¶
To enter DFU Mode:
- Hold down the RESET and SETUP buttons.
- Release only the RESET button, while holding down the SETUP button.
- Wait for the LED to start flashing yellow (it will flash magenta first).
- Release the SETUP button.
NOTE: Do not connect DTR and/or RTS using manual upload. They must only be connected using the automatic method.
Upload the software with make BOARD=photon upload
.
Default system features¶
The default configuration includes those major features. They are all
initialized by sys_start()
at the startup of the application.
Drivers¶
Supported drivers for this board.
- bmp280 — BMP280 temperature and pressure sensor
- ds18b20 — One-wire temperature sensor
- ds3231 — RTC clock
- eeprom_i2c — I2C EEPROM
- eeprom_soft — Software EEPROM
- flash — Flash memory
- gnss — Global Navigation Satellite System
- hd44780 — Dot matrix LCD
- hx711 — HX711 ADC for weigh scales
- i2c — I2C
- i2c_soft — Software I2C
- jtag_soft — Software JTAG
- owi — One-Wire Interface
- pin — Digital pins
- sht3xd — SHT3x-D Humidity and Temperature Sensor
- uart — Universal Asynchronous Receiver/Transmitter
- xbee — XBee
- xbee_client — XBee client
Library Reference¶
Read more about board specific functionality in the Particle IO Photon module documentation in the Library Reference.
Memory usage¶
Below is the memory usage of two applications:
- The minimal-configuration application is configured to only include the bare minimum of functionality for the low level kernel to run. That is, the thread scheduler and system tick.
- The default-configuration application is built with the default configuration, including a lot more functionality. See the list of Default system features above for a summary.
Application | Flash | RAM |
---|---|---|
minimal-configuration | 2668 | 1679 |
default-configuration | 73576 | 5937 |
Default configuration¶
Default Standard Library configuration.