Comments (14)
Great to see that you've been able to build it :) I will try to fix the patch applying script to give better feedback, as it relies on git
.
The problem with not being able to see the portal without a desk connection is kinda expected... The code tries to keep an active connection with the specified desk and is basically in a boot loop when it cannot connect. You make it enter the configuration state again by restarting it twice in a short period.
I haven't implemented a lot of error handling, as this project is mostly to share my work with more people, and for me, the happy path is enough 😁
I'm open to contributions if you want to try improving the project :)
from linakdeskesp32controller.
Hi
I'd rather fix any build issues than provide fixed binaries :)
The project does have a Windows CI action and it has been passing lately, so I would expect it to build...
Are you sure the patch from patches/gcc-ar-ranlib.patch
was applied by scripts/apply_patches.py
? There are changes needed in builder/main.py
in the platform package, to use different AR
and RANLIB
(see platformio/platform-espressif32#702)
from linakdeskesp32controller.
Hi,
thanks for your answer, i try to compile it with atom or vscode, but both always with the same error.... i am not sure if it does the fixes, but in the platformio.ini they are there.
with the errors, I can not do anything: Maybe you can help me? So I could create a binary for me?
c:/users/fixitfoxy/.platformio/packages/toolchain-xtensa-esp32/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld.exe: C:\Users\fixitfoxy\AppData\Local\Temp\ccp20NWH.ltrans0.ltrans.o:C:\LinakDeskEsp32Controller-main/lib/LinakDeskEmbedded/Constants.h:18: undefined refe
rence to NimBLEUUID::NimBLEUUID(unsigned int, unsigned short, unsigned short, unsigned long long)' c:/users/fixitfoxy/.platformio/packages/toolchain-xtensa-esp32/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld.exe: C:\Users\fixitfoxy\AppData\Local\Temp\ccp20NWH.ltrans0.ltrans.o:C:\LinakDeskEsp32Controller-main/lib/LinakDeskEmbedded/Constants.h:19: undefined refe rence to
NimBLEUUID::NimBLEUUID(unsigned int, unsigned short, unsigned short, unsigned long long)'
c:/users/fixitfoxy/.platformio/packages/toolchain-xtensa-esp32/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld.exe: C:\Users\fixitfoxy\AppData\Local\Temp\ccp20NWH.ltrans0.ltrans.o:C:\LinakDeskEsp32Controller-main/lib/LinakDeskEmbedded/Constants.h:20: more undefined
references to NimBLEUUID::NimBLEUUID(unsigned int, unsigned short, unsigned short, unsigned long long)' follow c:/users/fixitfoxy/.platformio/packages/toolchain-xtensa-esp32/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld.exe: C:\Users\fixitfoxy\AppData\Local\Temp\ccp20NWH.ltrans0.ltrans.o:C:\LinakDeskEsp32Controller-main/src/main.cpp:34: undefined reference to
AsyncWebSer
ver::AsyncWebServer(unsigned short)'
c:/users/fixitfoxy/.platformio/packages/toolchain-xtensa-esp32/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld.exe: C:\Users\fixitfoxy\AppData\Local\Temp\ccp20NWH.ltrans0.ltrans.o: in function _GLOBAL__sub_I__ZN20ESPAsync_WMParameterC2EPKc': c:\users\fixitfoxy\.platformio\packages\toolchain-xtensa-esp32\xtensa-esp32-elf\include\c++\8.4.0\bits/unique_ptr.h:835: undefined reference to
LinakDesk::BluetoothConnection::BluetoothConnection()'
c:/users/fixitfoxy/.platformio/packages/toolchain-xtensa-esp32/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld.exe: C:\Users\fixitfoxy\AppData\Local\Temp\ccp20NWH.ltrans0.ltrans.o: in function _GLOBAL__sub_I__ZN20ESPAsync_WMParameterC2EPKc': C:\LinakDeskEsp32Controller-main/lib/LinakDeskEmbedded/DeskControllerFactory.h:11: undefined reference to
LinakDesk::DeskController::DeskController(std::unique_ptr<LinakDesk::ConnectionInterface, std::default_deleteLinakDesk::ConnectionInterface >)'
c:/users/fixitfoxy/.platformio/packages/toolchain-xtensa-esp32/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld.exe: C:\Users\fixitfoxy\AppData\Local\Temp\ccp20NWH.ltrans0.ltrans.o: in function _GLOBAL__sub_I__ZN20ESPAsync_WMParameterC2EPKc': C:\LinakDeskEsp32Controller-main/.pio/libdeps/esp32dev/FauxmoESP/src/fauxmoESP.h:84: undefined reference to
WiFiUDP::WiFiUDP()'
c:/users/fixitfoxy/.platformio/packages/toolchain-xtensa-esp32/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld.exe: C:\Users\fixitfoxy\AppData\Local\Temp\ccp20NWH.ltrans0.ltrans.o: in function _GLOBAL__sub_I__ZN20ESPAsync_WMParameterC2EPKc': C:\LinakDeskEsp32Controller-main/.pio/libdeps/esp32dev/TaskScheduler/src/TaskScheduler.h:291: undefined reference to
millis'
collect2.exe: error: ld returned 1 exit status
*** [.pio\build\esp32dev\firmware.elf] Error 1
========================= [FAILED] Took 58.83 seconds =========================
Environment Status Duration
esp32dev FAILED 00:00:58.830
==================== 1 failed, 0 succeeded in 00:00:58.830 ====================
from linakdeskesp32controller.
Thanks for the details.
Just to be sure - you're running platformio on an unmodified copy of the project?
You can try comparing your output with the logs from the CI run: https://github.com/krzmaz/LinakDeskEsp32Controller/runs/6350384190?check_suite_focus=true (look at the windows-latest
run, the run platformio
step) - look at the PLATFORM
, HARDWARE
and PACKAGES
sections, the Library Manager logs and the dependency graph.
One quick thing that might help would be to clean the platformio dependencies from c:/users/fixitfoxy/.platformio/packages/
and let it redownload them on the next run.
from linakdeskesp32controller.
hey krzmaz,
I have purged the directory c:/users/fixitfoxy/.platformio/packages/ and redownloaded the project. Unpack in a new file location and I checked my g++ path. now i tried to log the whole thing with and hope you can help with. I feel like a newbie, this is unfortunately the first time that I compile something. Am I missing something or over seeing the essentials? by the way, yes it is a German Windows OS, W10
from linakdeskesp32controller.
I see
xtensa-esp32-elf-ar: .pio\build\esp32dev\lib81f\EEPROM\EEPROM.cpp.o: plugin needed to handle lto object
...
xtensa-esp32-elf-ranlib: .pio\build\esp32dev\lib81f\libEEPROM.a(EEPROM.cpp.o): plugin needed to handle lto object
which means it's not applying the changes that I have in my project - patches/gcc-ar-ranlib.patch
to use xtensa-esp32-elf-gcc-ar
and elf-gcc-ranlib
. This may be due to different reasons, for example missing patch
executable on your system.
For a quick check, you could edit the file yourself, it should be in .platformio/platforms/espressif32/builder/main.py
.
Here's a view of the changes needed platformio/platform-espressif32@83d3352 - you need to add "gcc-
" in two places.
from linakdeskesp32controller.
bullseye, the patch was it. thanks a lot. have edited the file manually, then the build ran.
creating firmware.bin->ok
flashing the firmware ->ok
after i've configured the wifi in the portal on esp, but have not changed the desk address for now, because I do not have a stick yet. after i saved the config, i cant get to the esp with the IP. is that normal? is this only possible if the desk has also been found or am I doing something wrong? another issue?
from linakdeskesp32controller.
thank you for looking at the optimization of the patch process. now that you explain to me about the boot loop, it actually sounds logical. Maybe it would be in the description again to read as good, since possibly here the inquiries could be.
I would like to test further when my stick has arrived. Gladly I make then again a contribution for ideas, if I will think of something. Your project is very helpful for me and find the URL-function well and on the soon MQTT function ;) if it allows your time. do you have paypal for a coffee/beer donation?
from linakdeskesp32controller.
Great, let me know when you test it with a desk, it's always great to see my projects working for more people 😁
Feel free to create any issues / "Discussions" topics for problems and ideas for improvements you will see during setup.
I want to keep this one for tracking the patches problem.
Just out of my curiosity - what use case do you have in mind for using MQTT that cannot be done via HTTP requests? I found HTTP to be enough for implementing some buttons on my mobile phone and some node-red integrations. That's why I've been putting off implementing MQTT support 😅 Also the Alexa integration is really useful if you have one 😀
As for paypal you can find me here: https://paypal.me/krzmaz
from linakdeskesp32controller.
As for MQTT, I've had that on my list to implement for myself (and contribute back here as well) for a while now. My reason (maybe different from @fixitfoxy) is that I have a ton of other integrations already going through my MQTT broker and it's easier to hook another one up there than any of the alternatives. Totally get why it's not a priority for you, though, with a different setup.
One of these days I'll carve out an afternoon to get it going...
from linakdeskesp32controller.
I would be happy to feed it to my broker as well, but would like to keep the HTTP request if possible.
from linakdeskesp32controller.
@fixitfoxy I've published a CR that should now make the project not build for you. I'd appreciate it if you check that it is so, and confirm that creating a .patching-done
file in the platform directory solves the issue.
I've also started a discussion about MQTT requirements: #14
from linakdeskesp32controller.
@krzmaz creation .patching-done file in the platform directory - check -> ok
build the project -> ok
solve the issue, thank for the fix.
from linakdeskesp32controller.
Awesome, thanks for the quick confirmation!
Closing
from linakdeskesp32controller.
Related Issues (13)
- Implement proper `move to height` functionality
- Disconnect / Re-connect HOT 6
- Multiple controllers on the network with the same DNS name HOT 1
- Help needed compiling. / Please provide bianry. [wemos_d1_mini32] HOT 7
- ESP reboots randomley and sometimes after receiving target height. HOT 1
- Add moving the desk to height sent via HTTP request and getting the height via one
- Add Web user interface for setting the WiFi credentials and desks Bluetooth address
- Add storing settings in EEPROM HOT 2
- Add converting data to human readable units
- Add getting and setting the desk height via MQTT
- Get height causing reboot HOT 32
- Issues while compiling in PlatformIO HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from linakdeskesp32controller.