Cannot edit dashboards

Hi everyone, first post here! A big thanks to everyone who’ve contributed to making a great ecosystem.

I’ve had emon running for a 1+ years with little maintenance from me after the initial setup, though I’ve tried to keep it up to date. After one of the updates (few months back) some of the widgets stopped working, however the graphing still works fine. I’ve now gone in to fix some of the dashboards and found that I cannot edit. I see the floating toolbox, but it’s offering nothing for editing. It appears to be missing a lot of buttons - or am I missing something obvious?

Looking at the safari log, I see a lot of errors in the javascript … seems there’s git meta-data in the javascript files. Is this normal? Appreciate any input.

thanks,

Hi Steve, No that’s not “normal” it looks like there has been a merge conflict at some point. What are you running? an emonPi, a hosted server or something else? Do you edit the emoncms code at all? When did you last update emoncms, specifically the dash module? Do you have an update.log (if emonpi)? What branch are you running?

I imagine this merge conflict will be blocking any updates so you will need to manually edit the file back to original or do a git stash or rebase.

In emoncms/dashboard/widget/battery/battery_render.js lines 78,79,80,81 and 84 should not be there and can be deleted to see if it fixes your issue and then depending on you set up and if you have other edits to keep the repo can be fixed so it can update again.

Hi Paul,
It’s an emonPi. I cannot remember doing any manually editing, just used the update admin feature which I assume updates everything. I ran that again this morning to see if it helped … which it didn’t.

here’s my log file.


Filesystem is unlocked - Write access
type ' rpi-ro ' to lock
I2C LCD NOT DETECTED on either 0x['27', '3f'] ...exiting LCD script
Starting emonPi Update >
via service-runner-update.sh
EUID: 1000
Argument: rfm69pi
Sun 29 Oct 09:27:08 UTC 2017
#############################################################

emonSD version: emonSD-03May16

emonSD base image check passed...continue update

#############################################################
Filesystem is unlocked - Write access
type ' rpi-ro ' to lock
git pull /home/pi/emonpi
* master
  wifiap
On branch master
Your branch is up-to-date with 'origin/master'.
Untracked files:
  (use "git add <file>..." to include in what will be committed)

	1
	hardware/emonpi/emonpi2c/

nothing added to commit but untracked files present (use "git add" to track)
Already up-to-date.
git pull /home/pi/RFM2Pi
* master
On branch master
Your branch is up-to-date with 'origin/master'.
nothing to commit, working directory clean
Already up-to-date.
git pull /home/pi/emonhub
  K0den-wibeee_interface
* emon-pi
  hmm01i-syslogging
On branch emon-pi
Your branch is up-to-date with 'origin/emon-pi'.
nothing to commit, working directory clean
Already up-to-date.
git pull /home/pi/oem_openHab
* master
On branch master
Your branch is up-to-date with 'origin/master'.
nothing to commit, working directory clean
git pull /home/pi/usefulscripts
* master
On branch master
Your branch is up-to-date with 'origin/master'.
nothing to commit, working directory clean
git pull /home/pi/huawei-hilink-status
* master
On branch master
Your branch is up-to-date with 'origin/master'.
nothing to commit, working directory clean

Running RFM69Pi firmware update:
RFM69Pi Update Started
date
Getting latest RFM69Pi release info from github
Latest RFM69Pi firmware: V1.4.0
downloading latest RFM69Pi firmware from github releases:
https://github.com/openenergymonitor/RFM2Pi/releases/download/1.4.0/firmware.hex
Saving to /home/pi/data/firmware/rfm69pi-1.4.0.hex

=================================
RFM69Pi update started
=================================

Flashing RFM69Pi with V 1.4.0

avrdude-original: Using autoreset DTR on GPIO Pin 7
Flashing RFM69Pi with V 1.4.0  done


Start emonhub update script:

=================================
EmonPi update started
=================================
Running emonhub automatic node addition script
EUID: 1000
EUID: 1000
[[5]]
Node 5 already present
[[6]]
Node 6 already present
[[7]]
Node 7 already present
[[8]]
Node 8 already present
[[9]]
Node 9 already present
[[10]]
Node 10 already present
[[11]]
Node 11 already present
[[12]]
Node 12 already present
[[13]]
Node 13 already present
[[14]]
Node 14 already present
[[19]]
Node 19 already present
[[20]]
Node 20 already present
[[21]]
Node 21 already present
[[22]]
Node 22 already present
[[23]]
Node 23 already present
[[24]]
Node 24 already present
[[25]]
Node 25 already present
[[26]]
Node 26 already present

Start emoncms update:

=================================
Emoncms update started
Update script V1.1.0

Sun 29 Oct 09:27:25 UTC 2017

#############################################################

emonSD version: emonSD-03May16

emonSD base image check pass...continue update

#############################################################
EUID: 1000
Checking cron tab for service runner entry...
service runner crontab entry already installed

current settings.php md5: c000f614aacbb38d288f0e3dbe9cfb88
Default settings.php md5: c000f614aacbb38d288f0e3dbe9cfb88

git pull /var/www/emoncms
  dev-mosquitto-php
  master
* stable
  symlinked_modules
On branch stable
Your branch is up-to-date with 'origin/stable'.
nothing to commit, working directory clean
Already up-to-date.

NEW default settings.php md5: c000f614aacbb38d288f0e3dbe9cfb88
settings.php had NOT been user modifed
No update required to settings.php


git pull /var/www/emoncms/Modules/app
  9.0
* stable
On branch stable
Your branch is up-to-date with 'origin/stable'.
nothing to commit, working directory clean
Already up-to-date.
Your branch is up-to-date with 'origin/stable'.

git pull /var/www/emoncms/Modules/config
  9.0
* stable
On branch stable
Your branch is up-to-date with 'origin/stable'.
nothing to commit, working directory clean
Already up-to-date.
Your branch is up-to-date with 'origin/stable'.

git pull /var/www/emoncms/Modules/wifi
  9.0
* stable
On branch stable
Your branch is up-to-date with 'origin/stable'.
nothing to commit, working directory clean
Already up-to-date.
Your branch is up-to-date with 'origin/stable'.
git pull /var/www/emoncms/Modules/dashboard
On branch stable
Your branch and 'origin/stable' have diverged,
and have 1 and 37 different commits each, respectively.
  (use "git pull" to merge the remote branch into yours)
You have unmerged paths.
  (fix conflicts and run "git commit")

Changes to be committed:

	modified:   Views/dashboard_edit_view.php
	modified:   Views/dashboard_view.php
	modified:   Views/js/designer.js
	modified:   Views/js/widgetlist.js
	modified:   locale/fr_FR/LC_MESSAGES/messages.mo
	modified:   locale/fr_FR/LC_MESSAGES/messages.po
	modified:   widget/cylinder/cylinder_render.js
	modified:   widget/dewpoint/dewpoint_render.js
	modified:   widget/feedvalue/feedvalue_render.js
	modified:   widget/frostpoint/frostpoint_render.js
	modified:   widget/heatindex/heatindex_render.js
	modified:   widget/humidex/humidex_render.js
	modified:   widget/isactivefeed/isactivefeed_render.js
	modified:   widget/isactivefeed/isactivefeed_widget.php
	modified:   widget/jgauge/jgauge_render.js
	modified:   widget/jgauge2/jgauge2_render.js
	modified:   widget/led/led_render.js
	new file:   widget/thermometer/thermometer_render.js
	new file:   widget/thresholds/thresholds_render.js
	modified:   widget/windrose/windrose_render.js

Unmerged paths:
  (use "git add <file>..." to mark resolution)

	both modified:   dashboard_langjs.php
	both added:      module.json
	both modified:   widget/bar/bar_render.js
	both modified:   widget/battery/battery_render.js
	both modified:   widget/dial/dial_render.js
	both modified:   widget/signal/signal_render.js
	both modified:   widget/sun/sun_render.js

M	Views/dashboard_edit_view.php
M	Views/dashboard_view.php
M	Views/js/designer.js
M	Views/js/widgetlist.js
U	dashboard_langjs.php
M	locale/fr_FR/LC_MESSAGES/messages.mo
M	locale/fr_FR/LC_MESSAGES/messages.po
U	module.json
U	widget/bar/bar_render.js
U	widget/battery/battery_render.js
M	widget/cylinder/cylinder_render.js
M	widget/dewpoint/dewpoint_render.js
U	widget/dial/dial_render.js
M	widget/feedvalue/feedvalue_render.js
M	widget/frostpoint/frostpoint_render.js
M	widget/heatindex/heatindex_render.js
M	widget/humidex/humidex_render.js
M	widget/isactivefeed/isactivefeed_render.js
M	widget/isactivefeed/isactivefeed_widget.php
M	widget/jgauge/jgauge_render.js
M	widget/jgauge2/jgauge2_render.js
M	widget/led/led_render.js
U	widget/signal/signal_render.js
U	widget/sun/sun_render.js
A	widget/thermometer/thermometer_render.js
A	widget/thresholds/thresholds_render.js
M	widget/windrose/windrose_render.js
dashboard_langjs.php: needs merge
module.json: needs merge
widget/bar/bar_render.js: needs merge
widget/battery/battery_render.js: needs merge
widget/dial/dial_render.js: needs merge
widget/signal/signal_render.js: needs merge
widget/sun/sun_render.js: needs merge

git pull /var/www/emoncms/Modules/graph
  master
* stable
On branch stable
Your branch is up-to-date with 'origin/stable'.
nothing to commit, working directory clean
Already up-to-date.
Your branch is up-to-date with 'origin/stable'.

git pull /home/pi/postprocess
Your branch is up-to-date with 'remotes/origin/emonpi'.
Already up-to-date.
git pull /home/pi/backup
  master
* stable
On branch stable
Your branch is up-to-date with 'origin/stable'.
nothing to commit, working directory clean
Already up-to-date.
Your branch is up-to-date with 'origin/stable'.
Cannot find emoncms-setup module, please update ~/emonpi repo

update mqtt_input systemd unit file

Update Emoncms database
[]

Restarting Services...
Restarting OpenEnergyMonitor emonHub: emonhub has been restarted ok.
Log is turned off
Restarting feedwriter

Restarting openhab (via systemctl): openhab.service.


set log rotate config owner to root
Restarting Services...


Starting emonPi LCD service..

Filesystem is locked - Read Only access
type ' rpi-rw ' to unlock
Sun 29 Oct 09:28:13 UTC 2017


...................
emonPi update done

this is the bit of that log referring the update of the dashboard module

git pull /var/www/emoncms/Modules/dashboard
On branch stable
Your branch and 'origin/stable' have diverged,
and have 1 and 37 different commits each, respectively.
  (use "git pull" to merge the remote branch into yours)
You have unmerged paths.
  (fix conflicts and run "git commit")

Changes to be committed:

	modified:   Views/dashboard_edit_view.php
	modified:   Views/dashboard_view.php
	modified:   Views/js/designer.js
	modified:   Views/js/widgetlist.js
	modified:   locale/fr_FR/LC_MESSAGES/messages.mo
	modified:   locale/fr_FR/LC_MESSAGES/messages.po
	modified:   widget/cylinder/cylinder_render.js
	modified:   widget/dewpoint/dewpoint_render.js
	modified:   widget/feedvalue/feedvalue_render.js
	modified:   widget/frostpoint/frostpoint_render.js
	modified:   widget/heatindex/heatindex_render.js
	modified:   widget/humidex/humidex_render.js
	modified:   widget/isactivefeed/isactivefeed_render.js
	modified:   widget/isactivefeed/isactivefeed_widget.php
	modified:   widget/jgauge/jgauge_render.js
	modified:   widget/jgauge2/jgauge2_render.js
	modified:   widget/led/led_render.js
	new file:   widget/thermometer/thermometer_render.js
	new file:   widget/thresholds/thresholds_render.js
	modified:   widget/windrose/windrose_render.js

Unmerged paths:
  (use "git add &lt;file&gt;..." to mark resolution)

	both modified:   dashboard_langjs.php
	both added:      module.json
	both modified:   widget/bar/bar_render.js
	both modified:   widget/battery/battery_render.js
	both modified:   widget/dial/dial_render.js
	both modified:   widget/signal/signal_render.js
	both modified:   widget/sun/sun_render.js

M	Views/dashboard_edit_view.php
M	Views/dashboard_view.php
M	Views/js/designer.js
M	Views/js/widgetlist.js
U	dashboard_langjs.php
M	locale/fr_FR/LC_MESSAGES/messages.mo
M	locale/fr_FR/LC_MESSAGES/messages.po
U	module.json
U	widget/bar/bar_render.js
U	widget/battery/battery_render.js
M	widget/cylinder/cylinder_render.js
M	widget/dewpoint/dewpoint_render.js
U	widget/dial/dial_render.js
M	widget/feedvalue/feedvalue_render.js
M	widget/frostpoint/frostpoint_render.js
M	widget/heatindex/heatindex_render.js
M	widget/humidex/humidex_render.js
M	widget/isactivefeed/isactivefeed_render.js
M	widget/isactivefeed/isactivefeed_widget.php
M	widget/jgauge/jgauge_render.js
M	widget/jgauge2/jgauge2_render.js
M	widget/led/led_render.js
U	widget/signal/signal_render.js
U	widget/sun/sun_render.js
A	widget/thermometer/thermometer_render.js
A	widget/thresholds/thresholds_render.js
M	widget/windrose/windrose_render.js
dashboard_langjs.php: needs merge
module.json: needs merge
widget/bar/bar_render.js: needs merge
widget/battery/battery_render.js: needs merge
widget/dial/dial_render.js: needs merge
widget/signal/signal_render.js: needs merge
widget/sun/sun_render.js: needs merge

There are significant differences detected, it seems you have somehow got out of sync with the published code. If you are sure there is no deliberate changes you need to keep, it can be simply reset.

Which method you use depend on what you want the outcome to be, I usually force a checkout to another branch and then checkout back to the same branch to drop all changes without leaving any trace (eg stashing, committing or rebaseing). From the emoncms folder

rpi-rw
git checkout -f master
git checkout stable
git pull
rpi-ro

that should “reset” things and pull in the latest changes, the update will also be successful on future automated updates. This is irreversible so do not do it if you might want to keep any changes or check the changes through manually beforehand.

1 Like

Thanks again Paul. This is what I’m seeing … git seems to think I’m up to date with the stable branch … hence nothing to pull. Afraid my knowledge of git is somewhat basic!

[email protected](rw):/var/www/emoncms$ git checkout -f master
Switched to branch 'master'
Your branch is behind 'origin/master' by 538 commits, and can be fast-forwarded.
  (use "git pull" to update your local branch)
[email protected](rw):/var/www/emoncms$ git checkout stable
Switched to branch 'stable'
Your branch is up-to-date with 'origin/stable'.
[email protected](rw):/var/www/emoncms$ git pull
Already up-to-date.

No that’s my fault, the dashboard module is a separate reo to the main emoncms repo, I should have said “from the dashboard folder” the daschboard folder is at emoncms/Modules/dashboard

Got there! Needed a git reset --hard origin/stable to get around the merge issue. I’m now seeing the toolbar! Thanks.

1 Like