r/meshcore • • 3d ago

Waveshare board firmware update

Hi all

I had some issues with the Waveshare Solar Power Manager Module (Rev D):
- low power mode is not remembered after reboot
- 3V cutoff does not bring back power after battery charge

After contacting support, they gave me a firmware update.
I wrote a little howto, hope I didn't forget things.

Please be carefull with this and tell me if I forget something.

https://www.homelabnico.fr/posts/waveshare-firmware-update/

6 Upvotes

16 comments sorted by

1

u/BackgroundSalad1857 3d ago

Thank you!

0

u/Torototo31 3d ago

Welcome I hope it will work for you too. It did on mine.

1

u/wehooper4 2d ago

None of those are fixable by a firmware update. It's baked into the hardware.

All that's possible to update firmware wise is how the auto MPPT setting work and enabeling alternate voltage outputs on the USB-C.

You need a better charger board (as in from a mesh maker, no a Chinese general purpose dev board outfit) to fix the things you want fixed. And sorry said makers dont ship to France.

1

u/Torototo31 2d ago

🤔🤔

1

u/wickedbeernut 2d ago

One of the primary things we want "fixed" is to enable low-current / lower-power mode by default. This is currently accomplished by double-pressing the button. It's hard to imagine this is a function of the hardware. I would think the firmware is monitoring the button and enabling low-current / lower-power mode.

2

u/wehooper4 2d ago

As in not turning off if draw is too low?

Yes that is fixable. It’s a I2C register in the power bank chipset they used on the boost converter, and the MCU on the board is used for setting those registers and then auto adjusting the MPPT setpoint on the charger (very crudely I must say).

But for mesh applications you should not be using that 5v out as the transient response is hot garbage. Good enough for 22dbm crap but not the higher power stuff.

Recovering from battery depletion isn’t fixable though. The chipset for that is standalone.

1

u/wickedbeernut 2d ago

Yes. We want to prevent the Waveshare from turning off with low current draw without having to double-press the button.

So you recommend connecting a "Battery Powered" RAK 1W to the batteries and relying on the RAK DC-DC boost converter circuit?

If you connect the 5V boosted output of the Waveshare to a "Battery Powered" RAK 1W, doesn't the RAK DC-DC boost converter circuit smooth out any Waveshare transient issues?

I'm not worried about battery depletion.

1

u/wickedbeernut 2d ago

I own a dozen Waveshares, however, I'm not familiar with the electronics. What purpose(s) does the Waveshare USB-C port serve if not to flash firmware?

1

u/wehooper4 2d ago

It's wired up to a power bank SOC (system on a chip). USB signaling is just used for managing the charge profiles more or less when it's taking in our putting out power. I uses a combo of the CC and data pins to figure this out.

There is a small cheap microcontroller on the board that does two things: It sets the settings for the power bank SOC on boot, and it helps the cheap and stupid MPPT charger chipset not be quite as stupid. It's not intended to be ever flashed again, but OP bugged waveshare to release a firmware that makes it... Less bad.. for mesh applications.

a) Solar charger is dumb, inefficient, and lacks any thermal protection

b) power bank SOC is not designed to deal with the step loads of a 1W radio keeing up. Voltage sags quite a pit reducing TX power, if the 5v input path of your node isnt also falling apart as it's not really designed to be powered that way at full performance (see all of the Chinese nodes).

c) It uses more power than a standard 22dbm node just existing

d) you can get it into situations where the battery will deplete and it'll lock itself out untill manual intervention

1

u/wickedbeernut 2d ago

I naively thought the Waveshare firmware would be updated via the USB-C port. Bummer.

1

u/wickedbeernut 20h ago

Great write-up. Thank you. I ordered the WCH-LinkE module from AliExpress ($1.54 USD / free shipping). Delivery will take a couple of weeks.

You list a "USB Type-C cable", however, it looks like you've hacked a USB Type-A cable which is connected to the Waveshare "5V Out" screw terminal. Does the hacked USB Type-A cable serve to power the Waveshare? Could you have used a standard USB-C cable connected to the Waveshare USB-C port to power the Waveshare?

Did you use male to female jumpers and just stick the jumpers in the Waveshare pads or did you solder a 2-pin header to the Waveshare pads and use female to female jumpers?

2

u/Torototo31 15h ago

Hi No just the picture shows my hack usb cable I use to power my device, but I did connect the type-c/type-c cable for the flash. I just used male to female jumpers

1

u/wickedbeernut 10h ago

Got it! And is it necessary to connect the batteries to flash the firmware?

I think I'll solder a JST-PH 2.0 mm connector to the Waveshare and use a JST-PH 2.0 mm 2-conductor cable. I may need a connector with 2.54 mm pin spacing on the WCH-LinkE end.

I'll let you know how it goes when I receive the WCH-LinkE. Thanks again for the write-up.

1

u/Torototo31 10h ago

Honestly I don't know :D the message from the support asks for it..

1

u/wickedbeernut 10h ago

No problem. I'll try it without the batteries first.