Friday, May 25th 2018, 1:10pm UTC+2

You are not logged in.

  • Login
  • Register

Search results

Search results 1-8 of 8.

Tuesday, March 7th 2017, 4:02pm

Author: stefan.waldschmidt

How to manage network buffers for incoming UDP packets?

Hi Oliver, thank you so much for your fast response. Your explanation really helps me a lot to better understand what is going on. And thanks for pointing out the SO_RCVBUF socket option I was not aware of. So we can either live with the "non-blocking workaround" (which seems to work fine) or do some math and fine-tune the buffer sizes, based on your explanations. Thanks again Stefan

Tuesday, March 7th 2017, 10:42am

Author: stefan.waldschmidt

How to manage network buffers for incoming UDP packets?

Hi, I observed a deadlock in by application because the IP-stack ran out of network buffers. My solution is to make send non-blocking (see below) but my question is if there is a better way to configure allocation strategy of network buffers. Situation: Assume a thread needs to receive and, from time to time, send UDP multicasts (for some kind of service announcement and discovery). Most of the time, this thread is blocked in a select() call waiting for incoming network packets. This select call...

Thursday, June 2nd 2016, 1:50pm

Author: stefan.waldschmidt

Which way to go to separate NOR flash into multiple volumes

Hi all, We have a NOR-flash chip connected via SPI to the micro-controller. We want to separate the available memory space of this chip into different volumes. This separation is static and will never be changed. One volume shall be mounted read-only to avoid accidentally deleting it. A separate "log volume" shall ensure the "root file system" can not be filled up by log files. My question is: which is the way to go? a) Use a Master Boot Record, or b) call FS_NOR_BM_Configure() multiple times wi...

Tuesday, March 1st 2016, 11:36am

Author: stefan.waldschmidt

embOS and STM32 CubeMX

Hi, I would like to base embOS on a HAL/BSP which is generated by STM32 CubeMX. Currently, I am just looking for some hints or links to any documentation I should read. The situation is that everything (HAL/BSP and embOS) compiles, links, and loads perfectly. I can step through the code stating from the reset-vector. As soon as OS calls or timer interrupts occur the CPU is entering OS_Error for different reasons, depending on the modifications to the code I make. I am using the "Cortex-M, Rowley...

Friday, July 3rd 2015, 2:16pm

Author: stefan.waldschmidt

emFile and NOR Flash problem

Hi Leonardo, Are you using emFile v 4.00? In this case, you should read chapter "15.1 Differences from version 3.x to 4.x" in UM02001_emFile.pdf. ... or (what it boils down to) try adding Source code 1 FS_NOR_SPI_SetHWType(0, &FS_NOR_HW_ST_M25_Default); just after FS_NOR_SetPhyType(0, &FS_NOR_PHY_CFI_1x16); just a guess Stefan

Tuesday, June 16th 2015, 2:05pm

Author: stefan.waldschmidt

FS_GetVolumeFreeSpace() not updated immediately

Hi, since reboot helps, I would assume that unmount - mount will as well. But this still sounds to be to drastic. Without any deeper knowledge, I would recommend using one or multiple of the XY_SYNC_XY functions. They seem to exist in at least four different tastes ;-) Good luck Stefan

Thursday, April 9th 2015, 2:52pm

Author: stefan.waldschmidt

Some reasons for the problems

To follow up on my own post: One major reason for my problems was probably the lack of network buffers: After all available buffers are in use by low-priority tasks, the high-priority zero-copy task endlessly loops in Source code 1 2 3 4 do { pPacket = IP_TCP_Alloc(bytes); } while(pPacket == NULL); Increasing the number of configured buffers and adding a sleep() helped a lot. Still, I would love to see some working examples and/or documentation. Some other improvements were made to my code, here...

Wednesday, April 8th 2015, 3:59pm

Author: stefan.waldschmidt

Sending data using zero-copy

Hi all, does anyone have experience sending data using zero-copy, especially with TCP? With the code below I am experiencing system-lockups (either in HardError-handler or an endless-loop somewhere in the IP-stack) after 5 to 30 seconds. Until then, the performance is awesome :-) What is wrong with my code? Any working example, or link to some documentation? Thanks Stefan Source code 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 while(1) { IP_PACKET * pPacket; U32 bytes = 512; do { pPacket = IP_T...