openHAB 3.0 Milestone 5 discussion

This topic can be used to discuss problems/experiences/questions on the openHAB 3.0 Milestone 5 - see details at https://github.com/openhab/openhab-distro/releases/tag/3.0.0.M5.

2 Likes

Is the code base for M5 equal to nightly #2047?

Is this really related to M5?
If not, please open a new thread.

I’m not entirely sure, this has only shown up recently so it may or may not be related to M5. I’ve removed the original post to avoid confusion and filed a bug https://github.com/openhab/openhab-core/issues/1895

With Build #2047 i got the following error

2020-12-06 21:17:32.299 [ERROR] [rg.apache.cxf.jaxrs.utils.JAXRSUtils] - Problem with writing the data, class org.openhab.core.io.rest.Stream2JSONInputStream, ContentType: application/json
2020-12-06 21:17:38.477 [ERROR] [rg.apache.cxf.jaxrs.utils.JAXRSUtils] - Problem with writing the data, class org.openhab.core.io.rest.Stream2JSONInputStream, ContentType: application/json
2020-12-06 21:17:40.648 [ERROR] [rg.apache.cxf.jaxrs.utils.JAXRSUtils] - Problem with writing the data, class org.openhab.core.io.rest.Stream2JSONInputStream, ContentType: application/json

Result is that no items, no model and no autogenerated pages are displayed. The load circle does not load

#2047 is nearly a day older than M5 …

Thats why i asked if it is the same code base :slight_smile: Until the release i will stick with the nightly builds and not switch between milestine and nightly.

I could wait until #2048

There was at least on PR merged after #2047, reverting the threadpool for rules. Did not check deeper…

After upgrading from M3 to M5 my weekday conditions doesn’t work any more. I have rule conditions in the rule engine like “but only if it is a weekday” and those rules aren’t executed at all and I get the following error in the UI:

HANDLER_INITIALIZING_ERROR
Missing handler 'ephemeris.WeekdayCondition' for module '1' 

edit:
After some more digging I found this:

openhab> bundle:list|grep Ephemeris
143 x Waiting x  80 x 3.0.0.M5                x openHAB Core :: Bundles :: Ephemeris

I guess things would work better if the bundle was actually active, how can I check why it isn’t? I’m sure this worked in M3…

edit 2: Seems to work now after simply restarting the Ephemeris bundle. Don’t really know what was wrong…

I try to do a clean install from openhabian (also clean install) to openhab 3 m5. With m4 i had no problem and with m5 i doesn’t go past installing openhab 3. Can i see where it keeps hanging? I see it is installed because i can actived the openhab.service and i can configurate it, until i want to install the bindings then it keeps installing the binding…
RPI4 4GB openhabian on ssd is my setup

me seeing " 1854 Added Actions for Play and Say which sets the volume" => WOW, GREAT, WE CAN SET VOLUME !

me opening the P.R., seeing no documentation, so I and many others won’t be able to use this feature : :frowning: :frowning:

What is the status of porting Python/Jython support to openHAB3? Is this in the roadmap?

I know HABapp works for Python 3.

Huh? I’m not sure where you got your information, but it is no where near accurate.

Martin, I’ve been pushing all of the updates that I have for the helper libraries. After last night, I think all I have left is the documentation. I will then get them packaged for 2.5.x and available through Eclipse IoT Marketplace. Once that is in place, I will provide add-ons for OH3.

7 Likes

I tried to start a clean installation of M5 with a docker container on a synology.
Unfortunately the startup log of the container shows an error that is doesn’t tell my anything. There is no log file in userdata/ logs. Only the directories under conf have been created.

here is the container output:

	The home directory `/openhab' already exists.  Not copying from `/etc/skel'.
	+ groupadd -g 14 uucp2
	+ groupadd -g 16 dialout2
	+ groupadd -g 18 dialout3
	+ groupadd -g 32 uucp3
	+ groupadd -g 997 gpio
	+ adduser openhab dialout
	Adding user `openhab' to group `dialout' ...
	Adding user openhab to group dialout
	Done.
	+ adduser openhab uucp
	Adding user `openhab' to group `uucp' ...
	Adding user openhab to group uucp
	Done.
	+ adduser openhab uucp2
	Adding user `openhab' to group `uucp2' ...
	Adding user openhab to group uucp2
	Done.
	+ adduser openhab dialout2
	Adding user `openhab' to group `dialout2' ...
	Adding user openhab to group dialout2
	Done.
	+ adduser openhab dialout3
	Adding user `openhab' to group `dialout3' ...
	Adding user openhab to group dialout3
	Done.
	+ adduser openhab uucp3
	Adding user `openhab' to group `uucp3' ...
	Adding user openhab to group uucp3
	Done.
	+ adduser openhab gpio
	Adding user `openhab' to group `gpio' ...
	Adding user openhab to group gpio
	Done.
	+ initialize_volume /openhab/conf /openhab/dist/conf
	+ volume=/openhab/conf
	+ source=/openhab/dist/conf
	++ ls -A /openhab/conf
	+ '[' -z '' ']'
	+ echo 'Initializing empty volume /openhab/conf ...'
	+ cp -av /openhab/dist/conf/. /openhab/conf/
	Initializing empty volume /openhab/conf ...
	'/openhab/dist/conf/./html' -> '/openhab/conf/./html'
	'/openhab/dist/conf/./html/index.html' -> '/openhab/conf/./html/index.html'
	+ initialize_volume /openhab/userdata /openhab/dist/userdata
	'/openhab/dist/conf/./html/readme.txt' -> '/openhab/conf/./html/readme.txt'
	'/openhab/dist/conf/./icons' -> '/openhab/conf/./icons'
	'/openhab/dist/conf/./icons/classic' -> '/openhab/conf/./icons/classic'
	'/openhab/dist/conf/./icons/classic/readme.txt' -> '/openhab/conf/./icons
	classic/readme.txt'
	'/openhab/dist/conf/./items' -> '/openhab/conf/./items'
	'/openhab/dist/conf/./items/readme.txt' -> '/openhab/conf/./items/readme.txt'
	'/openhab/dist/conf/./persistence' -> '/openhab/conf/./persistence'
	'/openhab/dist/conf/./persistence/readme.txt' -> '/openhab/conf/./persistence/readme.txt'
	'/openhab/dist/conf/./rules' -> '/openhab/conf/./rules'
	'/openhab/dist/conf/./rules/readme.txt' -> '/openhab/conf/./rules/readme.txt'
	'/openhab/dist/conf/./scripts' -> '/openhab/conf/./scripts'
	'/openhab/dist/conf/./scripts/readme.txt' -> '/openhab/conf/./scripts/readme.txt'
	'/openhab/dist/conf/./services' -> '/openhab/conf/./services'
	'/openhab/dist/conf/./services/addons.cfg' -> '/openhab/conf/./services/addons.cfg'
	'/openhab/dist/conf/./services/readme.txt' -> '/openhab/conf/./services/readme.txt'
	'/openhab/dist/conf/./services/runtime.cfg' -> '/openhab/conf/./services/runtime.cfg'
	'/openhab/dist/conf/./sitemaps' -> '/openhab/conf/./sitemaps'
	'/openhab/dist/conf/./sitemaps/readme.txt' -> '/openhab/conf/./sitemaps/readme.txt'
	'/openhab/dist/conf/./sounds' -> '/openhab/conf/./sounds'
	'/openhab/dist/conf/./sounds/barking.mp3' -> '/openhab/conf/./sounds/barking.mp3'
	'/openhab/dist/conf/./sounds/doorbell.mp3' -> '/openhab/conf/./sounds/doorbell.mp3'
	+ volume=/openhab/userdata
	'/openhab/dist/conf/./things' -> '/openhab/conf/./things'
	'/openhab/dist/conf/./things/readme.txt' -> '/openhab/conf/./things/readme.txt'
	'/openhab/dist/conf/./transform' -> '/openhab/conf/./transform'
	'/openhab/dist/conf/./transform/de.map' -> '/openhab/conf/./transform/de.map'
	'/openhab/dist/conf/./transform/en.map' -> '/openhab/conf/./transform/en.map'
	'/openhab/dist/conf/./transform/readme.txt' -> '/openhab/conf/./transform/readme.txt'
	+ source=/openhab/dist/userdata
	++ ls -A /openhab/userdata
	+ '[' -z 'etc
	logs
	tmp' ']'
	++ cmp /openhab/userdata/etc/version.properties /openhab/dist/userdata/etc/version.properties
	cmp: /openhab/userdata/etc/version.properties: No such file or directory
	+ '[' '!' -z ']'
	+ chown -R openhab:openhab /openhab
	+ sync
	+ '[' -d /etc/cont-init.d ']'
	+ sync
	+ '[' false == false ']'
	++ IFS=' '
	++ echo gosu openhab tini -s ./start.sh
	+ '[' 'gosu openhab tini -s ./start.sh' == 'gosu openhab tini -s ./start.sh' ']'
	+ command=($@ server)
	+ exec gosu openhab tini -s ./start.sh server
	Launching the openHAB runtime...
	null
	Error occurred shutting down framework: java.lang.NumberFormatException: null
	java.lang.NumberFormatException: null
		at java.base/java.lang.Integer.parseInt(Integer.java:614)
		at java.base/java.lang.Integer.parseInt(Integer.java:770)
		at org.apache.karaf.main.ConfigProperties.<init>(ConfigProperties.java:235)
		at org.apache.karaf.main.Main.updateInstancePidAfterShutdown(Main.java:227)
		at org.apache.karaf.main.Main.main(Main.java:192)

any ideas?

What is your docker run command? Here is mine but I am mapping the http port to 8081 & https to port 8444 because I have OH2 on the same VM.

docker run --name openhab  \
-p 8081:8080  \
-p 8444:8443  \
-v /etc/localtime:/etc/localtime:ro \
-v /etc/timezone:/etc/timezone:ro \
-v /opt/openhab/addons:/openhab/addons \
-v /opt/openhab/conf:/openhab/conf \
-v /opt/openhab/userdata:/openhab/userdata \
-e "USER_ID=998" \
-e "GROUP_ID=997" \
-e "EXTRA_JAVA_OPTS=-Duser.timezone=America/New_York" \
--privileged \
-d \
--restart=always \
openhab/openhab:3.0.0.M5

I am running the M5 Docker container fine in a Debian VM.

++ cmp /openhab/userdata/etc/version.properties /openhab/dist/userdata/etc/version.properties
cmp: /openhab/userdata/etc/version.properties: No such file or directory

The etc directory is not in my container either but that does not stop it from running.

Thanks for the update and the great work on this. As Jython support is essential for me, I will have to be patient :slight_smile:

3 Likes

Great news!!

I’m pretty new at OH community as I’m moving from HA due to ZWave framework issues so still checking very basic stuff on this M5 release.

One issue I see is that if you set an item to belong to more than one group, at the Semantic Model view it is shown only in one of those groups (not able to get the pattern of which one).

Tried both methods: defining the item through text file and through GUI (Group Membership - Parent Group(s) ) with no luck at all.

Can someone else confirm it works for them? Thanks!

1 Like

What is your docker run command? Here is mine but I am mapping the http port to 8081 & https to port 8444 because I have OH2 on the same VM.

I am running on a synology in parallel with an OP 2.5
I’m setting the ports in the environment variables.

	docker run -d \
	  --name openhab30M5host \
	  --net=host \
	  -v /etc/localtime:/etc/localtime:ro \
	  -v /volume1/homes/agerdts/openhab30/data/addons:/openhab/addons \
	  -v /volume1/homes/agerdts/openhab30/data/conf:/openhab/conf \
	  -v /volume1/homes/agerdts/openhab30/data/userdata:/openhab/userdata \
	  -v /volume1/homes/agerdts/openhab30/data/userdata/tmp:/var/lib/openhab2/tmp \
	  -e "EXTRA_JAVA_OPTS=-Duser.timezone=Europe/Berlin" \
	  -e OPENHAB_HTTP_PORT=6000 \
	  -e OPENHAB_HTTPS_PORT=6443 \
	  openhab/openhab:3.0.0.M5

I’ve seen the same behavior and I figured that was be design. What sort of use case do you have where the same Item would be a member of more than one Group? The typical flow is an Item is a member of an Equipment Group which is a member of either another Equipment Group or a Location. In rare cases, an Item would be a member of a Location Group directly.

If an Item is a member of more than one Group it implies that the Item is in two different places at the same time.