Balena version for iot-gate-imx8plus

We are developing a release for iot-gate-imx8plus boards.
Using balena-cli I get the following outputs:

balena os versions iot-gate-imx8plus
v2.113.31+rev1
v2.113.18+rev2

and

balena os versions iot-gate-imx8
v4.0.25
v4.0.24
v4.0.23
v4.0.22+rev2
v4.0.22+rev1
v4.0.22
v4.0.21+rev1
v4.0.21
v4.0.15
v4.0.12+rev1
v4.0.12
v4.0.11
v4.0.10
v4.0.9
v4.0.7
v4.0.4
v4.0.3
v4.0.2
v4.0.1
v3.2.12
v3.2.11+rev2
v3.2.11+rev1
v3.2.11
v3.2.8
v3.2.7
v3.2.6+rev1
v3.2.6
v3.2.5+rev1
v3.2.5
v3.2.4+rev1
v3.2.4
v3.2.3
v3.2.2
v3.2.1
v3.2.0
v3.1.13
v3.1.12
v3.1.10
v3.1.9+rev1
v3.1.9
v3.1.7
v3.1.6+rev2
v3.1.6+rev1
v3.1.6
v3.1.3+rev1
v3.1.3
v3.1.2
v3.1.1
v3.1.0
v3.0.17
v3.0.15
v3.0.14
v3.0.12+rev2
v3.0.12+rev1
v3.0.12
v3.0.8+rev3
v2.108.29
v2.108.1
v2.98.33
v2.85.2+rev1.prod
v2.85.2+rev1.dev
v2.82.10+rev1.prod
v2.82.10+rev1.dev

Why does the iot-gate-imx8plus have no new versions available for download? Is it still supported?

2 Likes

Hello @ben this is a very good question! Thanks!

Currently we are automatizing the release of new balenaOS versions using the Autokit in our office in Athens. We are adding new hardware on the Autokit, however not all the device types are still available.

For what you share I can imagine that the iot-gate-imx8 is automatically being updated as probably it’s part of the Autokit but not the iot-gate-imx8plus yet.

Let me confirm that.

Thanks for the update mpous.

If it is not part of the Autokit yet, it would be nice if a new version would be released manually for iot-gate-imx8pluss, o we can move to production with a recent version of BalenaOs.

1 Like

@ben the versions available for the iot-gate-imx8plus are quite new, so i think you are safe starting with those versions and grow until we add the device in the Autokit.

Let me know if we can help you more!

Is v2.113.18 considered a new version?
I cannot use balena preload to create image for the factory for device production.
I presume it is an issue with the older version, but i am no sure.

balena os download iot-gate-imx8plus --version v2.113.31+rev2 --output balena-iot-gate-imx8plus-v2.113.31+rev2.img
balena preload balena-iot-gate-imx8plus-v2.113.31+rev2.img --fleet solaredge_software/lc_imx8plus_testing --commit e784a013a6bfe0168edc46ff455a7584 --debug

fleet:   solaredge_software/lc_imx8plus_testing
device:  iot-gate-imx8plus
os:      v2.113.31+rev2
commit:  e784a013a6bfe0168edc46ff455a7584
pos args =
Getting device operating system for iot-gate-imx8plus
balenaOS image version 2.113.31+rev1 downloaded successfully
[debug] new argv=[/home/ben/balena/balena-cli/balena,/snapshot/balena-cli/bin/balena,preload,balena-iot-gate-imx8plus-v2.113.31+rev2.img,--fleet,solaredge_software/lc_imx8plus_testing,--commit,e784a013a6bfe0168edc46ff455a7584] length=8
[debug] Deprecation check: 2.07515 days since last npm registry query for next major version release date.
[debug] Will not query the registry again until at least 7 days have passed.
[debug] Event tracking error: Timeout awaiting 'response' for 0ms
Building Docker preloader image. [===                     ] 12%
Step 1/7 : FROM alpine:3.12
Building Docker preloader image. [======                  ] 25%
Step 2/7 : WORKDIR /usr/src/app
 ---> Using cache
Building Docker preloader image. [=========               ] 37%
Step 3/7 : RUN apk add --no-cache curl py3-pip parted btrfs-progs util-linux sfdisk file coreutils sgdisk e2fsprogs-extra docker
 ---> Using cache
Building Docker preloader image. [============            ] 50%
Step 4/7 : COPY requirements.txt ./
 ---> Using cache
Building Docker preloader image. [===============         ] 62%
Step 5/7 : RUN pip3 install --no-cache-dir -r requirements.txt
 ---> Using cache
Building Docker preloader image. [==================      ] 75%
Step 6/7 : COPY src/ ./
 ---> Using cache
Building Docker preloader image. [=====================   ] 87%
Step 7/7 : CMD ["python3", "/usr/src/app/preload.py"]
 ---> Using cache
 ---> e043c6145fa1
Successfully built e043c6145fa1
Building Docker preloader image. [========================] 100%
| Checking that the image is a writable file
| Finding a free tcp port
| Creating preloader container
| Starting preloader containertime="2023-10-19T14:36:24.192120579+03:00" level=info msg="loading plugin \"io.containerd.event.v1.publisher\"..." runtime=io.containerd.runc.v2 type=io.containerd.event.v1
time="2023-10-19T14:36:24.192201386+03:00" level=info msg="loading plugin \"io.containerd.internal.v1.shutdown\"..." runtime=io.containerd.runc.v2 type=io.containerd.internal.v1
time="2023-10-19T14:36:24.192210680+03:00" level=info msg="loading plugin \"io.containerd.ttrpc.v1.task\"..." runtime=io.containerd.runc.v2 type=io.containerd.ttrpc.v1
time="2023-10-19T14:36:24.192607828+03:00" level=info msg="starting signal loop" namespace=moby path=/run/docker/containerd/daemon/io.containerd.runtime.v2.task/moby/850484c7ec4284644f4752c3c2062bc054ee14e446a384b14577fe07a08ebdd4 pid=8781 runtime=io.containerd.runc.v2
- Starting preloader container
/ Reading image information
/ Reading image information
| Cleaning up temporary filesINFO[2023-10-19T14:36:25.400808568+03:00] ignoring event                                container=850484c7ec4284644f4752c3c2062bc054ee14e446a384b14577fe07a08ebdd4 module=libcontainerd namespace=moby topic=/tasks/delete type="*events.TaskDelete"
INFO[2023-10-19T14:36:25.401808669+03:00] shim disconnected                             id=850484c7ec4284644f4752c3c2062bc054ee14e446a384b14577fe07a08ebdd4
WARN[2023-10-19T14:36:25.402079363+03:00] cleaning up after shim disconnected           id=850484c7ec4284644f4752c3c2062bc054ee14e446a384b14577fe07a08ebdd4 namespace=moby
INFO[2023-10-19T14:36:25.402213214+03:00] cleaning up dead shim
/ Cleaning up temporary filesWARN[2023-10-19T14:36:25.413723286+03:00] cleanup warnings time="2023-10-19T14:36:25+03:00" level=info msg="starting signal loop" namespace=moby pid=8900 runtime=io.containerd.runc.v2
time="2023-10-19T14:36:25+03:00" level=warning msg="failed to remove runc container" error="runc did not terminate successfully: exit status 255: " runtime=io.containerd.runc.v2
- Cleaning up temporary files
An error has occurred executing internal preload command 'get_image_info':
{"command":"get_image_info","parameters":{}}

Status code: 1
Error: Traceback (most recent call last):
  File "/usr/src/app/preload.py", line 978, in <module>
    result = method(**data.get("parameters", {}))
  File "/usr/src/app/preload.py", line 929, in get_image_info
    get_images_and_supervisor_version()
  File "/usr/src/app/preload.py", line 790, in get_images_and_supervisor_version
    return _get_images_and_supervisor_version()
  File "/usr/src/app/preload.py", line 749, in _get_images_and_supervisor_version
    with part.mount_context_manager() as mountpoint:
AttributeError: 'NoneType' object has no attribute 'mount_context_manager'



Error: An error has occurred executing internal preload command 'get_image_info':
{"command":"get_image_info","parameters":{}}

Status code: 1
Error: Traceback (most recent call last):
  File "/usr/src/app/preload.py", line 978, in <module>
    result = method(**data.get("parameters", {}))
  File "/usr/src/app/preload.py", line 929, in get_image_info
    get_images_and_supervisor_version()
  File "/usr/src/app/preload.py", line 790, in get_images_and_supervisor_version
    return _get_images_and_supervisor_version()
  File "/usr/src/app/preload.py", line 749, in _get_images_and_supervisor_version
    with part.mount_context_manager() as mountpoint:
AttributeError: 'NoneType' object has no attribute 'mount_context_manager'


    at PassThrough.<anonymous> (/snapshot/balena-cli/node_modules/balena-preload/build/preload.js:262:28)
    at Object.onceWrapper (node:events:652:26)
    at PassThrough.emit (node:events:537:28)
    at PassThrough.emit (node:domain:482:12)
    at addChunk (node:internal/streams/readable:324:12)
    at readableAddChunk (node:internal/streams/readable:297:9)
    at Readable.push (node:internal/streams/readable:234:10)
    at node:internal/streams/transform:161:12
    at PassThrough._transform (node:internal/streams/passthrough:46:3)
    at Transform._write (node:internal/streams/transform:154:8)
    at writeOrBuffer (node:internal/streams/writable:392:12)
    at _write (node:internal/streams/writable:333:10)
    at Writable.write (node:internal/streams/writable:337:10)
    at processData (/snapshot/balena-cli/node_modules/docker-modem/lib/modem.js:371:18)
    at Socket.processData (/snapshot/balena-cli/node_modules/docker-modem/lib/modem.js:365:9)
    at Socket.emit (node:events:537:28)
    at Socket.emit (node:domain:482:12)
    at addChunk (node:internal/streams/readable:324:12)
    at readableAddChunk (node:internal/streams/readable:297:9)
    at Readable.push (node:internal/streams/readable:234:10)
    at Pipe.onStreamRead (node:internal/stream_base_commons:190:23)
From previous event:
    at Preloader._runCommand (/snapshot/balena-cli/node_modules/balena-preload/build/preload.js:229:16)
    at /snapshot/balena-cli/node_modules/balena-preload/build/preload.js:336:38
    at Preloader._runWithSpinner (/snapshot/balena-cli/node_modules/balena-preload/build/preload.js:204:26)
    at Preloader._getImageInfo (/snapshot/balena-cli/node_modules/balena-preload/build/preload.js:335:20)
    at /snapshot/balena-cli/node_modules/balena-preload/build/preload.js:631:22
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)

For further help or support, visit:
https://www.balena.io/docs/reference/balena-cli/#support-faq-and-troubleshooting

Hi @ben,
I’ve reached out to our OS team to see what our plans are for getting this device in AutoKit. We’re focusing on that effort for now so that we can avoid manually updating our 100+ device-types going forward, so hopefully we can at least let you know when that is planned to happen.

Hi Ben, the latest OS release v4.0.28 is now available for the IOT-GATE-iMX8PLUS 4GB in balena-cloud. Preloading this OS image using balena CLI v17.1.5 worked fine on our side, but let us know if preloading still fails on your side.

Best regards,
Alexandru

1 Like

Yes, I have downloaded v4.0.28 and preloading works correctly.
Thank you for resolving the issue.

Thanks for the confirmation. Let us know if we can help you more!