# Creating update artifact for Raspberry pi

**URL:** <https://hub.mender.io/t/creating-update-artifact-for-raspberry-pi/1099>\
**Category:** General Discussions\
**Created:** [October 3, 2019, 3:37pm UTC](https://hub.mender.io/t/creating-update-artifact-for-raspberry-pi/1099 "2019-10-03T15:37:51Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![minusplusminus](https://yyz2.discourse-cdn.com/flex036/user_avatar/hub.mender.io/minusplusminus/32/379_2.png) [@minusplusminus](https://hub.mender.io/u/minusplusminus)\
**Post date:** [October 3, 2019, 3:37pm UTC](https://hub.mender.io/t/creating-update-artifact-for-raspberry-pi/1099/1 "2019-10-03T15:37:51Z")

</div>

Hi,

I’m currently testing the workflow for my first iOT devices that is using a 4G connection. I have a raspbian image where I installed al the needed packages.

I did the following:

- installed self hosted mender on Amazon AWS EC2 server with 2gb memory and 4gb swap 30 gb storage with success

- `dd` copied the image

- used `docker-mender-convert` with following settings

I added `storage-total-size` with max of sdcard.

I got an working `sdimage` I wanted to test by copying the `.mender` artifact to the server. The file is 1.31 gigabyte.

I got the device registered in the Mender dashboard. So that’s working.

I tried again with a .mender file of less than 100 mb with the same issue. Checked if there is enough space on the server.

After that I want to make an update of the mender sdimage. I changed some code on the mender sdimage and used `dd` to make a copy of the sd card again. So it’s not the golden image, but the mender sdimage created by `mender-convert`.

I have a few questions:

- Should I use the mender sdimg or the original image for update?
- How does Mender update the rpi? The file is 1.31 gb. When I create a new one with mender convert, I would expect that the file size would be the same. I think 1.31gb is way to large to send over 4G connection to the devices. The difference between prev image and updated one is max a few megabytes.

---

<div class="post-metadata">

**Author:** ![mirzak](https://yyz2.discourse-cdn.com/flex036/user_avatar/hub.mender.io/mirzak/32/2056_2.png) [@mirzak](https://hub.mender.io/u/mirzak)\
**Post date:** [October 7, 2019, 8:08am UTC](https://hub.mender.io/t/creating-update-artifact-for-raspberry-pi/1099/2 "2019-10-07T08:08:18Z")

</div>

Hello @minusplusminus and welcome to the Mender community.

> - Should I use the mender sdimg or the original image for update?

The idea of the workflow is to do any modifications on the original image, then run it trough `mender-convert` to get an `.mender` file with the changes you made and use that to deploy to rest of your devices.

> How does Mender update the rpi?

The default update method in Mender is to deploy they full image, regardless of what has changed. There are many benefits of doing this, but as you already pointed there is one drawback and it might not always be suitable to do this over a mobile connection.

You can find some additional information here,

[https://docs.mender.io/2.1/architecture/overview](https://docs.mender.io/2.1/architecture/overview)

There are a couple ways to workaround this:

- You can utilize [Update Modules](https://docs.mender.io/2.1/devices/update-modules) to deploy smaller change sets
- Utilize a binary delta feature (not yet released), this allows you to only send the binary difference between two images
