S
Reaction score
123

Latest activity Postings About

    • S
      shawn replied to the thread Compilation flag with arduino-cli.
      The Teensy platform has chosen not to implement the Arduino extra_flags feature, but you can enable it like so: https://github.com/ssilverman/QNEthernet/blob/master/README.md#configuring-macros-using-the-arduino-ide (“Configuring macros using the...
    • S
      In C++17, the -felide-constructors build flag should no longer be needed because the language guarantees Return Value Optimization (RVO). On the other hand, I don't think its presence is a problem if it's not removed.
    • S
      I examined the mouse’s interface structure with Wireshark and saw that it had three interfaces. Then, after analyzing the hex codes, the HID Report Descriptor data, the endpoint data, and so on, I wrote code from scratch based on that information...
    • S
      I just did a little research and lwIP appears to ignore the URG flag and just sends all OOB data inline.
    • S
      Not sure if it's implemented or even feasible with lwip, but have you given any thought to supporting OOB (out of band) data? It's a bit similar to how USB device can have bulk and interrupt endpoints; the regular, "big" data traffic goes over...
    • S
      For now, I think leaving only the reply on is the way to go. The reason I don’t want to include sending pings by default is because it includes another part of the library, raw IP, which adds more code. The lwIP library is designed to be smaller...
    • S
      Updated QNEthernet library feature list: 1. Compatible with the Arduino-style Ethernet API 2. Additional functions and features not in the Arduino-style API 3. Automatic MAC address detection on the Teensy platform; it's not necessary to...
    • S
      shawn reacted to mgolden's post in the thread SimplePing not working in QNEthernet with Like Like.
      I do not personally have a need for it. However, I have worked at places that don't want their networks scanned to determine what is on them. In such circumstances, I would expect them to want to be able to turn off responses. In fact, I think...
    • S
      I’ve added a “QNETHERNET_ENABLE_PING_REPLY” configuration macro and renamed the other one to “QNETHERNET_ENABLE_PING_SEND”. I changed these locally, but they’ll be up on GitHub soon so you can try them. Thanks for the idea.
    • S
      Out of curiosity, why do you want to disable ping (echo) replies? I can think of some security reasons, but what are yours?
    • S
      I can look into that.
    • S
      Ah! Thanks for that. I should probably clarify: enabling ping is for sending and processing replies. The stack will always reply to a ping, whether QNETHERNET_ENABLE_PING is on or not. In other words: there’s no need to enable any features if...
    • S
      Quitting the IDE and then reopening the project should rebuild everything.
    • S
      I've improved the SimplePing example, below, to signal any DNS lookup errors. I'll be including it in the next version of the QNEthernet library. // SPDX-FileCopyrightText: (c) 2025 Shawn Silverman <shawn@pobox.com> // SPDX-License-Identifier...
    • S
      I just tested the example and it works fine. Here were my steps: 1. Modify line 86 (library v0.33.1) of qnethernet_opts.h so that QNETHERNET_ENABLE_PING is 1 instead of 0. 2. Open and run the SimplePing example in the Arduino IDE. Some possible...
    • S
      The needle may be obvious once you see it, but in your defense, the haystack is rather large. :)
    • S
      You need to modify the existing line and not add a line.
    • S
      Did you release the button when you saw that LED flash? That should happen after 13-15 seconds or so. After you release the button, the erase process should start, and should take about a minute-ish.
    • S
      No it doesn't. You have it backwards; LittleFS and SdFat are both implementations of the FS interface. Some of the functions may have been "inspired" by the SdFat functions originally but that is because they are generic enough to fit any...
    • S
      I think you need to actually understand what the FS class is for - what happens when someone calls your new fgets method on an FS implementation (e.g. LittleFS) that doesn't support it? Or even a File object that isn't a currently opened file...
    • S
      I agree with this take, that fgets() should not be added to File/FS.h. It’s possible to implement Newlib’s auxiliary file-related functions (_read(), _write(), _open(), etc.). Then you get almost all of the C file calls for free, including...
    • S
      But File isn't just a wrapper for SdFat... It's a generic file handling class. Adding a function to it means every underlying filesystem object must support it. That's exactly the sort of thing that libc's formatted I/O functions are designed to...
    • S
      shawn replied to the thread Qualcomm Arduino license changes.
      I'm referring to this text: Source: https://arstechnica.com/gadgets/2025/11/arduinos-new-terms-of-service-worries-hobbyists-ahead-of-qualcomm-acquisition/ In order to include one's library in the Library Manager, you need to submit a URL to...
    • S
      shawn replied to the thread Qualcomm Arduino license changes.
      I'm kind of nervous now about having any of my libraries in the Arduino library manager.
    • S
      Hey Everybody! I wanted to share my latest Teensy project, a 6-voice polyphonic virtual-analog synth built with Teensy 4.1, inspired by the iconic Minimoog Model D. It includes full subtractive synthesis, USB audio/MIDI, a menu interface and a...
    • S
      THANK YOU @shawn. it is one what i want Serial.printf("Read %s into memory at %08X; %d bytes\n", SMP_WAV[i], SMP_addr[i], sizes[i]); snprintf(buffer, sizeof(buffer),"Read %s into memory at %08X; %d bytes\n", SMP_WAV[i], SMP_addr[i]...
    • S
      shawn replied to the thread Qualcomm Arduino license changes.
      I get red flags when someone (anyone) comments that “oh, don’t worry about that, that’s just boilerplate.” Case in point: look at what CRC Press did to MathWorld and Eric Weinstein. It’s one of the reasons I don’t buy new CRC Press books.
    • S
      shawn reacted to jmarsh's post in the thread Teensy 4.1: release thread from interrupt with Like Like.
      I've told you what can be done, I'm not going to spend my personal time working on something I'm not interested in for free.
    • S
      If I’m understanding correctly, see snprintf().
    • S
      Software The codebase is large and makes use of many libraries (several of which I created/ported especially for this project). All the development was done in Visual Studio with the Visual Micro extension. I prefer this setup over VS...
    • S
      According to Adafruit's Phil Torrone, https://x.com/ptorrone/status/1990833856182653171 it does not look good. I warmly recommend checking the modified Arduino Privacy Policy and Terms and Conditions. I'm not sure I can agree to those terms and...
    • S
      Neither function re-enables the previous IRQ state. And usb_serial_read() attempts to disable the IRQ while it fills the buffer, but then may call rx_queue_transfer() which enables it. At best, this is surely not as intended. At worst, it'll...
    • S
      Are you saying it’s done wrong because it doesn’t reenable the previous IRQ state?
    • S
      shawn reacted to MarkT's post in the thread Class D amp + AA battery = voltage drop with Like Like.
      Try 4 NiMH rechargable AA batteries (about 5.3V), which should have better high current handling. 3 x alkaline AA is only 4.5V and thus much closer to undervoltage cutoff, and the max current is less than with good NiMH cells. 1000uF is not...
    • S
      shawn reacted to jmarsh's post in the thread Teensy 4.1: release thread from interrupt with Love Love.
      You don't need the interrupt / cpu intervention. That timer can be routed through the crossbar to trigger SPI directly. Then SPI can be read by DMA to fill a buffer, only requiring CPU intervention when the buffer is full (and automatically...
    • S
      shawn reacted to jmarsh's post in the thread Teensy 4.1: release thread from interrupt with Like Like.
      I am also very confused because here this started out as a discussion of using USB serial and is now discussing the details of the hardware UART serial driver... not to mention the original issue even earlier was how to wait for a flexPWM...
    • S
      shawn reacted to jmarsh's post in the thread Teensy 4.1: release thread from interrupt with Like Like.
      You can't use the C++ threading primitives on Teensy. They have to be implemented (e.g. like all the other stuff provided by newlib) by a kernel since you can't block on a mutex, semaphore, etc. without some sort of context/threading system...
    • S
      I’d bet that the C++ primitives, eg. std::mutex and the atomics (and semaphores from C++20), use these instructions.
    • S
      PlatformIO isn’t an IDE. It’s a plug-in for whatever IDE you would like to use, including the command line. Its Python-based and is a set of tooling that enables development of a wide range of platforms on a wide range of host platforms. If I...
    • S
      shawn reacted to DrM's post in the thread Teensy 4.1: release thread from interrupt with Like Like.
      My preferred development environment is gcc, make and emacs, and sometimes a degugger with ICE. I've been using the Arduino IDE, but with some hesitancy. Too much of the low level code is not very good. I do not see myself ever using...
    • S
      Yes. It’s about what the compiler vendor provides. In this case, an ARM-supplied version of GCC. I’m fairly certain that the implementation uses all the proper atomic instructions, etc. Myself, I use some C++20 features on the Teensy with...
    • S
      It’s also possible to disable specific interrupts, eg. serial port interrupts, so you don’t need to disable all of them with disable-irq.
    • S
      C++20 includes std::counting_semaphore if you feel like switching the compiler version. In C++17, an implementation might use a std::mutex with a condition variable. The excellent Abseil library includes one too, I think. It works on embedded...
    • S
      I've recently taken a few steps to deal with the Russian bots creating new accounts. Banned 114 netblocks. Will give the list & details below. Registration now rejects anything from PureVoltage ASN 26548. Registration now checks GetIPIntel.net...
    • S
      Looks like the bot troubles might be 2 or 3 distinct groups. Russians are definitely behind a campaign attempting to create forum accounts. Even though the problem has been ongoing and seems to have massively increased a few weeks ago, it...
    • S
      The bots that caused trouble earlier this year are back again. Or they never really left, but blocking slowed them down and increasing memory limits let this server to handle the load... until now. We were down for at least 6 minutes yesterday...
    • S
      Thanks for that. Fixed. (I did a force push, so it's possible you'll need to delete ~/.platformio/packages/tool-teensy first if a reload/re-save of the platformio.ini file complains.)
    • S
      I have a new way to add the betas to PlatformIO without creating the layout yourself. Here's an example for the Mac: platform_packages =...
    • S
      I fixed a missing file in v0.33.1.
    • S
      I just released v0.33.0. Here's the changelog: ## [0.33.0] ### Added * Added a way to iterate over the internal TCP connection PCBs. * Added calls to `Ethernet.loop()` in more places. * Added setting `errno` to `ENETDOWN` in `EthernetClass` in...
  • Loading…
  • Loading…
Back
Top