Problems getting started reflashing model 01 on Arch Linux

thanks a lot @lhl everything works perfectly! I’ve started modifying my .ino file as well and the changes are carrying over just as expected :slight_smile:

Minor note, you can replace pacaur with pacman - all the packages are in the official repositories

1 Like

Sorry to bump an old thread, but I’ve got mine building and flashing on my Arch laptop now too. I have it all wrapped up in a Makefile, so feel free to take what you need! https://github.com/Olical/keyboards/tree/master/model01

3 Likes

I managed to flash my keyboardio model 1 on Archlinux only with the Archlinux Arduino packages. I also use the upstream avr-gcc packaged by Archlinux without any symlink in /usr/share/arduino/hardware.

Here is my conf:

max@host % pwd
/home/max/Documents/personnel/keyboardio/flash

max@host % tree --noreport -L 3
.
├── hardware
│   └── keyboardio
│       └── avr
└── Model01-Firmware
    └── …

max@host % cd hardware/keyboardio/avr

max@host % git diff
diff --git a/boards.txt b/boards.txt
index d36402a..75a36e0 100644
--- a/boards.txt
+++ b/boards.txt
@@ -33,6 +33,6 @@ model01.build.pid=0x2301
 model01.build.usb_product="Model 01"
 model01.build.usb_manufacturer="Keyboardio"
 model01.build.board=AVR_MODEL01
-model01.build.core=arduino:arduino
+model01.build.core=archlinux-arduino:arduino
 model01.build.variant=model01
 model01.build.extra_flags={build.usb_flags} '-DKALEIDOSCOPE_HARDWARE_H="Kaleidoscope-Hardware-Model01.h"'
diff --git a/libraries/Kaleidoscope b/libraries/Kaleidoscope
--- a/libraries/Kaleidoscope
+++ b/libraries/Kaleidoscope
@@ -1 +1 @@
-Subproject commit fe71904441b6f02698ac59b53efae0c159bbb772
+Subproject commit fe71904441b6f02698ac59b53efae0c159bbb772-dirty

max@host % cd libraries/Kaleidoscope

max@host % git diff
diff --git a/etc/kaleidoscope-builder.conf b/etc/kaleidoscope-builder.conf
index b337973..472e0fe 100644
--- a/etc/kaleidoscope-builder.conf
+++ b/etc/kaleidoscope-builder.conf
@@ -1,5 +1,15 @@
 # -*- shell-script -*-

+# perso for Archlinux packages
+ARDUINO_PATH=/usr/share/arduino
+ARDUINO_TOOLS_PATH=/usr/share/arduino/tools
+AVR_SIZE=/usr/bin/avr-size
+AVR_NM=/usr/bin/avr-nm
+AVR_OBJDUMP=/usr/bin/avr-objdump
+AVRDUDE=/usr/bin/avrdude
+AVRDUDE_CONF=/etc/avrdude.conf
+AVR_GCC_PREFIX=/usr
+
 ## NEEDS: LIBRARY, SKETCH, ROOT, SOURCEDIR
 ## Should be included when the current directory is the dir of the Sketch.

max@host % cd /home/max/Documents/personnel/keyboardio/flash/Model01-Firmware

max@host % make SKETCHBOOK_DIR=/home/max/Documents/personnel/keyboardio/flash  flash
BOARD_HARDWARE_PATH="/home/max/Documents/personnel/keyboardio/flash/hardware" /home/max/Documents/personnel/keyboardio/flash/hardware/keyboardio/avr/libraries/Kaleidoscope/bin//kaleidoscope-builder flash
Building output/Model01-Firmware/Model01-Firmware (0.0.0-gv1.22-3-gb745) ...
…
Press ENTER when ready...
Connecting to programmer: .
Found programmer: Id = "CATERIN"; type = S
    Software Version = 1.0; No Hardware Version given.
Programmer supports auto addr increment.
Programmer supports buffered memory access with buffersize=128 bytes.

Programmer supports the following devices:
    Device code: 0x44

5 Likes