-
-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Avrdude 7.3 #31
Comments
To get libserialport, the other possibility is to upgrade the crossbuild container. Reference: |
Related issue from avdude project.
|
BTW, I think |
One experiment to cross build libserialport and avrdude under the cross-build container using the mingw cross compiler.
You can see that libserialport is included from the below run log.
And the binary works fine.
|
It also works under Linux.
|
Just attach my avrdude 7.3 release cross-build binaries in case people want to test under Windows and Linux. All binaries are built with libserialport support. avrdude_mingw32.zip Edit: renamed and archived here as well. |
libserialport needs more work for cross build as well for macOS.
|
Hello @mcuee have you tried to use
|
Thanks for the tip. I will try this over the weekend. |
Sorry I can not figure out how to do it. I tried things like the following and it did not work.
|
Then I also tried the fork here. But apparently it is also not working -- looks like the CMake script is not yet ready for cross-compiler.
|
FYI, avrdude 8.0 has been released. As of now the static linking build binaries are missing libserialport support. |
avrdude 8.0 mingw32 cross build log. Initial run log under Ubuntu 24.04.
Within cross-build docker.
|
avrdude 8.0 Linux x64 cross build.
|
Same issue now.
|
From here: @umbynos |
Hey @mcuee! Unfortunately I don't have much time to dedicate to this. But I'll try to do the best I can. Do you happen to have a list of tasks to complete in order to update |
I believe it should work out of the box, but of course without libserialport support. We can deal with that later. Edit: I believe the following patch is no longer needed. |
An 8.0 "Arduino flavored" release would be really neat, even without libserialport. Avrdude 8.0 enables support for the PICkit5 as a UPDI programmer, which is quite significant! |
I've update/removed the patches in
|
@ndim do you have any idea what this might be? |
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9ab5a832..c3b5d8a8 100644
index 431eda87..ff8d678f 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -21,7 +21,7 @@
# cmake --build build
cmake_minimum_required(VERSION 3.14)
-project(avrdude VERSION 7.3 LANGUAGES C)
+project(avrdude VERSION ARDUINO_VERSION_PLACEHOLDER LANGUAGES C)
set(CMAKE_C_STANDARD 11)
set(CMAKE_C_STANDARD_REQUIRED True) @umbynos I dug a little deeper, and it looks like CMake's However, when you prepared 7.2-arduino.1, it looks like you didn't change this, only |
This looks like avrdude upstream should add some Then this project would not need to patch anything, but just add |
I have opened a pull request with upstream avrdude at avrdudes/avrdude#1927 addressing this issue. Here is the corresponding commit from the PR. It applies cleanly to the released avrdude-8.0 sources, so you can use this patch until upstream avrdude does its next release with this patch included. @umbynos Does this work for you (apply the patch, then add
|
Hey! This looks great! Thanks |
Thanks for the help @mcuee @MCUdude and @ndim. |
Thank you so much @umbynos! Better late than never. libserialport is indeed a separate issue, but it is best to wait until a new release of libserialport is here (0.1.2). The current 0.1.1 is pretty broken on more recent versions of macOS, and they just recently merged my PR that fixes this. |
A new version of libserialport has just been released! It solves a lot of issues and is worth bundling with Avrdude. https://github.com/sigrokproject/libserialport/releases |
Describe the problem
Hi @umbynos!
You're probably aware of it, but Avrdude 7.3 was recently released, with lots of new and exciting features, but also lots of under-the-hood changes.
One of the new key features is "automatic serial port discovery", which means that you can do
-c ch340
,-c ft232rl:[optional s/n]
or even-P usb:[vid]:[pid]:[optional s/n]
instead of having to find the correct COM port number or /dev path. New serial adapters can easily be added to avrdude.conf, which means that-c arduino_uno
or-c arduino_mega
world work just fine as long as their USB VID and PID are present in avrdude.conf. Neat!Another neat feature is support for the famous "1200bps touch" functionality the Arduino Leonardo, Micro/Pro Micro and the Nano Every rely on. We put lots of development into this, and it works flawlessly with devices that gets a new PID and/or VID after issuing a "1200bps touch". Use the
-r
flag to issue a 1200bps touch.However, Avrdude needs to be compiled with libserialport. I hope you're able to update the build procedure to add this dependency. It makes the entire experience a lot better for Arduino users!
Thanks and best!
To reproduce
N/A
Expected behavior
N/A
avrdude version
Avrdude 7.3
Operating system
N/A
Operating system version
N/A
Additional context
No response
Issue checklist
The text was updated successfully, but these errors were encountered: