This project is an Elixir Nerves firmware that implements a thermal camera using the Melexis MLX90640 sensor. It is tested on a Raspberry Pi Zero W, but it should work on other WiFi-enabled Raspberri Pi models too.
Other platforms supported by Nerves should work too, but may need modifications.
The pre-requisite is that you have installed the Elixir language, Nerves, and Node.js. You can find installation guides on their respective websites.
Then:
- Clone or download the repository and open your terminal
cd
into the project directory and set the following environment variables:export MIX_TARGET=rpi0 # (or another Nerves target like `rpi3`) export MIX_ENV=prod # In the following two commands, replace `your_ssid` with your WiFi SSID # and `your_psk` with your WiFi password export NERVES_NETWORK_SSID=your_ssid export NERVES_NETWORK_PSK=your_psk
- Run
make firmware
to build the firmware - Insert the SD card in your computer and, from the same terminal window as
before, run
make firmware.burn
to burn the firmware on the SD card.
The SD card should now be ready.
- Follow the instructions above to burn a firmware image on the SD card
- Wire the MLX90640 to the Raspberry Pi
- Turn on the Raspberry Pi and wait for it to connect to the WiFi network
- From another device (computer or smartphone) connected to the same WiFi, visit http://thermalcam.local