Как запрограммировать BSFrance LoRA32u4 из Arduine IDE 8.5?

Я купил BSFrance LoRA32u4 в магазине DIYmall на eBay UK.

https://bsfrance.fr/lora-long-range/1311-BSFrance-LoRa32u4-1KM-Long-Range-Board-Based-Atmega32u4-433MHz-LoRA-RA02-Module.html

Я скопировал каталог "bsfrance" (из ZIP-файла) в Arduino/hardware (в 64-разрядной версии Ubuntu 16.04).

В среде Arduino IDE я выбрал правильную плату (Инструменты>>Плата>>BSFrance>>LoRA32u4).

Я выбрал правильный порт Tools>>Port>>/dev/ttyACM1 (LoRA32u4).

Проверка тривиального скетча выглядит нормально:

void setup() {
  pinMode(LED_BUILTIN, OUTPUT);
}

void loop() {
  digitalWrite(LED_BUILTIN, HIGH);   // включаем светодиод (HIGH - уровень напряжения)
  delay(1000);                       // ждем секунду
  digitalWrite(LED_BUILTIN, LOW);    // выключаем светодиод, понижая напряжение
  delay(1000);                       // ждем секунду
}

Результат:

Sketch uses 4104 bytes (14%) of program storage space. Maximum is 28672 bytes.
Global variables use 149 bytes of dynamic memory.

Устройство USB отображается в lsusb как: Bus 002 Device 077: ID 239a:800c.

Нажатие кнопки "Установить" приводит к тому, что белый светодиод мигает примерно десять секунд, но в результате:

avrdude: error: buffered memory access not supported. Maybe it isn't
a butterfly/AVR109 but a AVR910 device?
avrdude: initialization failed, rc=-1
         Double check connections and try again, or use -F to override
         this check.

или:

Couldn't find a Board on the selected port. Check that you have the
correct port selected.  If it is correct, try pressing the board's reset 
button after initiating the upload.

или:

Found programmer: Id = "CATERIN"; type = 

или:

Device code: 0x0d

или:

.   Software Version = 1.0; Hardware Version = 

или:

.   Software Version = 1.0; Hardware Version = 

Как перенести код на эту плату?

(Я новичок в Arduino, поэтому я могу упустить что-то очевидное. У меня большой опыт программирования ванильных ATMEGA на C без Arduino IDE.)

--

У меня есть AVRISP mkII. Поможет ли запись нового загрузчика или просто сломает USB-последовательный порт на устройстве?

, 👍1

Обсуждение

какую плату выбрать, @Akhil A B


2 ответа


Лучший ответ:

0

Я отправил электронное письмо BSFrance, и они были очень полезны, вернувшись с несколькими предложениями, которые я не смог реализовать.

Затем я попробовал Sketch>>Upload Using Programmer с моим AVRISPmkII, и это сработало. Я предполагаю, что на плате, которую я купил, возникла проблема с загрузчиком/Linux, и, обходя ее, я могу запрограммировать плату.

Он также безупречно работает с моим Mac Mini.

,

1

У меня была такая же проблема, но я не мог решить ее с помощью "Загрузить с помощью программатора". Вместо этого я думаю, что проблема заключалась в том, что последовательное соединение продолжало обрываться через пару секунд. У моего коллеги, тоже на Ubuntu, была такая же проблема.

Мне это помогло: https://learn.adafruit.com /adafruit-arduino-ide-setup/linux-setup#udev-rules

Плата регистрируется как плата Adafruit в моей системе, и, по-видимому, ModemManager не слишком заинтересован в этом.

После запуска первой команды в ссылке и перезапуска я смог загрузить на плату из Arduino IDE без ошибок.

,