Merge pull request #6 from livello/pio-1

extracted MY_CONFIG_SERVER, edit README.md, small fixes
This commit is contained in:
2018-03-18 22:29:46 +03:00
committed by GitHub
3 changed files with 35 additions and 4 deletions

View File

@@ -77,4 +77,29 @@ First attempt to use platformio toolchain for compiling (work not completed yet)
# Due compilation issue "USART0_Handler redefinition"
Please, open /variants/arduino_due_x/variant.cpp file, then edit USART0_Handler method definition like this
void USART0_Handler(void) __attribute__((weak));
void USART0_Handler(void) __attribute__((weak));
# Platformio command line build instructions
First of all install platformio framework. http://docs.platformio.org/en/latest/installation.html
https://geektimes.ru/post/273852/ // Good tutorial for fast start in RUSSIAN
In linux you can open terminal, navigate to your programming directory, then
* git clone https://github.com/anklimov/lighthub.git
* cd lighthub
* pio init --ide clion // use your IDE, others here: http://docs.platformio.org/en/latest/ide.html
* export PLATFORMIO_BUILD_FLAGS="-DMY_CONFIG_SERVER=192.168.1.1 -DWATCH_DOG_TICKER_DISABLE=1"
set ip address of your configuration server and disable wdt feature in case bootloader of your mega2560 is stock
* pio run -e due // this will build firmware for arduino due board
* rm -Rf .piolibdeps // this will clean libraries folder. Try it if you have compilation problem
* pio run -e megaatmega2560 //build for arduino mega
* pio run -e due -t upload //build and upload firmware to arduino due

View File

@@ -88,7 +88,7 @@ Config webserver
#include <ArduinoHttpClient.h>
#endif
#ifdef WATCH_DOG_TICKER_DISABLE
#if defined(WATCH_DOG_TICKER_DISABLE)
#define wdt_en() wdt_disable()
#define wdt_dis() wdt_disable()
#define wdt_res() wdt_disable()
@@ -161,7 +161,7 @@ extern Artnet *artnet;
#define inprefix "/myhome/in/"
const char outprefix[] PROGMEM = "/myhome/s_out/";
#define subprefix "/myhome/in/#"
const char subprefix[] PROGMEM = "/myhome/in/#";
aJsonObject *root = NULL;
aJsonObject *items = NULL;
@@ -755,6 +755,11 @@ void saveFlash(short n, char* str)
void loadFlash(short n, char* str)
{}
#ifndef MY_CONFIG_SERVER
#define CONFIG_SERVER "lazyhome.ru"
#else
#define CONFIG_SERVER QUOTE(MY_CONFIG_SERVER)
#endif
int getConfig (int arg_cnt, char **args)
//(char *tokens)
{
@@ -763,7 +768,7 @@ int getConfig (int arg_cnt, char **args)
int returnCode =0;
char ch;
char URI [32];
char server[32] = "lazyhome.ru";
char server[sizeof(CONFIG_SERVER)+21] = CONFIG_SERVER;
if (arg_cnt>0) {
strncpy(server,args[1],sizeof(server)-1);
saveFlash(0,server);

View File

@@ -42,6 +42,7 @@ platform = atmelavr
board = megaatmega2560
framework = arduino
;lib_ldf_mode = chain+
build_flags = !echo -n "-DPIO_SRC_REV="$(git rev-parse --short HEAD)
lib_deps =
https://github.com/anklimov/Arduino-Temperature-Control-Library.git
https://github.com/anklimov/DS2482_OneWire