Commit Graph

27 Commits

Author SHA1 Message Date
mculover666
9d76c4f811 fix a bug in nucleo stm32l073 makefile 2020-09-24 08:50:28 +08:00
supowang
ad5f75d4a3 Update tos_config.h 2020-08-10 17:17:46 +08:00
daishengdong
5861290e43 fix hardfault backtrace support for iccarm 2020-06-03 20:37:10 +08:00
daishengdong
08e5f7b3ec remove old tencentcloud_sdk and abandoned EVB boards 2020-05-07 16:22:17 +08:00
supowang
39173317db fix l073 lorawankeil project
fix l073 lorawankeil  project
2020-05-07 12:31:43 +08:00
Winfred LIN
b6cb7147cc added fuzzy matching feature to at_echo; added set some AT+ commands for RHF76; added support for LSM6DS3;
1. in tos_at.h, added int  fuzzy_matching; field into at_echo_st struct, if this field is set to K_TRUE, then if echo message contains the string in "echo_expect" field.
2. added __API__ int tos_at_echo_fuzzy_matching_create(at_echo_t *echo, char *buffer, size_t buffer_size, char *echo_expect_contains) api to tos_at.c, which will create an at_echo_t with fuzzy_matching = K_TRUE;
3. added RHF76_ATCMD_SET_DELAY and  rhf76_set_delay to RHF76.h to allow set/query RX delay config
4. added RHF76_ATCMD_SET_DATA_RATE and rhf76_set_data_rate to RHF76.h to allow set/query date rate config
5. added rhf76_at_cmd_exe for DEBUG purpose, so that user can execute any AT+ commands they want
6. added code in lora_demo.c to demonstrate package segmentation.
2020-04-06 23:11:48 +10:00
Winfred LIN
47d6313ba1 added reading flash functions for stm32l0xx series
1. implemented HAL_StatusTypeDef HAL_FLASH_ReadWord(uint32_t Address, uint32_t* Data); and HAL_StatusTypeDef HAL_FLASH_ReadHalfWord(uint32_t Address, uint16_t* Data); which allows user to read the internal FLASH (with out read protection)

2. implemeted device_config struct to store device configurations, e.g. magnetometer fullscale, report period, etc.

3. added demonstration code of using flash reading apis in lora_demo.c, in which the configuration sent from the cloud is stored into the internal Data EEPROM bank1, and each time when the device is booted, the configurations would be loaded from the Data EEPROM and used to initialize the application.
2020-04-03 18:21:16 +11:00
Winfred LIN
cafe9c8a87 added sending unconfirmed message for RHF76
1. added AT+ command "AT+MSGHEX" and change previous RHF76_ATCMD_FMT_SEND_MSGHEX to RHF76_ATCMD_FMT_SEND_CMSGHEX

2. implement send_unconfirmed with a non-breaking approach: added int (*send_unconfirmed)(const void *buf, size_t len); event handle in lora_module_st; added int tos_lora_module_send_unconfirmed(const void *buf, size_t len); in lora_module_wrapper.c; and implement static int rhf76_send_unconfirmed(const void *buf, size_t len) in RHF76.c

3. added { "+MSGHEX: PORT:", rhf76_incoming_data_process } in event array rhf76_at_event so that the device is able to process the downlink data when it is configurated to send unconfirmed message.

4. added AT+ command "AT+REPT", and implement the static int rhf76_set_repeat(uint8_t num) to enable user to set repeat times (1-15) while using "unconfirmed message"

5. updated the instructions of implemeting up-link parser and downlink parser on the server in the file "..\board\NUCLEO_STM32L073RZ\BSP\Src\lora_demo.c"
2020-04-01 18:47:45 +11:00
Winfred LIN
eb6ffc8e95 added downlink data parser
1. modified code in recv_callback, which allows user to set the fullscale magnetometer and report period
2. modified the sample javascript code for uplink and downlink data parser on the cloud
2020-04-01 01:07:50 +11:00
Winfred LIN
da5884920a added lorawan example in IAR, and added support for LIS3MDL and LPS22HB sensors
1. modified the HTS221: removed magic numbers, added a sensor_tempnhumi_t struct to accommodate temperature and humidity data
2. added .h and .c files for LIS3MDL magnetic sensor
3. added .h and .c files for LPS22HB pressure sensor
3. added IAR (EWARM) project for lorawan example
4. added bsp.c and bsp.h to manager the sensors
2020-03-31 17:48:27 +11:00
supowang
88bfbe999a fix MX and MXplus lora demo
fix MX and MXplus lora demo
2020-01-10 15:50:58 +08:00
daishengdong
72481955e2 a very simple shell framework
simple, clear, easy to DIY
2020-01-08 13:54:56 +08:00
supowang
dea65a2d66 fix Nucleo L073 project
fix Nucleo L073 project
2020-01-06 11:40:56 +08:00
daishengdong
c9556307df add tos_slist.h, rename tos.h to tos_k.h 2020-01-03 17:25:38 +08:00
mculover666
ae4b04bcb2 add HTS221 sensor driver 2019-12-27 14:41:18 +08:00
supowang
e1c19fd194 add lora lowpower at command support
add lora lowpower at command support
2019-12-18 13:01:35 +08:00
daishengdong
b2983383bb add nimble mesh example
need meshctl installed on raspberrypi. nimble offical samples have a lot of pit ...
2019-11-28 11:12:16 +08:00
daishengdong
c411ed1eec add a set of dyn(create / destroy) interface
1. tos_ring_q_create_dyn
2. tos_chr_fifo_create_dyn
3. tos_msg_q_create_dyn
4. tos_mail_q_create_dyn
5. tos_bin_heap_create_dyn
6. tos_prio_q_create_dyn
7. tos_prio_msg_q_create_dyn
8. tos_prio_mail_q_create_dyn
2019-10-29 16:57:43 +08:00
supowang
23e852a41a fix iar compile error for kernel change 2019-10-28 17:36:42 +08:00
daishengdong
bd613af56e fix board keil compile 2019-10-28 17:20:08 +08:00
daishengdong
d0b8d0675e add ring queue/message queue/mail queue, binary heap/priority queue/priority message queue/priority mail queue
1. remove the old msg queue and queue:
i. msg queue is not a common and reusable/flexible component(need user to config the msg pool size and this componet can only be used by tos_queue)
ii. tos_queue can only deliver the pointer message(cannot do a memory buffer deliver)

2. add ring queue(tos_ring_q) componet
rinq queue can be reused by tos_chr_fifi/tos_msg_q/tos_mail_q as the foundational data container

3. add message queue(tos_msg_q)
a little like the old queue mechanism, supply the capability to deliver a pointer message

4. add mail queue(tos_mail_q)
supply the capability to deliver a memory buffer

5. add binary heap(tos_bin_heap)
the basement componet to implement priority queue

6. add priority queue(tos_prio_q)
can be reused by the priority message/mail queue  as the foundational data container.

7. add priority message queue(tos_prio_msg_q)
a message(pointer) deliver mechanism, supply the capability of delivering the message with priority(message with higher priority comes faster to the pender than with lower)

8. add priority mail queue(tos_prio_mail_q)
a mail(memory buffer) deliver mechanism, supply the capability of delivering the mail with priority(mail with higher priority comes faster to the pender than with lower)
2019-10-28 15:50:46 +08:00
daishengdong
06cae326a2 add API (tos_task_create_dyn & tos_task_walkthru & tos_task_curr_task_get)
tos_task_create_dyn: create task with dynamic allocated task handler and stack
tos_task_walkthru: API to walk through the statistic list of all the existing task
tos_task_curr_task_get: get current running task handler
2019-10-23 21:22:13 +08:00
supowang
32416ce02d add stm32 nucleo lora pack support
add stm32 nucleo lora  pack support
2019-10-18 16:20:42 +08:00
daishengdong
3a8b03432f add tos_mmheap_check & tos_mmheap_pool_check API and TOS_CFG_MMHEAP_DEFAULT_POOL_EN switch
tos_mmheap_check: get the information of the heap(space that is free and used)
tos_mmheap_pool_check: get the information of a pool
TOS_CFG_MMHEAP_DEFAULT_POOL_EN: enable the default pool of the heap(if user not set this, a default of 1u is set). if you wanna disable the default pool, you should call tos_mmheap_pool_add to add your own pool of the heap before tos_mmheap_alloc is called.
2019-10-14 22:09:57 +08:00
supowang
b7017358b9 Repair partial scrambling 2019-09-29 15:31:28 +08:00
supowang
65ce348b0e delete some project files
fix some project and delete some files
2019-09-17 17:32:51 +08:00
supowang
edb2879617 first commit for opensource
first commit for opensource
2019-09-16 13:19:50 +08:00