What I have done in the past, several years ago, is when cable is inserted
again, I restart everything with LWIP and network stack.
Note that at the time many of the variables in lwip and applications
(modbus,etc) were statically initialized. For example the code might have
int32_t my_data=0;
Are you sure the problem is with LWIP and not the web code doing the
periodic call?
I had a web server which did a timeout call to update data from the
embedded server every second. However when the server took more than a
second to respond (bad wifi link, slow network, etc) then it would
In C there is a _sbrk(int incr) function. This function is called when
memory allocation or deallocation happens.
The newlib has their own version of this function, however via linker with
the --specs=nosys.spec you can disable the default version and add your
own.
You can google sbrk for more
t is every line of code in ChibiOs is now your problem..
Trampas
On Fri, May 28, 2021 at 4:05 PM Trampas Stern wrote:
> So a trick I use in my code and libraries is to use
> typedef's for variables.
>
> typedef uint32_t milliseconds_t;
> milliseconds_t getMillis();
>
To support my guess, I turned on another debug option and last lwip timer
> message I see is:
> sys_timeout: 2000C5DC abs_time=429497730 handler=ip_reass_tmr arg=805B28C
>
>
> Adam
>
> pá 28. 5. 2021 v 13:45 odesílatel Trampas Stern
> napsal:
>
>> Increase the c
Increase the counter to a uint64_t.
You can also start the counter at something other than zero to prove root
cause faster.
Trampas
On Fri, May 28, 2021 at 7:08 AM Adam Baron wrote:
> Czesc Tomek :),
>
> I'll try to add it. Thanks.
>
> However, I feel like it is rather related to the problem
Doing the cache invalidation is best for speed.
I am personally the type of person who thinks that every problem needs two
fixes, first is the fix for the problem, second is the fix as to why the
problem came into existence and/or was not found earlier. Hence I like to
know that when I
; was (but hey a fix is a fix)
>
>
>
> @Alister Fisher I am using your Ethernet
> patches. I was hoping to switch back to the mainstream by now, but I’m not
> confident ST has fixed all the issues yet.
>
>
>
> Thanks for your help everyone.
>
>
>
> Cheers
I had similar problem with an ATSAME70 which was an M7 core. Turns out
that the ethernet driver from Microchip did not invalidate cache for the
ethernet MAC driver. Hence it would work some of the time and not others,
like when debugging was on. Disabling the data cache on the processor
would
When a URL file request is made I check the file name. For example if the
file name is stats.json then I know the client is requesting my status. So
at that point I create the status json contents in RAM memory and then have
the http server serve up that string. Care needs to be taken for
Add some timing metrics to your code and figure out where you are getting
your performance loss. For example I would start at the MAC layer where
you are writing data to the MAC/GMAC peripheral and see how long that is
taking. This in my experience has been the slow part. That is often the
I have used an ESP32 wifi module. The ESP32 is a processor and on that
process I use the Arduino libraries which use LWIP under the covers. I
then wrote a simple arduino script that makes the ESP32 be a socket
interface via the SPI interface. I use this for hosting an embedded web
server. I
So many chips use DMA for the MAC. I had to put the LWIP Pbuf in a non
cached section of RAM on an M7 to work. Specifically the M7 data cache was
causing problems polling for when DMA was done as DMA wrote to SRAM but the
processor was reading the cached version of SRAM. Often when you need to
LC
> Office (512) 267-7087
> Cell (512) 632-8593www.plasmability.com
>
> On 6/15/2020 11:05 AM, Trampas Stern wrote:
>
> We finally shipped the product using LWIP and now customers are
> complaining that the network interface is not working properly on their
> network. They
The MAC address is unique unless someone copied our company MAC range.
On Mon, Jun 15, 2020 at 12:48 PM yasir arafat
wrote:
> I would suggest to check if MAC ID is unique. One of main reason behind
> slow network network interface in my case.
>
> On Mon, 15 Jun, 2020, 9:36 pm T
We finally shipped the product using LWIP and now customers are complaining
that the network interface is not working properly on their network. They
can not load webpages as it appears too slow of a connection.
The only thing I can figure out is they have enough broadcast and ARP
packages that
y.
>
> Unfortunately from what I search, there is no way to configure the
> browsers how should they behave on loading the multiple resources files.
> I tried some tags for preload etc and none made any effect (at leas in
> firefox, where I was testing..)
>
> Mario
>
> _
I have ran into similar issues. I ended up changing my HTML source files.
To understand let me start with the background. I have a web page where
ever second I request data from the embedded server and display it. So in
the Javascript for the web page I had a 1000ms timeout that requested new
So when I detect a cable disconnect and reconnect I want to restart LWIP.
I have noticed that several things appear to go wrong, when trying to
restart LWIP.
1. httpd has no way to close the port. Hence even with an lwip_init() it
still thought port was used.
2. When restarting timeouts with
1 [0]20 482 00 77 | Email:
> indan.zupan...@mep-info.com
>
> -Original Message-
> From: lwip-users mep-info@nongnu.org> On Behalf Of Indan Zupancic
> Sent: Friday, 24 April 2020 10:38
> To: 'Trampas Stern'
> Cc: lwip-users@nongnu.org
> Subject: Re: [lwip-us
It appears that the SNMP V3 code does not implement SNMP V3 traps has
anyone implemented V3 traps yet?
Thanks
Trampas
___
lwip-users mailing list
lwip-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/lwip-users
a MD5 hash with session ID. If the MD5 hash matches I record IP and
session ID for person logged in.
Trampas
On Thu, Apr 23, 2020 at 11:09 AM Trampas Stern wrote:
> The browser sends the cookie automatically.
>
> What I do is in the login.html is add the following:
>
>
>
> O
The browser sends the cookie automatically.
What I do is in the login.html is add the following:
On Thu, Apr 23, 2020 at 10:26 AM Marco Lazzaroni wrote:
> Il giorno gio 23 apr 2020 alle ore 14:12 Trampas Stern
> ha scritto:
>
>> So what I did is added support for cook
So what I did is added support for cookies. Basically in
the http_parse_request() I created a callback that I call which passes
header to the call back. In the function I get the cookie for a session
ID, and return a redirect if the current user is not logged in.
When the user connects the
What I did was use the fs.c example, and when user requests a file like
'/json' I create a string on micro with the json and send back using the
fs.c api. The restriction here is that I send a JSON no bigger than my
string size, which is statically allocated.
To send json to the micro I have
I just did HTTPS using mbedtls worked out of the box once I got memory
allocation and certificates correct.
Trampas
On Thu, Apr 2, 2020 at 10:13 AM Fabin V Martin wrote:
>
> Hello,
>
> I am working on an embedded device that has a WebUI(LAN based) to
> configure and control sensors/actuators
s told we cannot change the hardware, so
> I am trying to find the correct location in Lwip to “clean up” when there
> is no route. Just haven’t found it yet.
>
>
>
> The correct solution in using the carrier sense pin.
>
>
>
> Thanks again,
>
> Dan
>
>
Dan,
I had been using a RMII phy and noticed similar issues. Specifically I
could not detect cable connected or disconnected using the RMII, the link
activity bit does not work for cable connected/disconnected. I was shocked
to find that RMII did not provide this functionality. Sure the LED
Has anyone used LWIP to create a mass storage device that can mapped as a
drive on a PC? That is a samba or other type of server?
___
lwip-users mailing list
lwip-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/lwip-users
Sounds like a possible stack overflow.
On Thu, Mar 26, 2020 at 10:20 AM Artem Moroz wrote:
> I have increased data download size and now it is hanging much more
> frequently, approximately 10 minutes. I am investingating.
>
>
>
> --
> Sent from: http://lwip.100.n7.nabble.com/lwip-users-f3.html
Along the same lines does it reset with a reboot? If so check timers. If
not consider hardware heating.
On Wed, Mar 25, 2020 at 7:52 PM Patrick Klos wrote:
> I know it's a long shot, but I'm gonna go off on a tangent and ask how
> your system does elapsed timing?
>
> Bottom line: check that
I think I might have found the problem. I cooled off the Phy chip and
operation is back to normal.
Trampas
On Mon, Mar 23, 2020 at 3:38 PM Trampas Stern wrote:
> I am having random slow downs and ethernet lock ups. What I have noticed
> is that sometime ethernet parsing becomes very sl
I am having random slow downs and ethernet lock ups. What I have noticed
is that sometime ethernet parsing becomes very slow. I was able to capture
this with wireshark (enclosed).
I also find that sometimes usually after about a day the system just
stops. I can confirm that the lwip timeouts
I am using the latest lwip from git and noticed that my SNMP stopped
working, below is by general configuration, does anyone see an issue?
If I do SNMP walk it get the generic data but not the private mib...
/* sensortable .1.3.6.1.4.1.26381.1.2 */
static const struct snmp_table_node
happening, etc.
>
> You're trying to get help. Do as best as you can to make it easy for
> people to help you.
>
> Regards,
> Simon
>
> Am 20.02.2020 um 21:01 schrieb Trampas Stern:
> >
> >
> > On Thu, Feb 20, 2020 at 2:53 PM Simon Goldschmidt > <mailt
On Thu, Feb 20, 2020 at 2:53 PM Simon Goldschmidt wrote:
>
> On 20.02.2020 18:20, Trampas Stern wrote:
> > [..]
> > I am fairly new to TCP/IP so hold my hand in interpreting the wire shark
> > results.
> >
> > image.png
>
> Please send pcap files, not
to send (0)
Note I am using mbedtls 1.16.4 and lwip version 2.1.2
Trampas
On Wed, Feb 19, 2020 at 11:05 AM Trampas Stern wrote:
> Does anyone have recommended configuration for https? I have the
> following and still having problems:
>
> #define MEM_SIZE 42 * 10
) which
works that I can compare?
Thanks
Trampas
On Wed, Feb 19, 2020 at 10:45 AM Trampas Stern wrote:
> I will increase more...
>
> I am monitoring for alloc failures, but not seeing any.
>
>
>
> altcp_mbedtls_state_t *
> altcp_mbedtls_alloc(void *conf)
> {
>
9:46 AM Simon Goldschmidt wrote:
> Trampas Stern wrote:
> > right now I have the following settings:
> > #define MEM_SIZE 12 * 1024
> > [..]
> > It appears that I am getting handshake failures...
>
> During runtime mbedTLS allocates hughe amounts of mem
r)
> but once it is cached, the next connections can reuse it and connect
> faster.
>
> Try increase even more MEMP_NUM_TCP_PCB and MEMP_NUM_TCP_PCB_LISTEN as
> much as possible.
> Try play also with TCP_MSS and TCP_WND
>
> Mario
>
> _______
u have, do you have enough RAM?
> How do you turn off DEBUG problem occurs?
> When the browser downloads each file, a new connection is made, which
> consumes RAM. Process httpd for a permanent connection which is only
> one handshake.
>
> wt., 18 lut 2020 o 21:48 Trampas Stern napisał
h output
ssl_tls.c 2769: <= flush output
ssl_tls.c 5657: => parse certificate
ssl_tls.c 4313: => read record
ssl_tls.c 2538: => fetch input
ssl_tls.c 2699: in_left: 0, nb_want: 5
ssl_tls.c 2723: in_left: 0, nb_want: 5
ssl_tls.c 2744: <= fetch input
ssl_tls.c 4058: input record: msgtype
describing looks the browser can make the first connections
> and then it cannot make new connections because there are no slots left.
>
> Mario
>
> ________
> From: lwip-users on
> behalf of Trampas Stern
> Sent: 18 February 2020 18:40
> To:
I am having a problem with the lwip and mbed TLS. I find that usually
after reboot chrome can access my lwip https server and the first load of
the web page seems to work. If I refresh the website then it seems to fail
I have noticed in Chrome that I get the following errors:
[image: image.png]
send: pcb=20453744 hs=204517ec left=0
httpd.c 1144: bytes_left 4281
httpd.c 1203: Trying to read 2890 bytes.
fs.cpp 92: reading SD /dashboard.html: 2890
httpd.c 1225: Read 2890 bytes.
httpd.c 1228: Sent 2890
On Tue, Feb 18, 2020 at 7:32 AM Simon Goldschmidt wrote:
> Trampas Stern wrote:
&g
:
https://www.erianna.com/ecdsa-certificate-authorities-and-certificates-with-openssl/
Now on the next issues...
On Mon, Feb 17, 2020 at 3:52 PM Trampas Stern wrote:
> It appears that ALTCP_MBEDTLS_ENTROPY_PTR is a memory location not a
> pointer to function.
>
> I just went i
)
{
size_t i=0;
while(i wrote:
> Am 17.02.2020 um 18:09 schrieb Trampas Stern:
> > Does anyone know how on an embedded platform to setup the entropy using
> > mbedtls?
>
> I did that, but it's been a while, and I don't remember from the top of
> my head.
>
> I think you *ca
Does anyone know how on an embedded platform to setup the entropy using
mbedtls?
Specifically I am trying to get https running with lwip and getting an
assertion failure:
Assertion "httpd_init: altcp_tls_new failed" failed at line 2872 in
../src/libraries/lwip/src/apps/http/httpd.c
Which I
How should I be using the 'lwip_cyclic_timers' ?
On Sat, Feb 15, 2020 at 2:36 PM goldsi...@gmx.de wrote:
> Am 14.02.2020 um 19:53 schrieb Trampas Stern:
> > OK walking through the code it appears somewhere along the way the ACD
> > module was added and it looks like it nee
, tcp_slowtmr},
#endif
/* LWIP_ARP */
{0, ARP_TMR_INTERVAL, etharp_tmr},
/* LWIP_DHCP */
#if LWIP_DHCP
{0, DHCP_COARSE_TIMER_MSECS, dhcp_coarse_tmr},
{0, DHCP_FINE_TIMER_MSECS, dhcp_fine_tmr},
{0, ACD_TMR_INTERVAL, acd_tmr},
#endif
};
On Fri, Feb 14, 2020 at 1:05 PM Trampas Stern wrote:
> here is s
y_msg->chaddr[1]==22
dhcp.c 469: dhcp_coarse_tmr()
dhcp.c 469: dhcp_coarse_tmr()
dhcp.c 1750: dhcp_recv(pbuf = ) from DHCP server 541413120.192.168.168 port
168
dhcp.c 1751: pbuf->len = 272
dhcp.c 1752: pbuf->tot_len = 272
On Fri, Feb 14, 2020 at 1:03 PM Trampas Stern wrote:
> I
I am trying to get DCHP work and have yet to do so I have the following and
was wondering if it was enough to help debug the problem?
dhcp.c 469: dhcp_coarse_tmr()
dhcp.c 1750: dhcp_recv(pbuf = ) from DHCP server 541413120.192.168.168 port
168
dhcp.c 1751: pbuf->len = 272
dhcp.c 1752:
err_t httpd_post_receive_data(void *connection, struct pbuf *p)
{
pbuf_free(p);
return ERR_OK;
}
On Tue, Feb 4, 2020 at 11:35 AM goldsimon wrote:
>
>
> Adam Baron wrote:
> >I did search of POST related problems sorted by date. I will do so
> >again.
> >
> >PBUF_POOL_SIZE is affecting number
, 2020 at 10:30 AM Adam Baron wrote:
> Not sure which parameter is defining maximum number of connections.
> Processor is ARM 32bit STM32F407.
>
> út 4. 2. 2020 v 15:38 odesílatel Trampas Stern napsal:
>
>> What is the maximum number of connections you have setup?
>>
What is the maximum number of connections you have setup?
Which processor are you using?
Trampas
On Tue, Feb 4, 2020 at 9:08 AM Adam Baron wrote:
> I'm bit new to lwip, and I'm using it on STM32407 with ChibiOS which is
> RTOS. I'm using current stable version of lwip and bindings form
The post parsing in the http code has couple problems. Most of the time it
will not cause issues.
First it assume the first packet includes the entire POST header. With
small MTU size this might not happen.
Second it adds a null terminator at the end of the POST header before
calling
PM goldsimon wrote:
>
>
> Trampas Stern wrote:
> >I was trying to use the httpd.c example which does some POST data
> >parsing.
> >From the httpd.h file it appears that httpd_post_begin() function is
> >called
> >with the first packet of d
I was trying to use the httpd.c example which does some POST data parsing.
>From the httpd.h file it appears that httpd_post_begin() function is called
with the first packet of data. However in reality it appears in use that
it is usually called with just the POST header.
Since I assume the POST
I figured it out, as it turns out my form did not have a name for the file
name field and a such chrome was not sending any data with the POST
message.
I would switch to the new code but with limited memory I have added code to
parse GET request on block bases and was worried about porting
p_close_conn(pcb, hs);
}
} else {
pbuf_free(p);
}
}
if (err == ERR_OK && p == NULL) {
WARNING("Connection closed %d",pcb->remote_port);
http_close_conn(pcb, hs);
}
return ERR_OK;
}
On Mon, Dec 23, 2019 at 11:45 AM Trampas Stern wrote:
> I am using a httpd.c ex
I am using a httpd.c example code from an old version of LWIP. I am
working to understand a few things and could use some help.
>From what I understand when a new connection happens the http_accept()
function is called:
pcb = tcp_new();
tcp_bind(pcb, IP_ADDR_ANY, 80);
pcb = tcp_listen(pcb);
A simple protocol I often use is a header/data system like:
//header
uint8_t flag; //number that is start of packet
uint8_t version; //protocol version number or type of packet
uint32_t bytes; //number of bytes in data packet
uint32_t headerCRC; //CRC of the header
//Data packet
uint8_t
check the maximum number of simultaneous TCP connections you have
configured for LWIP.
On Sat, Dec 21, 2019 at 5:06 AM MrFord wrote:
> Hi everyone. I have stm32f767zi and the lwip / socket library. I have a
> task.
> The first is to read data from the device via modbus TCP. The second is
>
Thanks I was wondering about the "Link Status" but was not sure if you had
to try and auto negotiate first.
Thanks again
Trampas
On Wed, Dec 11, 2019 at 5:14 PM Sergey A. Borshch via Mailing list for lwIP
users wrote:
> On 11.12.2019 23:55, Trampas Stern wrote:
> > This i
This is not directly LWIP related but I was wondering if there was a way to
detect when cable is unplugged through a GMII/RMII interface?
Specifically my hardware does not have the carrier sense pin connected to
microcontroller and I was wondering if there was a way to poll the
GMII/RMII
Mario,
I am trying to test traps and was wondering what you are using to receive
SNMP trap messages?
Thanks
Trampas
On Thu, Dec 5, 2019 at 5:21 AM Mário Luzeiro wrote:
> Hello all,
>
> I'm facing the following issue.
> I'm sending a
> snmp_send_trap_generic (SNMP_GENTRAP_COLDSTART);
>
> For
I had to increase number of TCP connections as well. Chrome will do
several connections to speed up web page loading, not that it does on
embedded devices...
Trampas
On Thu, Nov 7, 2019 at 6:13 AM goldsimon wrote:
>
>
> Am 7. November 2019 11:06:07 MEZ schrieb vinu <
>
I am in the same exact boat...
I though the node would be one less from the code, and the columns and rows
were swapped. However I figured that the columns and rows are just a
nomenclature thing and I really do not care when you do the snmpwalk which
way they show up.
For my application I will
I have found weird things like that is often the cache. Put a break point
in the code where you are checking if the packet has been received in the
GMAC and see if the cache is enabled. It most likely is.
When you do the debug prints it has to load data from other memory
locations which can
vinu,
Can you share your code?
I am using the SAME70 (which is a bit different than the E51) and have the
lwip working and might be able to help. My email is my first name at
gmail.com.
Trampas
On Tue, Nov 5, 2019 at 4:01 AM vinu wrote:
> Hi Trampas,
>
> I tried disabling cache, but the
So the Cortex M4 processor has an internal cache see the CMCC peripheral in
the datasheet.
Try in your main code to disable the cache:
CMCC->CTRL.bit.CEN=0;
Then run your code and see if it works.
Trampas
On Mon, Nov 4, 2019 at 1:20 AM vinu wrote:
> I am seeing issue forboth 12Mhz and 120Mhz.
Thanks!!
On Wed, Oct 30, 2019 at 6:24 AM Mário Luzeiro wrote:
> Its on master branch ;)
>
> http://git.savannah.nongnu.org/cgit/lwip.git/tree/contrib/examples/snmp/snmp_example.c
>
>
> From: lwip-users on
> behalf of Trampas Ster
test it but I will need SNMP trap too, so let me know if you get
> it work ;)
>
> Mario Luzeiro
>
> ________
> From: lwip-users on
> behalf of Trampas Stern
> Sent: 29 October 2019 17:51
> To: Mailing list for lwIP users
> Subject: [lw
Does anyone have an example of how to setup and send an SNMP trap message?
Thanks
Trampas
___
lwip-users mailing list
lwip-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/lwip-users
So the Cortex M4 processor has an internal cache see the CMCC peripheral in
the datasheet.
Try in your main code to disable the cache:
CMCC->CTRL.bit.CEN=0;
Then run your code and see if it works.
Again Atmel writes all their drivers with the cache turned off and if you
turn on you are on your
What processor are you using?
I had a problem with slow delay loading and found that the Atmel's example
driver for the GMAC was using DMA to transfer data and then polling the
SRAM DMA location to see when transfer was done. The issue was that if I
turned the data cache on in the processor it
goldsi...@gmx.de wrote:
> Am 24.10.2019 um 20:35 schrieb Trampas Stern:
> > I am with you on the old software! I would rather find new bugs than old
> > bugs that have been fixed. I start porting the latest lwip version.
>
> OK, please report back anything that's missing in t
I am with you on the old software! I would rather find new bugs than old
bugs that have been fixed. I start porting the latest lwip version.
On Thu, Oct 24, 2019 at 2:30 PM goldsi...@gmx.de wrote:
> Am 24.10.2019 um 00:54 schrieb Trampas Stern:
> > I was looking at upgrading to 2.x
I was looking at upgrading to 2.x of lwip, but was having some issues
getting it configured. Seems a lot has changed, and documentation is a bit
out of date on the porting.
Trampas
On Wed, Oct 23, 2019 at 5:55 PM goldsi...@gmx.de wrote:
> Am 23.10.2019 um 14:04 schrieb Trampas Stern:
&g
I was looking for some documentation on how configure custom OID for SNMP
using lwip 1.4.1, does anyone happen to have an example?
Thanks
Trampas
___
lwip-users mailing list
lwip-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/lwip-users
80 matches
Mail list logo