soft/lpc122x/core
2 years agoUpdated font to get up and down arrow and "°"
Nathael Pajani [Fri, 12 Jun 2020 23:31:14 +0000 (01:31 +0200)]
Updated font to get up and down arrow and "°"

2 years agoUpdate WS2812FX lib
Nathael Pajani [Fri, 12 Jun 2020 14:38:37 +0000 (16:38 +0200)]
Update WS2812FX lib

2 years agoAdd include guards
Nathael Pajani [Fri, 12 Jun 2020 14:37:51 +0000 (16:37 +0200)]
Add include guards

2 years agoUpdate of lib/utils : make min and max inline, and add abs and constrain
Nathael Pajani [Fri, 12 Jun 2020 14:37:30 +0000 (16:37 +0200)]
Update of lib/utils : make min and max inline, and add abs and constrain

2 years agoFixes to dtplug protocol
Nathael Pajani [Fri, 12 Jun 2020 10:31:07 +0000 (12:31 +0200)]
Fixes to dtplug protocol

2 years agoModify the ws2812 driver to support multiple led strips.
Nathael Pajani [Fri, 12 Jun 2020 10:28:58 +0000 (12:28 +0200)]
Modify the ws2812 driver to support multiple led strips.

2 years agoRemove old version of WS2812 effects
Nathael Pajani [Fri, 12 Jun 2020 10:28:01 +0000 (12:28 +0200)]
Remove old version of WS2812 effects

2 years agoAdding script to update (increment) firmware version number used for scialys app...
Nathael Pajani [Thu, 11 Jun 2020 19:13:12 +0000 (21:13 +0200)]
Adding script to update (increment) firmware version number used for scialys app, may be used by any app.

2 years agoFix for un-initialised buffer content when sending empty packets. Updated comments
Nathael Pajani [Thu, 11 Jun 2020 19:10:45 +0000 (21:10 +0200)]
Fix for un-initialised buffer content when sending empty packets. Updated comments

2 years agoFix in CC1101 support
Nathael Pajani [Thu, 11 Jun 2020 19:09:37 +0000 (21:09 +0200)]
Fix in CC1101 support

2 years agoTypo (copy paste) fix in comments
Nathael Pajani [Thu, 11 Jun 2020 19:09:00 +0000 (21:09 +0200)]
Typo (copy paste) fix in comments

2 years agoadd LPC_TIMER_INT_RESET_ON_MATCH define
Nathael Pajani [Thu, 11 Apr 2019 13:58:40 +0000 (15:58 +0200)]
add LPC_TIMER_INT_RESET_ON_MATCH define

2 years agoAdd rtc_pcf85363_daytime_to_seconds and rtc_pcf85363_seconds_to_daytime
Nathael Pajani [Thu, 11 Apr 2019 13:51:18 +0000 (15:51 +0200)]
Add rtc_pcf85363_daytime_to_seconds and rtc_pcf85363_seconds_to_daytime

2 years agoChange the lenght value, not the address of the pointer to the length value
Nathael Pajani [Sat, 16 Mar 2019 16:30:52 +0000 (17:30 +0100)]
Change the lenght value, not the address of the pointer to the length value

2 years agoUse return value in order to return the topic string size as the topic string is...
Nathael Pajani [Sat, 16 Mar 2019 16:30:08 +0000 (17:30 +0100)]
Use return value in order to return the topic string size as the topic string is not null terminated.

2 years agothere is no packet ID in mqtt publish packets for QoS 0 publish
Nathael Pajani [Sat, 16 Mar 2019 16:28:02 +0000 (17:28 +0100)]
there is no packet ID in mqtt publish packets for QoS 0 publish

2 years agoUse memcpy as data may not be word aligned
Nathael Pajani [Sat, 16 Mar 2019 16:26:49 +0000 (17:26 +0100)]
Use memcpy as data may not be word aligned

2 years agoreplace "response" by "reply" and add support for subscribe (under test) and ping...
Nathael Pajani [Sat, 16 Mar 2019 16:25:30 +0000 (17:25 +0100)]
replace "response" by "reply" and add support for subscribe (under test) and ping (not tested)

2 years agoUse struct mqtt_topic for topic names
Nathael Pajani [Sat, 16 Mar 2019 16:20:52 +0000 (17:20 +0100)]
Use struct mqtt_topic for topic names

2 years agoFinally, support multiple topics at once using an array and array_size field
Nathael Pajani [Sat, 16 Mar 2019 16:15:26 +0000 (17:15 +0100)]
Finally, support multiple topics at once using an array and array_size field

2 years agoAdding ws2812fx lib and its single-led version ws2812sfx
Cyprien Laplace [Mon, 11 Mar 2019 01:32:50 +0000 (21:32 -0400)]
Adding ws2812fx lib and its single-led version ws2812sfx

2 years agoFix byte_swap_16, ntohs and htons types
Cyprien Laplace [Mon, 11 Mar 2019 02:15:59 +0000 (22:15 -0400)]
Fix byte_swap_16, ntohs and htons types

All these functions are using 16-bits arguments and results.

2 years agoFix copy of uint16_t to buff, destination may not be aligned on word boundary.
Nathael Pajani [Sun, 10 Mar 2019 02:00:37 +0000 (03:00 +0100)]
Fix copy of uint16_t to buff, destination may not be aligned on word boundary.

2 years agoSome more parts of MQTT protocol support Compiles, untested.
Nathael Pajani [Fri, 8 Mar 2019 16:32:10 +0000 (17:32 +0100)]
Some more parts of MQTT protocol support Compiles, untested.

2 years agoChange how MQTT strings are stored
Nathael Pajani [Fri, 8 Mar 2019 16:30:26 +0000 (17:30 +0100)]
Change how MQTT strings are stored

2 years agoMQTT protocol support going on, adding connack packet check. Compiles but still untested.
Nathael Pajani [Wed, 6 Mar 2019 00:31:26 +0000 (01:31 +0100)]
MQTT protocol support going on, adding connack packet check. Compiles but still untested.

2 years agoMQTT protocol support going on, compiles but still untested.
Nathael Pajani [Tue, 5 Mar 2019 23:38:06 +0000 (00:38 +0100)]
MQTT protocol support going on, compiles but still untested.

2 years agoConform to libc headers for htons and ntohs functions returning uint16_t
Nathael Pajani [Tue, 5 Mar 2019 23:36:38 +0000 (00:36 +0100)]
Conform to libc headers for htons and ntohs functions returning uint16_t

2 years agoFirst parts of MQTT protocol support
Nathael Pajani [Tue, 5 Mar 2019 14:28:42 +0000 (15:28 +0100)]
First parts of MQTT protocol support

2 years agoRemove extra space in comment and add define for user info pages size in user flash
Nathael Pajani [Tue, 5 Mar 2019 14:24:37 +0000 (15:24 +0100)]
Remove extra space in comment and add define for user info pages size in user flash

2 years agoUpdate all files to mention version 3 of the GPL.
Nathael Pajani [Thu, 21 Feb 2019 15:34:16 +0000 (16:34 +0100)]
Update all files to mention version 3 of the GPL.

2 years agoAdd support for deep sleep Wake-up not fully implemented, use NVIC_SystemReset()...
Nathael Pajani [Mon, 7 Jan 2019 22:21:37 +0000 (23:21 +0100)]
Add support for deep sleep Wake-up not fully implemented, use NVIC_SystemReset() to reset the micro-controller if you do not want to fix the wake-up part.

2 years agoAdd cc1101_enter_wake_on_radio() To Be Tested
Nathael Pajani [Mon, 7 Jan 2019 22:18:56 +0000 (23:18 +0100)]
Add cc1101_enter_wake_on_radio() To Be Tested

2 years agoalso keep an untracked dev directory for host code
Nathael Pajani [Thu, 3 Jan 2019 21:26:51 +0000 (22:26 +0100)]
also keep an untracked dev directory for host code

2 years agoThis is DEEP power down bit, not "power down".
Nathael Pajani [Thu, 3 Jan 2019 16:56:06 +0000 (17:56 +0100)]
This is DEEP power down bit, not "power down".

2 years agoAdd function to get back to normal state upon Rx error.
Nathael Pajani [Thu, 3 Jan 2019 16:54:16 +0000 (17:54 +0100)]
Add function to get back to normal state upon Rx error.

2 years agoRemove unnecessary intermediate var
Nathael Pajani [Thu, 3 Jan 2019 16:53:15 +0000 (17:53 +0100)]
Remove unnecessary intermediate var

2 years agoTemperature can be negative, use signed integer.
Nathael Pajani [Thu, 3 Jan 2019 16:52:05 +0000 (17:52 +0100)]
Temperature can be negative, use signed integer.

2 years agoFix interverted parameter names
Nathael Pajani [Thu, 3 Jan 2019 16:50:50 +0000 (17:50 +0100)]
Fix interverted parameter names

2 years agoAdd condition to allow inclusion in host code
Nathael Pajani [Thu, 3 Jan 2019 16:49:37 +0000 (17:49 +0100)]
Add condition to allow inclusion in host code

2 years agoSo true. Hope we are not too far from good ones :)
Nathael Pajani [Sat, 1 Dec 2018 13:24:32 +0000 (14:24 +0100)]
So true. Hope we are not too far from good ones :)

2 years agoA little bit more readable
Nathael Pajani [Sat, 1 Dec 2018 13:20:26 +0000 (14:20 +0100)]
A little bit more readable

2 years agoAdd support for continuous conversion mode
Nathael Pajani [Sat, 1 Dec 2018 13:19:47 +0000 (14:19 +0100)]
Add support for continuous conversion mode

2 years agoUse appropriate defined value
Nathael Pajani [Sat, 1 Dec 2018 13:19:17 +0000 (14:19 +0100)]
Use appropriate defined value

2 years agooled: add support for SPI ssd130x displays
Cyprien Laplace [Sat, 24 Jun 2017 20:47:22 +0000 (16:47 -0400)]
oled: add support for SPI ssd130x displays

For I2C displays, the bus_type needs to be added:

+   .bus_type = SSD130x_BUS_I2C,
    .address = DISPLAY_ADDR,
    .bus_num = I2C0,

To use a SPI display:

1/ add the SSP include:

    #include "drivers/ssp.h"

2/ add the SPI pins to the init table:

    /* SPI : Display */
    { LPC_SSP0_SCLK_PIO_0_14, LPC_IO_DIGITAL },
    { LPC_SSP0_MISO_PIO_0_16, LPC_IO_DIGITAL },
    { LPC_SSP0_MOSI_PIO_0_17, LPC_IO_DIGITAL },

3/ update the oled_display conf:

    .bus_type = SSD130x_BUS_SPI,
    .bus_num = SSP_BUS_0,
    .gpio_dc = LPC_GPIO_0_0,
    .gpio_cs = LPC_GPIO_1_0,
    .gpio_rst = LPC_GPIO_0_31,

4/ initialize the SPI bus:

    ssp_master_on(SSP_BUS_0, LPC_SSP_FRAME_SPI, 8, 8*1000*1000);

2 years agooled: make async/sync mode configurable
Cyprien Laplace [Wed, 21 Jun 2017 00:11:45 +0000 (20:11 -0400)]
oled: make async/sync mode configurable

A new "async" parameter in the display structure let the user choose
between asynchronous or synchronous screen updates. This affects both
fullscreen and tiled updates.

Also only re-send the full window when needed. WARNING: this only
tracks driver updates of it...

2 years agoFix comments
Nathael Pajani [Sun, 1 Oct 2017 00:55:55 +0000 (02:55 +0200)]
Fix comments

2 years agoChirp I2C Soil moisture sensors support
Nathael Pajani [Sun, 1 Oct 2017 00:55:27 +0000 (02:55 +0200)]
Chirp I2C Soil moisture sensors support

2 years agocleaner asm
David Odin [Tue, 20 Jun 2017 23:13:16 +0000 (01:13 +0200)]
cleaner asm

2 years agoAllow asm source files
David Odin [Mon, 19 Jun 2017 17:47:44 +0000 (19:47 +0200)]
Allow asm source files

2 years agoi2c: add asynchronous write
Cyprien Laplace [Sat, 17 Jun 2017 14:58:22 +0000 (10:58 -0400)]
i2c: add asynchronous write

i2c_read() and i2c_write() are blocking functions, and their comments
have been updated to reflect this.

The new i2c_write_async() function is starting an i2c transfer, and
returns immediatly. All i2c transfer functions will now return -EAGAIN
if there is already a transfer in progress (-EBUSY was conflicting with
arbitration lost).

ssd130x_display_full_screen() has been updated to use this new
asynchronous write to start the transfer of the full screen. All
i2c_write* calls are placed in a retry loop if the call returns -EAGAIN.

2 years agoEcho on serial must be only a "best effort" and not mangle with ongoing transmissions
Nathael Pajani [Thu, 15 Jun 2017 07:00:33 +0000 (09:00 +0200)]
Echo on serial must be only a "best effort" and not mangle with ongoing transmissions

2 years agoremove unrequired sleep from bme driver.
Nathael Pajani [Fri, 12 May 2017 23:09:44 +0000 (01:09 +0200)]
remove unrequired sleep from bme driver.

2 years agoAdd SD card write access support.
Nathael Pajani [Fri, 12 May 2017 00:28:09 +0000 (02:28 +0200)]
Add SD card write access support.

2 years agoFix SD/MMC read. Write is still untested.
Nathael Pajani [Mon, 8 May 2017 00:07:51 +0000 (02:07 +0200)]
Fix SD/MMC read. Write is still untested.

2 years agoAdd a CRC CCITT function for use with SSD/MMC driver.
Nathael Pajani [Mon, 8 May 2017 00:03:55 +0000 (02:03 +0200)]
Add a CRC CCITT function for use with SSD/MMC driver.

2 years agoSome more error codes
Nathael Pajani [Mon, 8 May 2017 00:02:59 +0000 (02:02 +0200)]
Some more error codes

2 years agoRemove the gddram internal buffer
David Odin [Wed, 19 Apr 2017 18:32:53 +0000 (20:32 +0200)]
Remove the gddram internal buffer

2 years agoshut up a warning at -Wextra level by using the right type for an index variable...
David Odin [Wed, 19 Apr 2017 16:10:34 +0000 (18:10 +0200)]
shut up a warning at -Wextra level by using the right type for an index variable (size_t instead of i)

2 years agofixed the ssd130x_update_tile function about a (x0,y0) / (xt,yt) mismatch
David Odin [Thu, 30 Mar 2017 20:43:39 +0000 (22:43 +0200)]
fixed the ssd130x_update_tile function about a (x0,y0) / (xt,yt) mismatch

2 years agoFunction rename in iap support code.
Nathael Pajani [Tue, 28 Mar 2017 13:24:45 +0000 (15:24 +0200)]
Function rename in iap support code.

2 years agoSD write support. Untested.
Nathael Pajani [Tue, 28 Mar 2017 13:23:55 +0000 (15:23 +0200)]
SD write support. Untested.

2 years agoSD/MMC card support going on. Still needs testing.
Nathael Pajani [Tue, 28 Mar 2017 13:22:52 +0000 (15:22 +0200)]
SD/MMC card support going on. Still needs testing.

2 years agofixed the set_pixel function
David Odin [Mon, 27 Mar 2017 15:44:11 +0000 (17:44 +0200)]
fixed the set_pixel function

2 years agoAdd tsl256x light sensor support
Nathael Pajani [Sun, 19 Mar 2017 18:37:21 +0000 (19:37 +0100)]
Add tsl256x light sensor support

2 years agoAdd support for bme280 temperature, humidity and pressure sensor
Nathael Pajani [Sun, 19 Mar 2017 18:36:53 +0000 (19:36 +0100)]
Add support for bme280 temperature, humidity and pressure sensor

2 years agoAdd support for displays without an external VCC (use internal charge pump)
Nathael Pajani [Sun, 19 Mar 2017 18:35:18 +0000 (19:35 +0100)]
Add support for displays without an external VCC (use internal charge pump)

2 years agoAlso fix get_priority_mask() return value check in serial_flush()
Nathael Pajani [Fri, 9 Dec 2016 01:33:08 +0000 (02:33 +0100)]
Also fix get_priority_mask() return value check in serial_flush()

2 years agoCosmetic changes (whitespaces) and typo in comments
Nathael Pajani [Fri, 9 Dec 2016 01:31:41 +0000 (02:31 +0100)]
Cosmetic changes (whitespaces) and typo in comments

2 years agoAdd MIN and MAX (defines) to lib/utils.h
Nathael Pajani [Fri, 28 Oct 2016 01:21:10 +0000 (03:21 +0200)]
Add MIN and MAX (defines) to lib/utils.h

2 years agoAdd ntohl, htonl, ntohs and htons to lib/utils.h
Nathael Pajani [Fri, 28 Oct 2016 01:20:50 +0000 (03:20 +0200)]
Add ntohl, htonl, ntohs and htons to lib/utils.h

2 years agoAdd enum for SSP bus numbers
Nathael Pajani [Fri, 28 Oct 2016 01:19:51 +0000 (03:19 +0200)]
Add enum for SSP bus numbers

2 years agoAdding SD card support (partial) over SPI bus Raw read only supported yet.
Nathael Pajani [Fri, 28 Oct 2016 01:19:19 +0000 (03:19 +0200)]
Adding SD card support (partial) over SPI bus Raw read only supported yet.

2 years agoSmall typo fix : use the same notation as for the rest of the function
Nathael Pajani [Wed, 26 Oct 2016 23:47:19 +0000 (01:47 +0200)]
Small typo fix : use the same notation as for the rest of the function

2 years agoAdd PCF85363A RTC support (I2C driver) PCF85363A is an NXP low power RTC chip with...
Nathael Pajani [Wed, 26 Oct 2016 13:55:36 +0000 (15:55 +0200)]
Add PCF85363A RTC support (I2C driver) PCF85363A is an NXP low power RTC chip with timestamps, alarms and 64 bytes of RAM

2 years agoWatchdog - improve memory footprint, uint8_t are enough to store flags.
Nathael Pajani [Wed, 26 Oct 2016 13:53:36 +0000 (15:53 +0200)]
Watchdog - improve memory footprint, uint8_t are enough to store flags.

2 years agoFirst part of SSD130x Oled controller support - Init - Set pixels and tiles (8x8...
Nathael Pajani [Sun, 16 Oct 2016 15:37:52 +0000 (17:37 +0200)]
First part of SSD130x Oled controller support - Init - Set pixels and tiles (8x8) in RAM - Update whole or partial(untested) GDDRAM

2 years agoModification to the font and the way it is handled This allows for the font to reside...
Nathael Pajani [Sun, 16 Oct 2016 15:32:57 +0000 (17:32 +0200)]
Modification to the font and the way it is handled This allows for the font to reside in flash, sparing abour 700 bytes of RAM

2 years agoAdd enum for timer channels
Nathael Pajani [Mon, 3 Oct 2016 15:05:29 +0000 (17:05 +0200)]
Add enum for timer channels

2 years agoAdd a define for RTC callback installation retry delay.
Nathael Pajani [Mon, 3 Oct 2016 15:05:03 +0000 (17:05 +0200)]
Add a define for RTC callback installation retry delay.

2 years agoGlobal README update
Nathael Pajani [Mon, 3 Oct 2016 15:03:34 +0000 (17:03 +0200)]
Global README update

2 years agoAdding deep power down support
Nathael Pajani [Mon, 3 Oct 2016 15:03:15 +0000 (17:03 +0200)]
Adding deep power down support

2 years agoAdding VEML6070 I2C UV sensor driver ... C file (commited only header in commit dd5c7...
Nathael Pajani [Tue, 27 Sep 2016 21:50:38 +0000 (23:50 +0200)]
Adding VEML6070 I2C UV sensor driver ... C file (commited only header in commit dd5c737609b3ff7ce32b9857c0ecb74c85e24433

2 years agoAdd VEML6070 I2C UV sensor driver
Nathael Pajani [Tue, 27 Sep 2016 21:15:13 +0000 (23:15 +0200)]
Add VEML6070 I2C UV sensor driver

2 years agoUpdate to ws2812 driver (internal behavior only)
Nathael Pajani [Tue, 27 Sep 2016 21:14:52 +0000 (23:14 +0200)]
Update to ws2812 driver (internal behavior only)

2 years agoEnsure GPIO are on when using status led.
Nathael Pajani [Tue, 27 Sep 2016 21:13:06 +0000 (23:13 +0200)]
Ensure GPIO are on when using status led.

2 years agoFix RTC code : return correct value on first call where it is valid.
Nathael Pajani [Tue, 27 Sep 2016 21:12:40 +0000 (23:12 +0200)]
Fix RTC code : return correct value on first call where it is valid.

2 years agoCRC engine support. NOT TESTED
Nathael Pajani [Tue, 27 Sep 2016 21:11:28 +0000 (23:11 +0200)]
CRC engine support. NOT TESTED

2 years agoCore IAP code. NOT TESTED.
Nathael Pajani [Tue, 27 Sep 2016 21:11:00 +0000 (23:11 +0200)]
Core IAP code. NOT TESTED.

2 years agoAdding cc1101_power_down() to CC1101 driver
Nathael Pajani [Tue, 27 Sep 2016 21:09:32 +0000 (23:09 +0200)]
Adding cc1101_power_down() to CC1101 driver

2 years agoUpdated according to Timer API changes
Nathael Pajani [Tue, 27 Sep 2016 21:09:04 +0000 (23:09 +0200)]
Updated according to Timer API changes

2 years agoComplete rewrite of timers API, now documented here : http://wiki.techno-innov.fr...
Nathael Pajani [Tue, 27 Sep 2016 21:08:21 +0000 (23:08 +0200)]
Complete rewrite of timers API, now documented here : wiki.techno-innov.fr/index.php/Technique/Logiciel/API/Use/Drivers/Timers

2 years agoSmall additions to core/system.[ch] Small addition to gpio driver header
Nathael Pajani [Tue, 27 Sep 2016 21:06:54 +0000 (23:06 +0200)]
Small additions to core/system.[ch] Small addition to gpio driver header

2 years agoMove IAP status definitions to IAP header file
Nathael Pajani [Tue, 27 Sep 2016 21:05:00 +0000 (23:05 +0200)]
Move IAP status definitions to IAP header file

2 years agoMove PIO config related code to pio.c and pio.h
Nathael Pajani [Tue, 27 Sep 2016 21:03:58 +0000 (23:03 +0200)]
Move PIO config related code to pio.c and pio.h

2 years agoUpdated I2C driver to follow API documented here : http://wiki.techno-innov.fr/index...
Nathael Pajani [Tue, 27 Sep 2016 21:02:37 +0000 (23:02 +0200)]
Updated I2C driver to follow API documented here : wiki.techno-innov.fr/index.php/Technique/Logiciel/API/Use/Drivers/I2C Updated TMP101 sensor driver for API compliance Updated EEPROM driver for API compliance

2 years agoADC driver update for API compliance API documentation available here : http://wiki...
Nathael Pajani [Tue, 27 Sep 2016 20:59:08 +0000 (22:59 +0200)]
ADC driver update for API compliance API documentation available here : wiki.techno-innov.fr/index.php/Technique/Logiciel/API/Use/Drivers/ADC

2 years agoSerial driver update : return -EINVAL or -EBUSY instead of -1 on errors
Nathael Pajani [Tue, 27 Sep 2016 20:56:35 +0000 (22:56 +0200)]
Serial driver update : return -EINVAL or -EBUSY instead of -1 on errors

2 years agoComments update
Nathael Pajani [Tue, 27 Sep 2016 20:54:07 +0000 (22:54 +0200)]
Comments update

2 years agoUpdated stdlib et utils libs
Nathael Pajani [Tue, 27 Sep 2016 20:48:39 +0000 (22:48 +0200)]
Updated stdlib et utils libs