Commit graph

333 commits

Author SHA1 Message Date
Harald Pichler
9a2494583d bugfix compile error tostrf 2016-05-20 09:11:11 +02:00
harald42
abc5db04b2 bugfix start i2c and printf 2016-05-18 08:17:47 +02:00
harald42
a95b0c9d46 add BH1750 sensor example 2016-05-17 16:43:11 +02:00
Harald Pichler
944f1b06d6 add led resource 2016-04-24 17:45:35 +02:00
Ralf Schlatterbeck
04bbba6c12 Multi-platform support, osd-merkur-{128,256}
Rename guhRF platform to osd-merkur-256, previous osd-merkur platform is
now osd-merkur-128. Also check that everything is consistent.
Add both platforms to the regression tests.
Move redundant files in platform dev directory of both platforms to
cpu/avr/dev. Note that this probably needs some rework. Already
discovered some inconsistency in io definitions of both devices in the
avr/io.h includes. Added a workaround in the obvious cases.
The platform makefiles now set correct parameters for bootloader and for
reading mac-address from flash memory.
Factor the flash programming into cpu/avr and platform/osd-merkur* and
rework *all* osd example makefiles to use the new settings. Also update
all the flash.sh and run.sh to use the new settings.
The suli ledstrip modules (and osd example) have also been removed.
2016-04-22 17:59:40 +02:00
harald42
9a3c6adf8d add mcu_sleep routines 2016-04-12 10:34:40 +02:00
Ralf Schlatterbeck
743245e230 Add 'x' prefix to time functions
.. to avoid name-clashes with (some) libraries. This now also should
make it work for the 'native' target (untested).
2016-03-29 17:48:59 +02:00
harald42
682df76b79 add cputem to common resources and example 2016-03-03 10:32:38 +01:00
Harald Pichler
5a5ed6b990 cleanup code 2016-02-27 22:16:02 +01:00
Harald Pichler
6bdae7d9ec cleanup code 2016-02-27 22:14:56 +01:00
Harald Pichler
de928cd14e cleanup code 2016-02-27 22:10:53 +01:00
Ralf Schlatterbeck
6b40e88ecb Add cron functionality 2016-02-26 17:30:16 +01:00
Ralf Schlatterbeck
c6165a3bcf Refactor GENERIC_RESOURCE macro
Now callback functions get the URI of the request, this allows to use a
single resource for multiple different URIs.
The is_json flag is now gone for the to-string function, instead the
macro has an is_str flag. If set this automagically produces quotes
around the string for json output.
Now from-string functions can return an error-code, 0 for success, -1
for error.
2016-02-26 17:13:48 +01:00
harald42
c7daa7c45d add linux documentaion 2016-02-25 13:58:07 +01:00
harald42
2df628aa4b bugfix native boarder router 2016-02-25 13:37:08 +01:00
harald42
9bb1f01905 update to new version 2016-02-25 13:25:24 +01:00
harald42
b462052bf5 CRLF will be replaced by LF 2016-02-25 08:20:41 +01:00
harald42
e7f270cf37 crf replace by lf 2016-02-25 08:11:05 +01:00
harald42
a7b230a0b7 bugfix get macaddress 2016-02-24 08:29:24 +01:00
Harald Pichler
855bc65b8a initial upload 2016-02-23 20:32:53 +01:00
Harald Pichler
1e5163cbb3 bugfix remove testcode 2016-02-23 20:31:10 +01:00
Ralf Schlatterbeck
de6477efa8 Fix run.sh scripts to use jumptable of bootloader
Otherwise a crash results with a bootloader compiled with a newer AVR
toolchain (e.g. Debian Jessie). If you still have an ages-old bootloader
without a jump-table, as a short-term measure you can revert this change
in your run.sh. As a long-term fix we recommend you get your bootloader
updated!
2016-02-19 17:32:09 +01:00
Ralf Schlatterbeck
0068611b4d Implement localtime
Now we manage a timezone and daylight-savings aware version of
localtime. We parse UNIX timezone strings. The default (active after the
first call to localtime or localtime_r) is CET/CEST, the timezone of
Europe/Vienna. The wallclock-time osd-example demonstrates how to set a
different timezone via the timezone resource.

Note: After startup no timezone is set. So in this state querying the
timezone resource will return an empty string. After first call to
localtime (if not timezone has been set via the timezone resource) a
query to timezone will return the default timezone string for CET/CEST.

The string returned by the localtime and utc timezones now also includes
the timezone name.

New fields tm_gmtoff and tm_zone were added to the tm structure. These
are available in BSD systems and when setting special compiler
definitions on Linux.

Note: the timezone offset information in the tm structure (tm_gmtoff)
as well as in the tz structure returned by gettimeofday (tz_minuteswest)
may be wrong sign, this code is largely untested.
2016-02-18 09:55:07 +01:00
Harald Pichler
b8c5ee0e2b add Test code 2016-01-28 17:08:56 +01:00
Harald Pichler
c09625704c add exponential 2016-01-25 22:39:52 +01:00
Harald Pichler
f2fe41017b add linear lookup 2016-01-25 20:48:30 +01:00
Harald Pichler
681c514a18 add coap resourcen rgb 2016-01-25 20:41:26 +01:00
Harald Pichler
535194bcb4 add lookup table 2016-01-24 21:30:35 +01:00
Harald Pichler
44d4f855c6 add contiki combatibility 2016-01-24 16:04:37 +01:00
Harald Pichler
406d69a27c add RGBdriver 2016-01-23 17:49:51 +01:00
Harald Pichler
6fcdf21552 Merge branch 'osd' of https://github.com/osdomotics/osd-contiki into osd 2016-01-22 21:48:24 +01:00
Harald Pichler
c381f81f57 add experimental code netstack 2016-01-22 21:46:35 +01:00
root
e60fe15812 Merge branch 'osd' of https://github.com/osdomotics/osd-contiki into osd 2016-01-22 15:44:44 +01:00
Harald Pichler
fce1b561da initial upload 2016-01-22 15:41:55 +01:00
harald
0c3eeed1bf add leds 2016-01-19 14:01:28 +01:00
Harald Pichler
c2f9c584b9 at init set buzzer to low,at adc vonversion stop shedular dutycycle 2016-01-15 15:56:55 +01:00
Harald Pichler
836a483f7e bugfix dallas coap resource 2016-01-06 21:39:35 +01:00
Harald Pichler
d484585e39 bugfix scale 2015-12-22 06:37:40 +01:00
Harald Pichler
c493bc6618 initial upload 2015-11-29 22:34:24 +01:00
Harald Pichler
ba9d4ed578 add dallas ds1820 external sensor 2015-11-29 22:31:59 +01:00
Harald Pichler
67ed80e9fe move defines to servo.h 2015-11-28 18:45:15 +01:00
Harald Pichler
9b9958fb43 initial upload 2015-11-20 14:08:43 +01:00
Harald Pichler
fd24ecd26e add index and struct for messured values 2015-10-11 15:30:30 +02:00
Harald Pichler
e8471445ed add struct for sensors, add sketch.h 2015-10-11 15:22:49 +02:00
Harald Pichler
0a4938243e cleanup resources 2015-10-08 21:14:43 +02:00
Harald Pichler
4ff973a0cc mult. DS18B20 Temp demo 2015-10-07 16:14:00 +02:00
Harald Pichler
1a309e6632 bugfix project conf, do not sleep git add project-conf.h 2015-09-21 16:09:28 +02:00
Harald Pichler
a2e70d49f3 remove first space from converted string 2015-09-16 10:31:52 +02:00
Harald Pichler
6b41f23d59 make mcusleep variable, use mcusleepcycle 2015-09-15 09:52:06 +02:00
Harald Pichler
7404e75213 bugfix float resources, save energy enabled 2015-09-14 16:55:18 +02:00
Harald Pichler
e3ffbe36c8 bugfix printf and float 2015-09-14 10:51:16 +02:00
Harald Pichler
617d42663c add htu21d sensor and resources and set mesure inteval to 10 seconds 2015-09-11 21:41:24 +02:00
Ralf Schlatterbeck
7f09f96e88 Fix compile error
Wire.h is a C++ include-file and may not be within 'extern "C"'.
2015-09-11 15:10:28 +02:00
Harald Pichler
910dc981b5 initial upload 2015-09-04 14:04:11 +02:00
Harald Pichler
72c6c2c492 bugfix add status led 2015-05-21 22:14:39 +02:00
Harald Pichler
82d03d0ebf bugfix no framer 2015-05-15 20:59:59 +02:00
Harald Pichler
b2847f4756 add coap18 2015-04-29 15:58:42 +02:00
Harald Pichler
b97d6878c0 add coap18 2015-04-28 20:56:52 +02:00
Harald Pichler
a1423c28fc add coap18 2015-04-28 19:53:43 +02:00
Harald Pichler
12fe0d8442 change to coap18 2015-04-22 14:18:10 +02:00
David Rabel
65c50195c4 ressource handlers for servos corrected 2015-04-03 15:46:05 +02:00
David Rabel
0980393d22 Fix servo example 2015-04-03 14:31:25 +02:00
David Rabel
3ba9009f50 Use servo instead of t4-servo 2015-04-03 14:29:52 +02:00
Harald Pichler
0097d192be move dht11 define to project.conf 2015-03-23 13:03:32 +01:00
Harald Pichler
9dd81946d3 add coap 18 2015-02-10 20:16:51 +01:00
Harald Pichler
c30493e535 add Buzzer 2015-02-05 13:44:05 +01:00
Ralf Schlatterbeck
451e2df0f5 Fix IP-Address output (endianness!) 2015-01-27 16:41:30 +01:00
Ralf Schlatterbeck
5ff9b7c989 Don't re-init coap connection 2015-01-27 16:04:07 +01:00
Ralf Schlatterbeck
058ae7bae3 Alleged race-condition was a bug in receiver
Handling put-requests was missing a trailing \0 in the parsed string.
2015-01-27 10:43:03 +01:00
Ralf Schlatterbeck
16afb4b74c Workaround for race-condition 2015-01-27 10:06:22 +01:00
Ralf Schlatterbeck
c8be130f2e Finally fix LED-Strip driver
.. and adapt led-strip.c to changed polarity (again).
2015-01-26 20:44:30 +01:00
Ralf Schlatterbeck
301d8d77bb Non-blocking send 2015-01-26 17:59:14 +01:00
Ralf Schlatterbeck
42f985a297 Add potentiometer app for setting led intensity 2015-01-26 17:27:12 +01:00
Ralf Schlatterbeck
a2357e648e Invert LED count, use fixed led driver 2015-01-25 19:04:04 +01:00
Ralf Schlatterbeck
f6c158a139 Merge branch 'osd' of github.com:osdomotics/osd-contiki into osd 2015-01-25 18:32:07 +01:00
Ralf Schlatterbeck
e946cd4c13 Add LED strip example
.. not yet working
2015-01-25 18:31:17 +01:00
Harald Pichler
df220072f4 initial upload 2015-01-22 14:03:29 +01:00
Harald Pichler
801316badc update coap 18 macros 2015-01-22 14:01:36 +01:00
Harald Pichler
7b25177a3d Merge branch 'osd' of https://github.com/osdomotics/osd-contiki into osd 2015-01-22 08:56:16 +01:00
Ralf Schlatterbeck
baaa2c5741 Factor/Fix generic resources
Now the old GENERIC_RESOURCE macros works again (but usage has changed).
Common resources (battery, leds, radio) are now in resources-common.
2015-01-21 15:41:21 +01:00
Harald Pichler
75d577c9b5 blocksize 64 2015-01-21 15:08:23 +01:00
Harald Pichler
76e39b2b5d update coap 18 2015-01-21 14:46:36 +01:00
Harald Pichler
a8728413b2 initial upload 2014-12-31 10:00:09 +01:00
Harald Pichler
2d52ca9051 inital upload 2014-12-31 09:56:05 +01:00
Harald Pichler
2d3cd057c4 initial upload 2014-12-31 09:55:31 +01:00
Harald Pichler
d742fc4b76 changes for coap18 2014-12-31 09:53:24 +01:00
Harald Pichler
2b8aeee115 save energy 2014-12-29 13:05:50 +01:00
Harald Pichler
365fe31b02 coap 18 2014-12-29 08:16:47 +01:00
Harald Pichler
aaaa0aa138 cleanup code, batterie value Volt 2014-12-29 08:11:51 +01:00
Harald Pichler
a8c87e3f54 read better values 2014-12-29 08:10:10 +01:00
Harald Pichler
df95393980 remove init pwm per default, switch moisture sensor on and off to save energy 2014-12-12 08:47:01 +01:00
Harald Pichler
76ea945fd7 add power save mode RDC_CONF_PT_YIELD_OFF 2014-12-09 16:42:45 +01:00
Harald Pichler
248a1e3882 add leds and battery 2014-12-09 14:36:06 +01:00
Harald Pichler
cc0539ee90 remove unused examples 2014-12-07 21:55:43 +01:00
Harald Pichler
fed6fe019c change to coap18 2014-12-07 21:39:46 +01:00
Harald Pichler
13aa2a1415 add coap18 2014-12-07 21:32:03 +01:00
Harald Pichler
d6144bfebe cleanup makefile, add avr-size 2014-12-07 20:10:53 +01:00
Harald Pichler
ed161d1905 NETSTACK_CONF_WITH_IPV6 2014-12-07 17:36:53 +01:00
Harald Pichler
9c90608d3c bugfix hum temp 2014-11-28 14:04:39 +01:00
Harald Pichler
730d9e2d11 add battery 2014-11-27 15:01:07 +01:00
Harald Pichler
1dacefce01 add coap18 2014-11-27 14:07:14 +01:00
Harald Pichler
41f8a9c661 add coap18 2014-11-27 09:30:36 +01:00
Harald Pichler
698d8dce90 add coap18 2014-11-26 21:47:00 +01:00
Harald Pichler
824eca3b61 cleanup code, move ds1820 to resources 2014-11-26 17:12:34 +01:00
Harald Pichler
7a666307cf add coap 18 2014-11-26 16:46:13 +01:00
Harald Pichler
9eb0c5466f initial uplaod 2014-11-21 09:44:25 +01:00
Harald Pichler
6167835689 use contiki mac 2014-11-20 16:32:22 +01:00
Harald Pichler
e58322260f update llayer 2014-11-20 13:43:53 +01:00
Harald Pichler
d8e0dd7005 update to coap rfc 2014-11-19 22:06:38 +01:00
Harald Pichler
8966f7d509 update project to coap 13 2014-11-19 13:59:05 +01:00
Harald Pichler
0620eb86d0 initial upload 2014-11-19 13:58:56 +01:00
Harald Pichler
0c7328b59d initial upload 2014-11-19 13:58:50 +01:00
Harald Pichler
dfaa8c0f32 initial upload 2014-11-19 13:58:32 +01:00
Harald Pichler
914f5b931b initial upload 2014-11-19 13:58:24 +01:00
Harald Pichler
1b40bccb00 initial upload 2014-11-19 13:58:02 +01:00
powermik
8bb7d82a2d UNSUPPORTED_MADIA_TYPE is a typo 2014-11-19 13:55:59 +01:00
Harald Pichler
21bbe79079 use Arduino like optotriac driver 2014-11-19 13:54:53 +01:00
Harald Pichler
026b961d5e simplify code, bugfixes PE3 2014-11-19 13:54:42 +01:00
Ralf Schlatterbeck
53cf5ab6cf Fix A0-A5 ADC constants, use in example sketch 2014-11-19 13:53:59 +01:00
Ralf Schlatterbeck
fbe6ae6a60 Fix off-by-one error in digitalPinToTimer 2014-11-19 13:53:53 +01:00
Ralf Schlatterbeck
ddbfd6712c Remove obsolet macro in example 2014-11-19 13:53:44 +01:00
Ralf Schlatterbeck
abdf6f8c6b Refactor A/D conversion in adc.c
Now the necessary settings are in adc.h. Refactored to allow repeated
ADC reads without reinitialization. Arduino allows setting
analogReference, this is now also implemented.
ADC is now initialized to sane values in apps/arduino/arduino-process.c
dev/arduino/arduino-compat.h now has all hardware independent settings
for arduino (some moved from platform/osd-merkur/dev/hw-arduino.h).
turnOffPWM re-implemented with hw_timer, removed from wiring_digital.c
ADC-specific arduino stuff moved to arduino-compat.h
Arduinos wiring_analog no longer necessary.
arduino-sketch example now reads analog inputs 1 and 5 using analogRead.
2014-11-19 13:53:32 +01:00
Ralf Schlatterbeck
d5284eebe1 Factor resources, fix time
Now there is a generic resource that can generate and parse
application/json as well as text/plain. It can be re-used, only the
from_string and to_string routines have to be written and the resource
properly set up. A new resource format is specified, see
GENERIC_RESOURCE in, e.g., examples/osd/pwm-example. This is now used in
all my examples, namely pwm-example, arduino-sketch, wallclock-time.

There was an off by one error for the month in time formatting (in
gmtime and localtime). And the leap-year computation was broken. Both
fixed now, so we get a correct date. For localtime we are still 2 hours
off because daylight saving isn't implemented yet.

Also renamed gmtime to utc.
2014-11-19 13:53:12 +01:00
Ralf Schlatterbeck
c46d6afa39 Make Arduino timer stuff work on Contiki
New discovery: Contiki also uses timer 0. With almost the same interface
as Arduino. So we now completely get rid of wiring.c (only the main
file, the other wiring_xxx stay) and implement Arduino timer, delay, etc
in terms of the corresponding Contiki routines. Verified that now delay
works as expected. The LED in examples/osd/arduino-sketch blinks!

Before this, the arduino_init routine in wiring.c destroyed the timer-0
initialization of contiki, making both, contiki timer implementation
*and* contiki timer implementation fail if the arduino_init routine was
called. Now both work.

Squashed with following bug-fix commit.
2014-11-19 13:50:58 +01:00
Ralf Schlatterbeck
b6be226e69 Add Arduino compatibility layer
We can now directly compile arduino sketches (.pde) files.
Arduino compatible analogWrite works now.
But there is still a long way to go, serial I/O and timer stuff (delay,
millis etc) currently don't work (not tested but I don't expect this to
work).
It can be used in an arduino sketch or in a normal contiki program.
We get a PWM frequency of 490.2 Hz (a period of 2.040 ms), that's
Arduino compatible. If you need different frequencies see native timer
usage in examples/osd/pwm-example
In a contiki program you have to call arduino_pwm_timer_init to
initialize the timer before pwm works. The arduino sketch wrapper
already does this.
For running a sketch, see examples/osd/arduino-sketch
2014-11-19 13:48:05 +01:00
Ralf Schlatterbeck
cfec3c6e2d Initial implementation of avr hardware timer
Mainly for PWM use for now.
With example to set the LED to different brightness via COAP.
We switch the LED with 50 kHz (20µs) in this example.
2014-11-19 13:47:37 +01:00
Ralf Schlatterbeck
b4fb8c3f52 Add wallclock time handling
New application and new example.
We use the built-in timer routines and add an offset to get the
wallclock time. The offset can be set by time-changing routines
(currently only settimeofday).
We also maintain an offset for timezone handling but this isn't
currently fully implemented.
2014-11-19 13:43:45 +01:00
Harald Pichler
b886a1faaf initial upload 2014-11-19 13:43:19 +01:00
Harald Pichler
15bab74093 initial upload 2014-11-19 13:43:12 +01:00
Harald Pichler
465eb28382 cleanup code 2014-11-19 13:43:05 +01:00
Harald Pichler
38dbf611e6 add Arduino pin definition and commands 2014-11-19 13:42:57 +01:00
Ralf Schlatterbeck
56f6f87c94 Allow changing bootloader_get_mac address
Current default in the Makefile is the *new* bootloader address.
But for backward compatibility we've modified the run*.sh files
to use the old address. The run*.sh also now explain how to change
the default.
2014-11-19 13:42:35 +01:00
Harald Pichler
1efbe0736a change resources to simple and make climate2 default 2014-11-19 13:42:13 +01:00
Harald Pichler
d90e0d622d get s/button ->show button status 0/1 2014-11-19 13:42:05 +01:00
Harald Pichler
c106898d2b add 0.5s delay between off and on 2014-11-19 13:41:54 +01:00
Harald Pichler
94d764e4cb add timer and shutter functionality 2014-11-19 13:41:48 +01:00
Harald Pichler
4d383eb923 change to port F6,F7 2014-11-19 13:41:18 +01:00
Harald Pichler
678891a1a9 change battery and cpttem format to xx.xx 2014-11-19 13:41:08 +01:00
Harald Pichler
a656cf1dcd add shutter control resources, reset,timer 2014-11-19 13:41:00 +01:00
Harald Pichler
03a4081913 add contiki led, remove led1,led2 2014-11-19 13:40:52 +01:00
Harald Pichler
8905f35d72 simplify project-conf.h 2014-11-19 13:40:45 +01:00
Harald Pichler
26b1e874d6 bugfix statusled include 2014-11-19 13:40:38 +01:00
Harald Pichler
affe81cc6d bugfix includes and names 2014-11-19 13:40:29 +01:00
Harald Pichler
1ca7b52217 remove not needed binary files 2014-11-19 13:39:43 +01:00
Harald Pichler
46df18ceb1 add /s/cputemp resource 2014-11-19 13:39:26 +01:00
Harald Pichler
a90a6e0f65 add /p/name and p/model resource, remove info 2014-11-19 13:39:19 +01:00
Marcus Priesch
630bd8e9e4 Factored to support configurable amount of pwm's, fixes 2014-11-19 13:38:58 +01:00
Marcus Priesch
85d29b6473 initial check in 2014-11-19 13:38:51 +01:00
Harald Pichler
088c7118e0 compile all osd-examples 2014-11-19 13:38:38 +01:00
Harald Pichler
4760891bb4 simplified led resource to one led actuator 2014-11-19 13:38:29 +01:00