⚡ [Project Release] Ethernet for BW16 (RTL8720DN) + W5500 — Arduino Proof-of-Concept

Hi everyone,

Sharing my ongoing proof-of-concept to bring wired Ethernet (W5500) to the Realtek BW16 / RTL8720DN using the Arduino toolchain.
The project — EthernetRTL_BW16 — adapts Ethernet3 for BW16 and successfully compiles a clean test sketch (W5500_TestCompile.ino).

Includes schematic (PDF), Cirkit wiring image, and detailed README.
Next step: live SPI + network testing on hardware.

:backhand_index_pointing_right: GitHub: https://github.com/azhaque59/EthernetRTL_BW16

Feedback, testers, and collaborators welcome!

73s.

Hi @zebzeb. Thanks for sharing.

I ran the official Arduino Lint tool on your library and it found serious problems:

$ arduino-lint --project-type library

Linting library in EthernetRTL_BW16
ERROR: Missing maintainer field in library.properties
       See: https://arduino.github.io/arduino-cli/latest/library-specification/#libraryproperties-file-format
       (Rule LP025)
ERROR: Missing url field in library.properties
       See: https://arduino.github.io/arduino-cli/latest/library-specification/#libraryproperties-file-format
       (Rule LP040)
WARNING: Missing architectures field in library.properties
         See: https://arduino.github.io/arduino-cli/latest/library-specification/#libraryproperties-file-format
         (Rule LP043)
ERROR: Sketch(es) found outside examples and extras folders:
         E:\incoming\EthernetRTL_BW16-main
       See: https://arduino.github.io/arduino-cli/latest/library-specification/#library-examples
       (Rule LD003)
WARNING: No example sketches found. Please provide examples.
         See: https://arduino.github.io/arduino-cli/latest/library-specification/#library-examples
         (Rule LD004)

Linter results for project: 3 ERRORS, 2 WARNINGS

-------------------

You should take some time to carefully study the Arduino Library Specification and make sure you comply with the specification in your projects:

https://arduino.github.io/arduino-cli/latest/library-specification/


I would also suggest you use the Arduino Lint tool to find common problems with your Arduino projects:

https://arduino.github.io/arduino-lint/

As a complement or alternative to using the tool locally on your PC, you might find it convenient to install a GitHub Actions workflow in your GitHub repositories to automatically run Arduino Lint on the project after each change. Arduino Provides a companion GitHub Actions action that makes setting up such "continuous integration" system very easy:

We use such workflows in every official Arduino library repository, and find it quite useful. For example, you can see the workflow installed in the repository of the "Arduino_PF1550" library here:

Thanks for your effort and guidance. I'll add the various fields in the library.properties file.

As you will note, the yield() error which we discussed couple of months back has been overcome and we are getting it to compile.

Please note that this is wip. I am currently redoing my breadboarded version of the bw16- w5500 for hardware validation. Hopefully if all goes well, I should be able to test with BLINK. Next test will be SPI connection between the bw16 and the 5500.
Thanks again for the reply.

1 Like

Library.properties in <GitHub - azhaque59/EthernetRTL_BW16: W5500 Ethernet compile test for Realtek BW16 (RTL8720DN). Work in progress. > updated.
Shall create and populate the examples/ folder tomorrow.
Regards

1 Like