Location: Asia Pacific, Cyberspace, in the Dark Dystopia
Posts: 19,118
Thanks Given: 2,351
Thanked 3,359 Times in 1,878 Posts
Arduino-cli - Uploading to Unknown Chinese Arduino Boards using the Arduino Command Line Interface
In my further exploration of Arduino, today I decided to install the arduino-cli on my mac today.
Code:
https://github.com/arduino/arduino-cli
I followed the instructions for macOS but when I got to this part:
Code:
arduino-cli board list
I got the dreaded "Unknown" Fully Qualified Board Name (FQBN)
Code:
macos$ arduino-cli board list
Port Type Board Name FQBN Core
/dev/cu.Bluetooth-Incoming-Port Serial Port Unknown
/dev/cu.usbserial-40 Serial Port (USB) Unknown
Because of this, I got the same related-error when I tried to upload to the Arduino after successfully complying a sketch, per instruction in the link above.
Then, after an evening run next to the beach, I decided to look at the source code, so I downloaded the source and planned to modify the part of the upload / board code to bypass this error.
However, after looking at the arduino-cli source code, I thought to myself "My Arduino code uploads fine using the Arduino IDE (the GUI), so there must be a cleaner way to fix this problem with the CLI".
Then, I ran:
Code:
arduino-cli board listall
... and found there were no entries from the Arduino Uno family of boards, strangely enough. So, I then ran this command:
Code:
macos$ arduino-cli core search uno
ID Version Name
arduino:avr 1.8.2 Arduino AVR Boards
arduino:megaavr 1.8.5 Arduino megaAVR Boards
... and lo-and-behold, there are the Arduino boards, which seemed to match the name of my Chinese Arduino UNO with "Unknown" FQBN
So, now that I found them, and they look like a possibility, I installed them for my "Unknown" FQBN Arduino clone:
Code:
arduino-cli core install arduino:avr
and the mega stuff for fun:
Code:
arduino-cli core install arduino:megaavr
After that, I listed the installed boards to make sure all was cool, and things were looking up (so I assumed):
Code:
macos$ arduino-cli board listall
Board Name FQBN
Adafruit Circuit Playground arduino:avr:circuitplay32u4cat
Adafruit Circuit Playground Express arduino:samd:adafruit_circuitplayground_m0
Arduino BT arduino:avr:bt
Arduino Duemilanove or Diecimila arduino:avr:diecimila
Arduino Esplora arduino:avr:esplora
Arduino Ethernet arduino:avr:ethernet
Arduino Fio arduino:avr:fio
Arduino Gemma arduino:avr:gemma
Arduino Industrial 101 arduino:avr:chiwawa
Arduino Leonardo arduino:avr:leonardo
Arduino Leonardo ETH arduino:avr:leonardoeth
Arduino M0 arduino:samd:mzero_bl
Arduino M0 Pro (Native USB Port) arduino:samd:mzero_pro_bl
Arduino M0 Pro (Programming Port) arduino:samd:mzero_pro_bl_dbg
Arduino MKR FOX 1200 arduino:samd:mkrfox1200
Arduino MKR GSM 1400 arduino:samd:mkrgsm1400
Arduino MKR NB 1500 arduino:samd:mkrnb1500
Arduino MKR Vidor 4000 arduino:samd:mkrvidor4000
Arduino MKR WAN 1300 arduino:samd:mkrwan1300
Arduino MKR WAN 1310 arduino:samd:mkrwan1310
Arduino MKR WiFi 1010 arduino:samd:mkrwifi1010
Arduino MKR1000 arduino:samd:mkr1000
Arduino MKRZERO arduino:samd:mkrzero
Arduino Mega ADK arduino:avr:megaADK
Arduino Mega or Mega 2560 arduino:avr:mega
Arduino Micro arduino:avr:micro
Arduino Mini arduino:avr:mini
Arduino NANO 33 IoT arduino:samd:nano_33_iot
Arduino NG or older arduino:avr:atmegang
Arduino Nano arduino:avr:nano
Arduino Nano Every arduino:megaavr:nona4809
Arduino Pro or Pro Mini arduino:avr:pro
Arduino Robot Control arduino:avr:robotControl
Arduino Robot Motor arduino:avr:robotMotor
Arduino Tian arduino:samd:tian
Arduino Tian (MIPS Console port) arduino:samd:tian_cons
Arduino Uno arduino:avr:uno
Arduino Uno WiFi arduino:avr:unowifi
Arduino Uno WiFi Rev2 arduino:megaavr:uno2018
Arduino Yún arduino:avr:yun
Arduino Yún Mini arduino:avr:yunmini
Arduino Zero (Native USB Port) arduino:samd:arduino_zero_native
Arduino Zero (Programming Port) arduino:samd:arduino_zero_edbg
LilyPad Arduino arduino:avr:lilypad
LilyPad Arduino USB arduino:avr:LilyPadUSB
Linino One arduino:avr:one
Now, I have the arduino-cli working on my mac and can start to use my favorite IDE to develop Arduino sketches if I so choose and maybe can do other magical things with the Arduino now that I have the command line interface working.
Merry Christmas Arduino CLI
unix time synced to the Arduino via uploading using the cli:
Code:
https://github.com/arduino/arduino-cli
Yes, I know I should have changed the LCD on the Ardunio to display a Christmas message, but decided to pass on being too geeky and eat a chicken burger instead
Location: Asia Pacific, Cyberspace, in the Dark Dystopia
Posts: 19,118
Thanks Given: 2,351
Thanked 3,359 Times in 1,878 Posts
Reference from Arduino CLI command:
Code:
macos$ arduino-cli
Arduino Command Line Interface (arduino-cli).
Usage:
arduino-cli [command]
Examples:
arduino-cli <command> [flags...]
Available Commands:
board Arduino board commands.
compile Compiles Arduino sketches.
config Arduino Configuration Commands.
core Arduino Core operations.
daemon Run as a daemon on port
help Help about any command
lib Arduino commands about libraries.
sketch Arduino CLI Sketch Commands.
upload Upload Arduino sketches.
version Shows version number of arduino CLI.
Flags:
--additional-urls strings Additional URLs for the board manager.
--config-file string The custom config file (if not specified the default will be used).
--format string The output format, can be [text|json]. (default "text")
-h, --help help for arduino-cli
--log-file string Path to the file where logs will be written.
--log-format string The output format for the logs, can be [text|json].
--log-level string Messages with this level and above will be logged.
-v, --verbose Print the logs on the standard output.
Use "arduino-cli [command] --help" for more information about a command.
Normally I'm not into kits, but I thought my wife would enjoy this one since she is a big fan of robots and droids on StarWars!
We are done with the basic mechanical assembly and starting on the electronics assembly today.
The robot's "brain" consists of three levels. The Arduino board, on... (5 Replies)
Today I received my NB-IoT Arduino Shield for AIS (Thailand). Here is a "pinout" photo of the shield.
My shield looks just like the one above, for the most part. I'll post another photo of the actual device later.
When I received the shield in the mail, I went immediately to a local... (8 Replies)
My favorite projects are always related to the "latest" tech in command and control, networking and network communications. This Elecrow GSM/GPRS/EDGE SIM5360E 3G Shield seems to be the "latest and the greatest" as far as 3G and GPS, as far as I can see so far, but I has it drawbacks for sure.... (6 Replies)
Just finished a quick Python script to send the current unix time over to the Arduino from macOS, so in the absence of GPS or some other way to get the unix timestamp (epoch time) to the Arduino, I can get my macOS and Arduino UNO synced to within a second.
Normally, when the Arduino starts... (9 Replies)
Waiting for more fun Ardunio parts from AliExpress, I decided to test two cheap Chinese Arduino UNO clones.
The Arduino UNO R3 (CH340G) MEGA328P
The Wavgat UNO R3 (CH340G) MEGA328P
Both of these Chinese Ardunio clones sell for about $3 USD, delivered to your door.
The bottom line is... (0 Replies)
HI all...
(Apologies for any typos.)
To add to Neo's Arduino subject matter I have decided to upload this in ".zip" format.
Ignore "*.info" files these are AMIGA icons only and also the "HAM" drawer as these are photos in ancient AMIGA HAM modes.
I have noticed that there are current... (6 Replies)
A very simple Arduino board test... LOL
Here is some very easy code to test a cheap Arduino board I just got from China via Aliexpress. I am still waiting on a about 30 more orders from Aliexpress for more Arduino stuff. This was the first order which made it here.
/*
Arduino test-code... (18 Replies)
I am working on a semi-auto detection idea for Arduino for the Scope project.
It does require a little user intervention but minimal.
It works by just responding to two on screen prompts to unplug and plug Arduino
into a USB port.
There are two versions and both work perfectly well and give... (3 Replies)
This is a very simple starter DEMO to access Arduino Diecimila Board for the
Macbook Pro 13" OSX 10.7.5...
A potentiometer is connected between 5V and Gnd with the wiper connected to
ANALOG IN 0 on the Arduino. This was adjusted to give the Ms and Ls as seen...
I now have DC in for this... (0 Replies)
Hi all...
(Apologies for any typos at all.)
This is a step by step _script_ to check if your Arduino is talking to your Linux or Macbook Pro computer using the Terminal...
It works on at least 3 Linux flavours and now the Macbook Pro...
I hope you find it useful as a simple check for... (0 Replies)