# Octave device configuring using dhub CLI: inconsistency with Octave's web app

**URL:** <https://forum.sierrawireless.com/t/octave-device-configuring-using-dhub-cli-inconsistency-with-octaves-web-app/28094>\
**Category:** Octave\
**Created:** [October 11, 2022, 10:04am UTC](https://forum.sierrawireless.com/t/octave-device-configuring-using-dhub-cli-inconsistency-with-octaves-web-app/28094 "2022-10-11T10:04:32Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![alex.clickcatchoff](https://sea1.discourse-cdn.com/flex025/user_avatar/forum.sierrawireless.com/alex.clickcatchoff/32/7835_2.png) [@alex.clickcatchoff](https://forum.sierrawireless.com/u/alex.clickcatchoff)\
**Post date:** [October 11, 2022, 10:04am UTC](https://forum.sierrawireless.com/t/octave-device-configuring-using-dhub-cli-inconsistency-with-octaves-web-app/28094/1 "2022-10-11T10:04:32Z")

</div>

Hello All,

We have a fleet of Octave-based devices, where each device being deployed requires detailed custom configuration (e.g. changing the Modbus TCP addresses, the number of Modbus servers and other properties). The devices are pre-configured with some ‘standard’ blueprint thus, we only want to modify the above-mentioned properties per device. Therefore, changing via SSH connection to each device seems to be a good solution.  
Thanks to [this topic](https://forum.sierrawireless.com/t/how-to-send-data-via-usb-interface-in-fx30/27689/3) I discovered **dhub** CLI tool proposed for similar purpose. And it indeed works for submitting a configuration containing different IP address than the preconfigured one:  
`dhub push /app/modbus/config --json "some JSONifyed config"`

Reading it back using `dhub list /app/modbus/config` returns exactly the config I programmed.  
Nevertheless, Octave’s web app doesn’t reflect these changes (e.g. shows old Modbus TCP IP address) even after rebooting the device. Why is that? Can that be ignored?

I tried same sort of excercise with a virtual resource and a dummy variable (pre-initialized using the Octave web app) and I do confirm while dhub accepts new values Octave web app shows the old one. Interestingly, if I change the variable in the web app, dhub tool returns the new value.

Another little issue I wanted to address is when trying to use dhub push from json file it returns an error. For instance this call:

```auto
dhub push /app/modbus/config --file --json test_config.json

```

where` test_config.json` contents is:

```auto
{"buses":[{"ethname":"eth0","ipport":502,"name":"CCR5","ipaddr":"192.168.10.15","config":[{"slaves":[{"address":1,"name":"CCR5"}],"period":30,"groups":[{"number":14,"address":64,"name":"status","type":"HLD"}]}]},{"ethname":"eth0","ipport":502,"name":"CCR2","ipaddr":"192.168.10.12","config":[{"slaves":[{"address":1,"name":"CCR2"}],"period":30,"groups":[{"number":14,"address":64,"name":"status","type":"HLD"}]}]}]}

```

returns

> Error failed to get file size test\_config.json (LE\_BAD\_PARAMETER)

What could possibly be wrong here?

My system is:

- Device: FX30
- Firmware: 3.5.0

Thanks in advance,  
Alex

---

<div class="post-metadata">

**Author:** ![djudkins](https://avatars.discourse-cdn.com/v4/letter/d/7ea924/32.png) [@djudkins](https://forum.sierrawireless.com/u/djudkins)\
**Post date:** [October 11, 2022, 1:19pm UTC](https://forum.sierrawireless.com/t/octave-device-configuring-using-dhub-cli-inconsistency-with-octaves-web-app/28094/2 "2022-10-11T13:19:52Z")

</div>

Hi Alex,

I will spend some time today testing your issues. You might try to use the full file path for **test\_config.json** Example /root/home/test\_config.json.

---

<div class="post-metadata">

**Author:** ![njoyeux](https://sea1.discourse-cdn.com/flex025/user_avatar/forum.sierrawireless.com/njoyeux/32/6714_2.png) [@njoyeux](https://forum.sierrawireless.com/u/njoyeux)\
**Post date:** [October 11, 2022, 1:43pm UTC](https://forum.sierrawireless.com/t/octave-device-configuring-using-dhub-cli-inconsistency-with-octaves-web-app/28094/3 "2022-10-11T13:43:03Z")

</div>

Hi Alex,

Don’t use dhub tool to change your Octave configuration. All what you will do will not be persistent: at next device power on, the Cloud configuration (blueprint) will overwrite your local changes.

To customize the device configuration I recommend to use the Device end point see [Octave REST API Documentation](https://openapi.octave.dev/#operation/updateDevice)

And as David indicates, `dhub` with `--file` option takes an absolute path, not a relative one.

HTH,  
Nicolas

---

<div class="post-metadata">

**Author:** ![alex.clickcatchoff](https://sea1.discourse-cdn.com/flex025/user_avatar/forum.sierrawireless.com/alex.clickcatchoff/32/7835_2.png) [@alex.clickcatchoff](https://forum.sierrawireless.com/u/alex.clickcatchoff)\
**Post date:** [October 11, 2022, 7:41pm UTC](https://forum.sierrawireless.com/t/octave-device-configuring-using-dhub-cli-inconsistency-with-octaves-web-app/28094/4 "2022-10-11T19:41:02Z")

</div>

@djudkins , @njoyeux thanks for swift reply!

Good to know changes made with dhub are not persistent. I tried REST API functionality and it seems I can indeed realize everything I need with it. Thanks!

By the way I tried the full path when asking dhub to load value from JSON file, it still yields an error (different though):

> root@fx30:~# dhub push /app/modbus/config --file --json /home/root/test\_config.json  
> Error failed to get file size /home/root/test\_config.json (LE\_FAULT)

It’s no longer important for me but maybe will be useful for someone else.  
Again thanks for your help!
