homieiot / homie-esp8266

💡 ESP8266 framework for Homie, a lightweight MQTT convention for the IoT
http://homieiot.github.io/homie-esp8266
MIT License
1.36k stars 308 forks source link

Examples won't compile (version number needs to be bumped?) #148

Closed eirinnm closed 8 years ago

eirinnm commented 8 years ago

Hi, I'm very excited to start building Homie devices using my ESP8266 boards! I've just installed Homie using PlatformIO's library manager, which works, but the LED strip controller example won't compile.

error: 'HomieRange' was not declared in this scope

My local copy of Homie 1.5.0 doesn't have Homierange.cpp. I think this is because when you added HomieRange, and updated the examples to use it, you didn't change the version number. As a result the version in PlatformIO's repository hasn't been synced with the new additions.

eirinnm commented 8 years ago

Pinging @ivankravets as I just noticed you're a contributor here too.

ivankravets commented 8 years ago

You use stable 1.5.0 version where this HomieRange has not been implemented yet. If you want to try development version of this library, you should use GitHub URL or path to archive with latest sources. For example,

platformio lib install https://github.com/marvinroger/homie-esp8266.git
platformio lib install https://github.com/marvinroger/homie-esp8266/archive/master.zip

In any case, you should deinstall previous stable version via platformio lib uninstall Homie. I recommend to use first option with GIT VCS. In this case, platformio lib update Homie will automatically sync library with thisrepository.

eirinnm commented 8 years ago

Great, thanks a lot! It compiles now using the latest source from the repository. Still, I think we need examples that work with the last stable version.

marvinroger commented 8 years ago

Thanks @ivankravets for the explanation @zouden the code in the master branch is the 2.0.0 one, which is not yet released. As a result, PlatformIO does not know HomieRange. It's not a mistake, it's just the v2 is not ready.

Examples are bundled within each release. For PlatformIO, I don't know if there's a built-in way to show examples from the CLI, but the examples on the Homie PlatformIO page are the right ones, the 1.5.0 examples.

ivankravets commented 8 years ago

Examples are located in the same directory where library is installed. @zouden check it via pio lib list, where you will Library Storage path, follow to Homie and check examples folder.