Forum Rule: Always post complete source code & details to reproduce any issue!

Search:

Type: Posts; User: shawn

Page 1 of 6 1 2 3 4

Search: Search took 0.00 seconds.

  1. Replies
    58
    Views
    2,194

    Glad you got it working. See the new SNTPClient...

    Glad you got it working. See the new SNTPClient example in the QNEthernet release for another approach.
  2. Replies
    58
    Views
    2,194

    I just released v0.7.0. The changes: ##...

    I just released v0.7.0. The changes:



    ## Added
    * The Boolean-valued link state is now `EthernetClass::linkState()`.
    * Added a weak `_write()` definition so that `printf` works and sends its...
  3. Replies
    58
    Views
    2,194

    @manitou: The remoteIP() was zero because when...

    @manitou: The remoteIP() was zero because when that was called, the client was already disconnected. I assume that once a client disconnects, things like remoteIP() shouldn't be valid; they go along...
  4. Iíve never used uIP. Looks like it was made by...

    Iíve never used uIP. Looks like it was made by the same author, though, so Iím imagining itís similar in feel. According to that article, it also looks like it was written for 8- and 16-bit systems.
  5. Replies
    58
    Views
    2,194

    I realized after it was uneditable that the UDP...

    I realized after it was uneditable that the UDP send speed is a value > 100Mbps. Iím sure thereís a good reason for thatÖ
  6. You should be able to call Ethernet.setlocalIP()...

    You should be able to call Ethernet.setlocalIP() (https://www.arduino.cc/en/Reference/EthernetSetLocalIP)

    Note: Iíve got another library, QNEthernet, that doesnít block when thereís no cable...
  7. Replies
    58
    Views
    2,194

    Here's some results I got myself. Test setup:...

    Here's some results I got myself.

    Test setup:

    MacBook Pro (13-inch, 2020)
    macOS Bug Sur v11.6
    Belkin USB-C Ethernet adapter
    Both the Teensy 4.1 and the laptop plugged into an eero 6 Pro...
  8. Replies
    58
    Views
    2,194

    Thereís a few reasons: 1. Iíd prefer not to...

    Thereís a few reasons:

    1. Iíd prefer not to run anything from an ISR context. Either Ethernet functions are called, in which case they need to run quickly, or a flag is set and then polled in some...
  9. Replies
    58
    Views
    2,194

    It seems to be difficult to find documentation on...

    It seems to be difficult to find documentation on what to send on the control port for `nuttcp` to have it listen for data on port 5001. (Same comment for iperf.) @manitou, what commands are you...
  10. Replies
    58
    Views
    2,194

    Thanks for these tests, @manitou. ...

    Thanks for these tests, @manitou.



    Hopefully my library migrates to your "recommended list" one day. :)

    I have some questions and comments:

    I'm assuming you used your fnet_perf.ino as a...
  11. Do either of you feel like trying QNEthernet...

    Do either of you feel like trying QNEthernet to see if the problem exists there too?
  12. Maybe close if itís from the same host.

    Maybe close if itís from the same host.
  13. Glad you found a solution. It sounds like: 1....

    Glad you found a solution. It sounds like:
    1. That ftpd code should be modified to protect against malicious clients. I.e. ones that donít close the PASV connection and cause the listening sockets...
  14. A couple things I can think of: 1. Try...

    A couple things I can think of:
    1. Try increasing the number of listening things by setting MEMP_NUM_TCP_PCB_LISTEN to something greater than 8 in lwipopts.h.
    2. Is it possible that whatever FTP...
  15. Sid, let's call this "Example 1". I cleaned up...

    Sid, let's call this "Example 1". I cleaned up the networking code, but left the ftpd part as-is. If this still has problems, then we'd need to look inside ftpd. (I don't have the hardware with which...
  16. I had to fix some compile problems: Changed FAT_*...

    I had to fix some compile problems: Changed FAT_* to FS_* in the `gmtime` function in vfs.cpp.
  17. I'm almost done with the example. Where's...

    I'm almost done with the example. Where's lwip_ftpd-sd.h from?

    Update: Found it here: https://github.com/PaulStoffregen/teensy41_ethernet/tree/master/t41ether/lwip-ftpd-sd
  18. If 40 transfers worked, does this mean the...

    If 40 transfers worked, does this mean the problem appears solved with QNEthernet? Having a look at the source anyway...
  19. Thanks for trying it. I'm curious about the ping...

    Thanks for trying it. I'm curious about the ping issue. As long as the device is connected with an IP address, I've never seen a ping to the device fail. Some things to check and to try:
    1. Is the...
  20. Replies
    60
    Views
    1,559

    I went through a few of my outstanding issues and...

    I went through a few of my outstanding issues and made a few PRs (including an updated one that doesn't have an attached issue):


    https://github.com/PaulStoffregen/cores/pull/416 (Disable...
  21. Replies
    1
    Views
    138

    I solved this by properly removing the netif ext...

    I solved this by properly removing the netif ext callback (additions and removals were not matched). It doesn’t freeze, but now DHCP can’t get an IP address when Ethernet is restarted.
  22. Iím curious if this also happens in QNEthernet...

    Iím curious if this also happens in QNEthernet. Do either/both of you feel like trying?
  23. Replies
    58
    Views
    2,194

    I just released v0.6.0. The changes: ...

    I just released v0.6.0. The changes:


    There's a new "survey of how connections work" section to the README.
    Added low-level link receive error stats collection.
    Added a call to `loop()` in...
  24. Replies
    58
    Views
    2,194

    Ah, yes, indeed. That's certainly a case where...

    Ah, yes, indeed. That's certainly a case where yield() willn't call loop(). :)
    Thanks for pointing that out.

    Thanks also to everyone who's been adding to the discussion. It's making the library...
  25. Replies
    58
    Views
    2,194

    yield() will always call loop() (unless youíve...

    yield() will always call loop() (unless youíve overridden yield()). Itís that yield() has other overhead.
  26. Replies
    58
    Views
    2,194

    Update: Heck with it, I just replaced all the...

    Update: Heck with it, I just replaced all the non-looping `yield()` calls with `EthernetClass::loop()`. This should speed things up a bit for `EthernetClient` and `EthernetUDP`.
  27. Replies
    58
    Views
    2,194

    mamdos, see this new commit:...

    mamdos, see this new commit: https://github.com/ssilverman/QNEthernet/commit/ec9abbc733836c22685e911482ed3109a1df9cf3

    I added `Ethernet.loop()` as one of the functions you need to call when...
  28. Replies
    58
    Views
    2,194

    mamdos, there's a few things happening here: ...

    mamdos, there's a few things happening here:


    `loop()` is already called in a loop, so there's not really any need to loop in that.
    After every call to `loop()`, the system calls `yield()`,...
  29. Replies
    74
    Views
    2,738

    Here's a PR that addresses the IntervalTimer TODO...

    Here's a PR that addresses the IntervalTimer TODO for disabling the IRQ when all timers have stopped (Teensy LC and Teensy 4):
    https://github.com/PaulStoffregen/cores/pull/416
  30. Replies
    74
    Views
    2,738

    PR for fixing an ENET register offset in imxrt.h:...

    PR for fixing an ENET register offset in imxrt.h: https://github.com/PaulStoffregen/cores/pull/606
  31. Replies
    58
    Views
    2,194

    I just released v0.5.0. The changes: Added...

    I just released v0.5.0. The changes:


    Added link-status and address-changed callbacks.
    New `EthernetServer::end()` function to stop listening.
    New `Ethernet.linkSpeed()` function. Returns...
  32. Replies
    1
    Views
    138

    Disabling Ethernet without freezing

    When Ethernet is initialized in QNEthernet, the Ethernet clock in the the clock gating register CCM_CCGR1 (CG5) is enabled. I know that when a feature on an ARM processor is used without first having...
  33. Replies
    58
    Views
    2,194

    Yep, that sounds right.

    Yep, that sounds right.
  34. Replies
    58
    Views
    2,194

    Here's a quickie example I'm calling...

    Here's a quickie example I'm calling "LengthWidthServer" that shows how a server can process a continuous stream of messages from multiple clients, where each message has a length byte:



    //...
  35. Thread: IDE Intellij

    by shawn
    Replies
    1
    Views
    244

    I wonder if thereís a straightforward way to...

    I wonder if thereís a straightforward way to integrate PlatformIO, or if something already exists (I havenít looked yet)Ö

    Update: https://www.jetbrains.com/help/clion/platformio.html
  36. Replies
    58
    Views
    2,194

    Here's a quickie example of how a server could...

    Here's a quickie example of how a server could process a continuous stream of fixed-width messages from multiple clients:



    // SPDX-FileCopyrightText: (c) 2021 Shawn Silverman <shawn@pobox.com>...
  37. Replies
    58
    Views
    2,194

    Here's a survey of how connections (aka...

    Here's a survey of how connections (aka "EthernetClient") work (at least with QNEthernet):


    `connected()`: Returns whether connected OR data is still available (or both)
    `operator bool`:...
  38. Replies
    58
    Views
    2,194

    One of the things I donít like about the...

    One of the things I donít like about the ďserver.available()Ē API is that itís not complete. Thereís no defined way to map the client object you receive to state being managed by your program. The...
  39. Replies
    58
    Views
    2,194

    Are you always expecting a fixed number of bytes...

    Are you always expecting a fixed number of bytes or an arbitrary number of bytes (eg. controlled by, say, a ďlengthĒ field or two)?
  40. Replies
    58
    Views
    2,194

    Joe, can you tell me more about your use case?...

    Joe, can you tell me more about your use case? Different uses demand different styles of API usage and state maintenance. For example, an HTTP server could be done by having itself manage all the...
  41. Replies
    58
    Views
    2,194

    Joe, one more thing: The original example...

    Joe, one more thing: The original example actually has `clients[i] && !clients[i].connected()`, and I think I was experimenting, but that code is confusing in any case. I think they may have meant...
  42. Replies
    58
    Views
    2,194

    Joe, I'll add another point: The code feels wrong...

    Joe, I'll add another point: The code feels wrong because why would you stop a client whose Boolean value returns false? In fact, a client returning a Boolean isn't specified very well and is...
  43. Replies
    58
    Views
    2,194

    Hi, Joe. That test code in test/main.cpp was...

    Hi, Joe. That test code in test/main.cpp was adapted from all the Arduino test code here: https://www.arduino.cc/en/Reference/Ethernet

    I just wanted to make sure the library worked as expected...
  44. Replies
    58
    Views
    2,194

    Thank you for these examples. I'll see what's up...

    Thank you for these examples. I'll see what's up with static IP...

    Update: I just tested static IP and it seems to work fine. But now I'm just realizing that you may have meant the examples and...
  45. I have another Ethernet library you can try:...

    I have another Ethernet library you can try:
    https://github.com/ssilverman/QNEthernet

    Itís based on lwIP instead of FNET, as an alternative for those who are more familiar with that stack.

    Its...
  46. Replies
    58
    Views
    2,194

    I just released v0.4.0. The changes: ...

    I just released v0.4.0. The changes:


    Updated to lwIP v2.1.3-rc1.
    Moved the global objects (Ethernet and MDNS) into the same namespace as everything else. This means the "using namespace"...
  47. Replies
    58
    Views
    2,194

    Version 0.3.0 (tagged as "v0.3.0" in the repo)...

    Version 0.3.0 (tagged as "v0.3.0" in the repo) has:


    Revamped and centralized connection management.
    Works as an Arduino library.
    Bug and kink fixes.
    Update to "it's really v2.1.2 this...
  48. Replies
    58
    Views
    2,194

    New lwIP-based Ethernet library for Teensy 4.1

    Hello, all. I went ahead and made an lwIP-based Ethernet library for the Teensy 4.1. Some details about it:


    This currently is not a complete drop-in replacement for the Arduino-style Ethernet...
  49. I actually am interested in calling something as...

    I actually am interested in calling something as often as possible; I was just using the 10Hz LED change as an experiment to test my understanding. I completely forgot that `delay` calls yield....
  50. The observed behaviour is that the LED doesn't...

    The observed behaviour is that the LED doesn't flash. I would expect the same behaviour as this code (without `EventResponder`):


    void loop() {
    delay(100);
    digitalWriteFast(LED_BUILTIN,...
Results 1 to 50 of 259
Page 1 of 6 1 2 3 4