how did you update? i seem to remember this being a byproduct of back-door installing the firmware.
I downloaded the file from the website and put it on a USB thumb drive, and reloaded the software like that, since the old one was very old, version 1.0.0 The update went fine, and it looks like it's running well, it's just the screen that is upside down.
I believe the next update from normal means will fix this.
I see that that there is a new LinkPi 4k60 encoder available - LinkPi ENC1Pro. This looks interesting and although significantly more expensive than the other 1 input models looks like a price breakthrough for a 4k60 HDMI encoder. I don't know if HDR is supported.
I'd be interested in anyones feedback of ENC1Pro if they decide to buy one.
The MiniENC1 looks interesting as well and is powered by USB-C.
I've ordered the MiniEnc1. I've currently got the ENC1V2 which works very well. Hopefully, the MiniENC1 is powerful enough to encode one stream well. The specs for the MiniEnc1 state that it can encode one full 1080p 60fps stream or 2 1080p 30 fps streams.
LinkPi ENC1Pro $320
4k60 encode is nice but WOW on price for single input.
Really wish someone would come up with a reasonably priced one that did 5.1 audio encoding even more than 4k60 instead of everything being down converted to stereo.
I picked up a MINIENC1 a month ago to try it out. It works just as well as the ENC1V2 for what Channels users would be using it for.
Just make sure you upgrade the firmware as the shipping firmware has a bug that locks it to 30fps.
It’s a tiny thing:
Sharing some info: I have noticed with the ENC5V2 and the MINIENC1 that the AVBR encoding mode doesn’t work as well as it does with the ENC1V2. The bitrate often drops way too low during scene transitions which results in a few seconds of really blocky video. Based on this experience my recommendation now is to stick with VBR or CBR mode.
—
And sharing some more info:
The Onn 4k Pro streaming devices are a good combo with most of the LinkPi devices (not the MINIENC) because they are also powered by 12v DC (5.5mm connector).
A power supply like this:
https://www.amazon.com/gp/product/B0C3LBN71Q/
combined with a simple splitter
https://www.amazon.com/dp/B06Y1Y94PR/
can power the whole setup without any additional adapters.
Here's a bit more detail (in Bash function form) on using the LinkPi API. For my purposes, I've found that logging in (to get the needed tokens), followed by performing the task and then logging out to be the best way to go. The tokens are valid for a period of time, but there'd be more code required to deal with that.
This function should give you an idea what it looks like to send a JSON payload to change the crop values for given HDMI input port on a LinkPi:
linkpiCrop() {
linkpiStreamID=$(echo "$encoderURL" | awk -F'stream' '{print $2}')
linkpiCropLeft="\"$1\""
linkpiCropRight="\"$2\""
linkpiCropTop="\"$3\""
linkpiCropBottom="\"$4\""
linkpiPasswordMD5=$(echo -n admin | md5sum | awk '{print $1}')
linkpiJSON=$(curl -v -c linkpi_cookie --digest -u "$LINKPI_USERNAME:admin" "http://$LINKPI_HOSTNAME/link/user/lph_login?username=$LINKPI_USERNAME&passwd=$linkpiPasswordMD5")
lHash=$(echo "$linkpiJSON" | jq -r '.data."L-HASH"')
pHash=$(echo "$linkpiJSON" | jq -r '.data."P-HASH"')
hHash=$(echo "$linkpiJSON" | jq -r '.data."H-HASH"')
# echo "L-HASH: $lHash"
# echo "P-HASH: $pHash"
# echo "H-HASH: $hHash"
curl -s --digest -u "$LINKPI_USERNAME:admin" -b linkpi_cookie -X POST -L http://$LINKPI_HOSTNAME/link/encoder/set_cap_chns \
-H "L-HASH: $lHash" \
-H "P-HASH: $pHash" \
-H "H-HASH: $hHash" \
-H "Content-Type: application/json" \
-d '[{"id":'$linkpiStreamID', "L":'$linkpiCropLeft', "R":'$linkpiCropRight', "T":'$linkpiCropTop', "B":'$linkpiCropBottom'}]'
curl -s --digest -u "$LINKPI_USERNAME:admin" -b linkpi_cookie -L http://$LINKPI_HOSTNAME/link/user/lph_logout \
-H "L-HASH: $lHash" \
-H "P-HASH: $pHash" \
-H "H-HASH: $hHash"
}
I posted this late last year too, but here's the LinkPi API documentation, for those interested in getting the most out of this intriguing device:
I am coding a VB.NET application to get API control
I am able to login with Digest Authentication and can get the 3 HASH values
When i send a new request to api call what do i have to add to the request header to work?
Must the request header be the same as in the login request?
Is there any example of doing this?
Welcome to the Channels DVR community!
The post you replied to includes an example Bash function for the entire process of logging in, and extracting the hashed tokens.
In addition, this function then re-uses those tokens to send crop values to the encoder before logging out
It is possible to continue to use the same tokens, until they expire after some hours, but that would require additional logic.
Thanks for fast reply!!!
I tried to send the api request after successfull login with the three tokens L P H but get the response to first login?
Then you're probably not sending the tokens correctly. This part of the above function shows how it's done:
curl -s --digest -u "$LINKPI_USERNAME:admin" -b linkpi_cookie -X POST -L http://$LINKPI_HOSTNAME/link/encoder/set_cap_chns \
-H "L-HASH: $lHash" \
-H "P-HASH: $pHash" \
-H "H-HASH: $hHash" \
-H "Content-Type: application/json" \
-d '[{"id":'$linkpiStreamID', "L":'$linkpiCropLeft', "R":'$linkpiCropRight', "T":'$linkpiCropTop', "B":'$linkpiCropBottom'}]'
I got it working!!!!
Thanks for the hint
20250228 firmware out
Removed the classic version web page and related configurations for all models
Optimized the memory usage of the log function
Optimized the decoding logic of the network stream without audio
Removed the insta360 Link page under the laboratory
Added a USB camera page in the laboratory, compatible with insta360 control
Fixed the problem of inaccurate acquisition of reserved space on some USB disks when using loop recording
Fixed the problem of discontinuous file names displayed on the [File Management-Loop Recording] tab on the file recording page
Removed the AUD and BR status display on the OLED display, and added the recording (REC) and push streaming (PUSH) status display
Adjusted the interactive logic of mixing on the video mixing page
20250430 firmware out
Fixed the problem that the scanned NDI stream and device IP do not match
Removed the invalid network port display on the ENC2V2 model page
Changed the default EDID of ENC8 and ENCMini models to 1080
Fixed the problem that the timer switch push stream setting does not take effect
Fixed the problem that the remote assistance of ENCMini models cannot be turned on
Fixed the problem that SSH login of ENCMini models cannot be performed
New mac address management mechanism
Stream output page, rtsp tab adds a custom channel to turn on the Onvif output function
Optimize the memory usage of ENCMini models
Optimize the Onvif output function
Optimize the WebRTC protocol stream
Optimize the stability of connecting to the TallyArbiter service
Optimize the device startup speed
newer 4.1.1 build available of same firmware version.
Sorry to change the subject - I have 2 x Onn TV HDs and 3 x FireTV 4K Max sticks plugged into the LinkPi - the black levels on the 2 Onn TV sticks are noticeably darker on the LinkPi - I am not aware of any significant difference in the setup for the devices and the LinkPi settings are identical for all 5 inputs - can anyone explain?
See if my old post helps.
Thanks! Changing Firesticks to YCbCr/12 bit/HDR off makes black levels match the Onn HD's when viewing on a PC - Viewing on 4K/UHD TVs can conceal the difference if the "Always HDR" (or similarly named feature) is turned on
New LinkPi 4K60 Model, ENC1PRO. Not sure there is a great need for 4K capture, but here it is!


