diff --git a/rpi/spark_counter_receiver.c b/rpi/spark_counter_receiver.c deleted file mode 100644 index e71f057..0000000 --- a/rpi/spark_counter_receiver.c +++ /dev/null @@ -1,172 +0,0 @@ -/* This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - */ -/* Copyright (c) 2015 King Kévin */ -/* the spark counter receives electricity measurements over radio - * they are then received using an nRF2L01+ transceiver - * to communicate with the transceiver the RF24 library is requiered - * they are then stored in an InfluxDB time series database using the HTTP API - * to send values to the database the curl library is required - */ - -#include -#include -#include -#include -#include - -#include // http://tmrh20.github.io/RF24 library to communicate to the nRF24L01+ -#include // curl library to send the measurement data to the influxDB. - -// Setup for RPi B1 GPIO 22 CE and CE0 CSN with SPI Speed @ 8Mhz -RF24 radio(RPI_V2_GPIO_P1_22, BCM2835_SPI_CS0, BCM2835_SPI_SPEED_8MHZ); - -// nRF24L01+ addresses -const uint8_t tx_addr[] = {1,'h','o','m','e'}; -const uint8_t rx_addr[] = {0,'h','o','m','e'}; - -CURL *curl; // curl handle to post data to influxbd using the HTTP API - -int main(int argc, char** argv){ - - // configure influxdb connection - curl = curl_easy_init(); - if(curl) { - curl_easy_setopt(curl, CURLOPT_URL, "http://localhost:8086/write?db=electricity"); - } - - // configure nRF24L01+ radio - radio.begin(); - radio.setChannel(42); - radio.setPALevel(RF24_PA_MAX); - radio.setDataRate(RF24_1MBPS); - radio.setAutoAck(true); - radio.enableDynamicPayloads(); - radio.setRetries(2,15); - radio.setCRCLength(RF24_CRC_8); - radio.openWritingPipe(tx_addr); - radio.openReadingPipe(1,rx_addr); - //radio.printDetails(); - - printf("wait for packet to arrive\n"); - radio.startListening(); - while (1) { // forever loop - while (radio.available()) { - time_t ltime; // calendar time - ltime=time(NULL); // get current cal time - char stime[64]; // do display the time - strftime(stime, sizeof(stime), "%F %T %z %Z", localtime(<ime)); - printf("%s: payload received\n",stime); - uint8_t payload[32]; // buffer to save the payload - uint8_t size = radio.getDynamicPayloadSize(); - radio.read(&payload,size); -/* - printf("got %d bytes:",size); - for (uint8_t i=0; i