soft/lpc122x/core
2 years agoAdd numbering to packet types for debugging
Nathael Pajani [Fri, 15 Jul 2022 01:48:59 +0000 (03:48 +0200)]
Add numbering to packet types for debugging

2 years agoWhen running make from root directory, only look for apps in directories,
Nathael Pajani [Tue, 8 Nov 2022 18:12:21 +0000 (19:12 +0100)]
When running make from root directory, only look for apps in directories,
not in common files ...

2 years agoImprove README content
Nathael Pajani [Tue, 8 Nov 2022 16:43:45 +0000 (17:43 +0100)]
Improve README content

2 years agoUpdate main README file according to changes introduced by the modules
Nathael Pajani [Tue, 8 Nov 2022 16:41:54 +0000 (17:41 +0100)]
Update main README file according to changes introduced by the modules
splitting to new repositories.

2 years agoAdd .gitignore so that modules code is not handled by base lpc122x support
Nathael Pajani [Tue, 8 Nov 2022 16:05:36 +0000 (17:05 +0100)]
Add .gitignore so that modules code is not handled by base lpc122x support
git anymore

2 years agoAdd new README in apps directory, to prepare for extraction of examples and all modul...
Nathael Pajani [Tue, 8 Nov 2022 16:00:22 +0000 (17:00 +0100)]
Add new README in apps directory, to prepare for extraction of examples and all modules apps from the main repository.

2 years agoImprove SD/MMC Card support, add comments
Nathael Pajani [Mon, 7 Nov 2022 16:50:04 +0000 (17:50 +0100)]
Improve SD/MMC Card support, add comments

2 years agoAdd comments with names matching literature.
Nathael Pajani [Mon, 7 Nov 2022 16:48:45 +0000 (17:48 +0100)]
Add comments with names matching literature.

2 years agoUpdated main README
Nathael Pajani [Sat, 5 Nov 2022 02:01:07 +0000 (03:01 +0100)]
Updated main README

2 years agoUpdating README file
Nathael Pajani [Thu, 3 Nov 2022 00:07:00 +0000 (01:07 +0100)]
Updating README file

2 years agoAdd BCD to decimal conversion of values read from RTC, and decimal to BCD when storin...
Nathael Pajani [Sat, 15 Oct 2022 00:37:06 +0000 (02:37 +0200)]
Add BCD to decimal conversion of values read from RTC, and decimal to BCD when storing values.

2 years agoUse fixed version of IRQ priority helpers
Nathael Pajani [Mon, 7 Feb 2022 02:12:21 +0000 (03:12 +0100)]
Use fixed version of IRQ priority helpers

2 years agoFix IRQ priority setting helpers
Nathael Pajani [Mon, 7 Feb 2022 02:11:54 +0000 (03:11 +0100)]
Fix IRQ priority setting helpers

2 years agoSmall timer support fix Adding useful define in timer support.
Nathael Pajani [Sat, 1 May 2021 19:25:40 +0000 (21:25 +0200)]
Small timer support fix Adding useful define in timer support.

2 years agoimprove ws2812B timmings
Nathael Pajani [Sun, 3 Jan 2021 14:19:53 +0000 (15:19 +0100)]
improve ws2812B timmings

2 years agoSupport for MCP3021 I2C ADC from Microchip
Nathael Pajani [Sun, 3 Jan 2021 14:19:26 +0000 (15:19 +0100)]
Support for MCP3021 I2C ADC from Microchip

2 years agoInitial part of BQ769x0 BMS support
Nathael Pajani [Sun, 6 Dec 2020 17:46:17 +0000 (18:46 +0100)]
Initial part of BQ769x0 BMS support

2 years agoImprove SD/MMC support driver, allowing use of newer uSD cards Tested on 8Gb SDHC...
Nathael Pajani [Thu, 19 Nov 2020 18:54:29 +0000 (19:54 +0100)]
Improve SD/MMC support driver, allowing use of newer uSD cards Tested on 8Gb SDHC uSD card

2 years agoImprove comment
Nathael Pajani [Thu, 19 Nov 2020 18:49:00 +0000 (19:49 +0100)]
Improve comment

2 years agoAdd reverse_byte()
Nathael Pajani [Thu, 19 Nov 2020 18:48:38 +0000 (19:48 +0100)]
Add reverse_byte()

2 years agoFix bits_set
Nathael Pajani [Thu, 19 Nov 2020 18:48:20 +0000 (19:48 +0100)]
Fix bits_set

2 years agoUpdate config part of CC1101 driver
Nathael Pajani [Thu, 19 Nov 2020 18:45:18 +0000 (19:45 +0100)]
Update config part of CC1101 driver

2 years agoimprove driver, remove duplicated code by using toggle gpio driver capability.
Nathael Pajani [Thu, 19 Nov 2020 18:42:11 +0000 (19:42 +0100)]
improve driver, remove duplicated code by using toggle gpio driver capability.

2 years agoAdd Todo comment
Nathael Pajani [Thu, 24 Sep 2020 11:17:19 +0000 (13:17 +0200)]
Add Todo comment

2 years agoFix WS2812 timmings
Nathael Pajani [Thu, 24 Sep 2020 11:10:37 +0000 (13:10 +0200)]
Fix WS2812 timmings

2 years agoAdd macro for RGB conversion
Nathael Pajani [Thu, 24 Sep 2020 11:09:40 +0000 (13:09 +0200)]
Add macro for RGB conversion

2 years agoAdd first version ST7735 TFT driver support
Nathael Pajani [Thu, 24 Sep 2020 04:16:11 +0000 (06:16 +0200)]
Add first version ST7735 TFT driver support

2 years agoUse SPI Macro for word length specification (improves readability)
Nathael Pajani [Thu, 24 Sep 2020 04:14:42 +0000 (06:14 +0200)]
Use SPI Macro for word length specification (improves readability)

2 years agoFix coments and add macro for SPI
Nathael Pajani [Thu, 24 Sep 2020 04:13:22 +0000 (06:13 +0200)]
Fix coments and add macro for SPI

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