Migrating from 0.17.5 - asking for trouble?

I have NR 17.5 with UIBuilder that has been running a long time on a Pi 3B. I've avoided upgrading it because it was stable and ran great. Now I have a Pi 4B and need to get everything going on a fresh install of Buster. I know this is pre-projects so I'm a bit afraid what might happen. Are there any absolute gotchas to this giant leap forward or is it just not that bad?

Should be no problems - use the upgrade script we provide.
I'd recommend backing up first of course - but if this is a new Pi with a new SD card then you should be able to copy the flows / user directory over completely.

I've had two issues with node-red version updates.

First wasn't really node-red fault but it broke my ported flow, it was a contributed node that I used that was incompatible with the nodejs version used by the update. I downgraded the nodejs version which solved the issue until the contrib node itself was upgraded, then I went back to the prefered nodejs version.

Second one was more recent (19.5 -> 20.5 maybe?), a subtle change in the MQTT input node added a "new property" to configure the input message as either Auto, Buffer, or String. The default Auto was not getting my jpeg image buffers correct causing consternation after porting. When I eventually stumbled on to the new property and changed it from Auto to Buffer, problem solved.

For future reference, raising an issue for items like this would really help us so they get fixed.

I'd be happy to, but I'm a bit fuzzy on exactly how to raise an issue short of a post here. It took me quite a while to realize that the older systems didn't have this MQTT input config option. In this particular case I'm not sure I could provide details on how to trigger it.

The auto mode is (or should have been) exactly as it was before, so yes, slightly surprised, not heard of it before. Maybe a copy of one of the jpgs that triggered it (if not personal)

Since you are creating a completely new system there is nothing to be afraid of. Even if it does not work it does not matter as the old one will still be working. Install the new system, copy the files across and see what happens. If it has a different host name (as presumably it will) then rename the flows file accordingly.

You could also copy your flow and flow config file to another location (your PC or mac for instance) then buy a new SD card. Install buster on it and node-red and any nodes you use and then copy the flow and flow config to it.

This way you still have the SD card with your current sstem if you have an issue and once everything is running, you can reformat that card, piclone the existing system to it and you will have a backup SD card.

Maybe a copy of one of the jpgs that triggered it (if not personal)

Nothing personal just security camera images, I can't send you any as I'd setup my AI system at a friends and his fresh install of node-red is when I encountered the problem, so I don't have access to any of the images at present, they are 50 miles away. These were MQTT buffer containing the jpeg encoded image to be attached as an Email. My local test Email to verity the Email node settings worked fine, the actual images looked to be attached as gibberish text. Real head scratchier until I stumbled on the extra property in the MQTT input configuration.

If no one else is encountering it I doubt it will be worth trying to look into it. Maybe something is not quite right with the jpeg headers produced by the OpenCV encode function that messed up the auto function.

Ok no worries. If you get one at some point send it on. The auto mode looks for any non-ascii character and then assumes binary. I’d be very surprised if a jpg only contained ascii.

I'll be setting up another system from a virgin install in a couple of weeks. I pay particular attention to help track it down should it happen again.

1 Like

FYI I got everything going and it worked without any problems. BTW, great job, especially on the context browser!