A network diagnostic tool. Initial goal is to show LLDP information; future goal is to allow more network diagnostics over BLE with a phone app.
- Additional diagnostics via BLE
- Set/reset MAC Address
- DHCP
- Ping
- Support CDP
- Reduce idle power draw (and thus improve battery life)
- Rev 0 34mA
- Rev 2 7mA
- Rev 3 150uA!
- 1G PHY: Support switches that don't go down to 100M (i.e. Arista DCS-7280TR)
- Cost reduction: $20-$30 per stick
Requires s132_nrf52_2.0.1_softdevice.hex
to be placed in ~/.platformio/packages/framework-arduinonordicnrf5/cores/nRF5/SDK/components/softdevice/s132/hex/
. The binary can be downloaded from Nordic Semi here under '11.0.0nRF5 SDK'.
- Install PlatformIO.
- Clone the repository.
- See "Dependencies" above - download and copy the SoftDevice hex file to the proper location. You may need to try
pio run
first to download the apporiate libraries. - Run platformio:
pio run
. - To upload: plug in your J-Link (or other programmer) and run
pio run -t upload
.
You will need:
- The PCB; you can order this from JLCPCB assembled using the included gerber/bom/placement files.
- An 128x64 i2c OLED Display with a SSD1306 controller and FPC connector; I buy from BuyDisplay.
- 2x Buttons for the top side: KSC441JST1LFS at Mouser - not available for assembly from JLC.
- Dual-LED chip LTST-C195KGJRKT at Mouser
- A small LiPo battery such as DU LITER 902035 (600mAh), or DU LITER 802245 (1000mAh), with JST PH 2.0mm 2-pin connector.
- The 3D printed case.
- 2x M4x2mm screws.
Steps:
- Order your PCBs from JLCPCB (or your manufacturer of choice - the part selection is such that assembly from JLC is turnkey). Continue once PCBs have arrived.
- Solder the OLED FPC connector.
- Solder buttons onto the front (back?) of the PCB. Also solder the dual LED package if you opted to only have one side of the PCB assembled.
- Fold the OLED connector over, and superglue the OLED so that the top of the OLED panel is about flush with the top of the PCB.
- Flush-trim the RJ-45 connector pins.
- Program the board with your favorite SWD programmer. I use a J-LINK.
- 3D print the case - body and one of the lids. Use the development lid if you plan on developing the board, as it will let you hang a SWD connector out the back.
- Angle the RJ45 side of the board into the case, and then push down on the USB-C end to fit the PCB into the case. Secure with 1-2 M2x4mm screws.
- Plug in the battery and (ideally) hotglue it in place in the case.
- Slide the "lid" printed part into its slot on the back of the body of the case.
...assuming you're assembling 5 at a time:
- PCB: $33.75 assembled (assuming top-side-only assembly, DHL shipping, JLCPCB, QTY 5)
- Screen: $3.56
- Battery: $6.40
- Misc components (LED, buttons, screws, case): ~$4
Total: $47.71/ea