From cd37805f7008849adce4b141f1dde8b7442b6f1f Mon Sep 17 00:00:00 2001 From: giomba Date: Tue, 31 Dec 2019 10:42:25 +0100 Subject: [PATCH] repository structured as an arduino library --- .../simple-udp-server/simple-udp-server.ino | 0 library.properties | 9 +++++++++ coppino.ino => src/coppino.cpp | 0 coppino.h => src/coppino.h | 2 ++ ipv6.ino => src/ipv6.cpp | 0 ipv6.h => src/ipv6.h | 3 +++ slip.ino => src/slip.cpp | 6 ++++-- slip.h => src/slip.h | 2 ++ udp.ino => src/udp.cpp | 0 udp.h => src/udp.h | 5 ++++- 10 files changed, 24 insertions(+), 3 deletions(-) rename coppino-main.ino => examples/simple-udp-server/simple-udp-server.ino (100%) create mode 100644 library.properties rename coppino.ino => src/coppino.cpp (100%) rename coppino.h => src/coppino.h (82%) rename ipv6.ino => src/ipv6.cpp (100%) rename ipv6.h => src/ipv6.h (98%) rename slip.ino => src/slip.cpp (92%) rename slip.h => src/slip.h (92%) rename udp.ino => src/udp.cpp (100%) rename udp.h => src/udp.h (95%) diff --git a/coppino-main.ino b/examples/simple-udp-server/simple-udp-server.ino similarity index 100% rename from coppino-main.ino rename to examples/simple-udp-server/simple-udp-server.ino diff --git a/library.properties b/library.properties new file mode 100644 index 0000000..4904269 --- /dev/null +++ b/library.properties @@ -0,0 +1,9 @@ +name=Coppino +version=2019.12 +author=Giovan Battista Rolandi +maintainer=Giovan Battista Rolandi +sentence=A simple minimalistic IPv6 stack to connect Arduino to the Internet via serial port. +paragraph=This library allows an Arduino board to act as an IPv6 host connected to the serial port. A global address can be used, allowing Arduino to act as an IoT server. IPv6 auto-configuration is supported, basic ICMP and UDP server. +category=Communication +url=https://git.golem.linux.it/giomba/coppino +architectures=* diff --git a/coppino.ino b/src/coppino.cpp similarity index 100% rename from coppino.ino rename to src/coppino.cpp diff --git a/coppino.h b/src/coppino.h similarity index 82% rename from coppino.h rename to src/coppino.h index e917fd8..a01764d 100644 --- a/coppino.h +++ b/src/coppino.h @@ -1,7 +1,9 @@ #ifndef COPPINO_H #define COPPINO_H +#include "Arduino.h" #include "ipv6.h" +#include "slip.h" namespace coppino { const uint8_t LEN = 128; diff --git a/ipv6.ino b/src/ipv6.cpp similarity index 100% rename from ipv6.ino rename to src/ipv6.cpp diff --git a/ipv6.h b/src/ipv6.h similarity index 98% rename from ipv6.h rename to src/ipv6.h index 8a271b4..39b0347 100644 --- a/ipv6.h +++ b/src/ipv6.h @@ -1,6 +1,9 @@ #ifndef COPPINO_IPV6_H #define COPPINO_IPV6_H +#include "Arduino.h" +#include "slip.h" + namespace ipv6 { /* maximum length for an IPv6 packet */ const uint8_t LEN = 128; diff --git a/slip.ino b/src/slip.cpp similarity index 92% rename from slip.ino rename to src/slip.cpp index 5866f79..99fbd20 100644 --- a/slip.ino +++ b/src/slip.cpp @@ -1,7 +1,9 @@ +#include "slip.h" + namespace slip { void send(const char* buffer, int len) { - // Serial.write(END); /* frame-out any possible noise on the line */ + // Serial.write(END); // frame-out any possible noise on the line for (int i = 0; i < len; ++i) { switch (buffer[i]) { @@ -49,7 +51,7 @@ namespace slip { } } } - + return i; } diff --git a/slip.h b/src/slip.h similarity index 92% rename from slip.h rename to src/slip.h index a637142..04b4cfd 100644 --- a/slip.h +++ b/src/slip.h @@ -1,6 +1,8 @@ #ifndef COPPINO_SLIP_H #define COPPINO_SLIP_H +#include "Arduino.h" + namespace slip { const char END = 0xc0; diff --git a/udp.ino b/src/udp.cpp similarity index 100% rename from udp.ino rename to src/udp.cpp diff --git a/udp.h b/src/udp.h similarity index 95% rename from udp.h rename to src/udp.h index 9624161..75dde1f 100644 --- a/udp.h +++ b/src/udp.h @@ -1,6 +1,9 @@ #ifndef COPPINO_UDP_H #define COPPINO_UDP_H +#include "Arduino.h" +#include "ipv6.h" + namespace udp { class UDPPacket { private: @@ -22,6 +25,6 @@ namespace udp { extern int(*server_handler) (char* output_buffer, const char* buffer, int size); extern uint16_t server_port; void set_handler(uint16_t port, int(* handler) (char* output_buffer, const char* input_buffer, int size)); -} +} #endif