Month: December 2022
Getting started to hardware description language and FPGA
I decided to learn a little bit of Verilog and FPGA.
A nice place to start reading about Verilog is this site:
https://www.asic-world.com/verilog/index.html
https://mjseemjdo.com/2021/03/28/the-15-fpga-with-20-000-luts/
Of course you can use Verilator to start with a simulator, but soon or later you will want to buy a board. I decided to start with the Sipeed Tang Primer 20K board because it is low cost.
Writing 0xFF into files using dd command
dd if=/dev/zero bs=1M count=100 | tr '\000' '\377' > file
Source: https://www.linuxquestions.org/questions/linux-software-2/writing-0xff-with-the-dd-command-845232/
Getting started to nanoCH32V203 board
Few days ago I received a low cost nanoCH32V203 that I bought from Aliexpress and today I decided to test it.
Unfortunately the official board github https://github.com/wuxx/nanoCH32V203 doesn’t have a flashing tool for Linux, but I found this Rust https://github.com/ch32-rs/wchisp tool for CH32V208 and decided to test it with CH32V203:
$ cargo install wchisp --git https://github.com/ch32-rs/wchisp
Updating git repository `https://github.com/ch32-rs/wchisp`
Installing wchisp v0.2.0 (https://github.com/ch32-rs/wchisp#5c7469eb)
Updating crates.io index
Downloaded is-terminal v0.4.2
Downloaded indicatif v0.17.2
Downloaded itoa v1.0.5
Downloaded number_prefix v0.4.0
Downloaded libusb1-sys v0.6.4
Downloaded object v0.29.0
Downloaded portable-atomic v0.3.18
Downloaded rusb v0.9.1
Downloaded scroll v0.11.0
Downloaded time v0.3.17
Downloaded time-macros v0.2.6
Downloaded terminal_size v0.1.17
Downloaded simplelog v0.12.0
Downloaded strsim v0.10.0
Downloaded unsafe-libyaml v0.2.5
Downloaded console v0.15.2
Downloaded clap v4.0.32
Downloaded heck v0.4.0
Downloaded hex v0.4.3
Downloaded serde_yaml v0.9.16
Downloaded proc-macro2 v1.0.49
Downloaded rand v0.8.5
Downloaded anyhow v1.0.68
Downloaded unicode-ident v1.0.6
Downloaded termcolor v1.1.3
Downloaded indexmap v1.9.2
Downloaded ppv-lite86 v0.2.17
Downloaded getrandom v0.2.8
Downloaded serde v1.0.151
Downloaded rand_chacha v0.3.1
Downloaded cc v1.0.78
Downloaded once_cell v1.16.0
Downloaded num_threads v0.1.6
Downloaded os_str_bytes v6.4.1
Downloaded syn v1.0.107
Downloaded clap_lex v0.3.0
Downloaded clap_derive v4.0.21
Downloaded ryu v1.0.12
Downloaded hashbrown v0.12.3
Downloaded serde_derive v1.0.151
Downloaded io-lifetimes v1.0.3
Downloaded time-core v0.1.0
Downloaded log v0.4.17
Downloaded unicode-width v0.1.10
Downloaded rand_core v0.6.4
Downloaded pkg-config v0.3.26
Downloaded quote v1.0.23
Downloaded rustix v0.36.5
Downloaded linux-raw-sys v0.1.4
Downloaded libc v0.2.139
Downloaded bitfield v0.14.0
Downloaded hxdmp v0.2.1
Downloaded ihex v3.0.0
Downloaded 53 crates (4.4 MB) in 6.36s
Compiling libc v0.2.139
Compiling proc-macro2 v1.0.49
Compiling unicode-ident v1.0.6
Compiling quote v1.0.23
Compiling version_check v0.9.4
Compiling syn v1.0.107
Compiling cfg-if v1.0.0
Compiling pkg-config v0.3.26
Compiling io-lifetimes v1.0.3
Compiling cc v1.0.78
Compiling rustix v0.36.5
Compiling autocfg v1.1.0
Compiling serde_derive v1.0.151
Compiling time-core v0.1.0
Compiling serde v1.0.151
Compiling memchr v2.5.0
Compiling bitflags v1.3.2
Compiling itoa v1.0.5
Compiling log v0.4.17
Compiling portable-atomic v0.3.18
Compiling linux-raw-sys v0.1.4
Compiling heck v0.4.0
Compiling unicode-width v0.1.10
Compiling num_threads v0.1.6
Compiling termcolor v1.1.3
Compiling lazy_static v1.4.0
Compiling rusb v0.9.1
Compiling os_str_bytes v6.4.1
Compiling ppv-lite86 v0.2.17
Compiling anyhow v1.0.68
Compiling hashbrown v0.12.3
Compiling once_cell v1.16.0
Compiling number_prefix v0.4.0
Compiling unsafe-libyaml v0.2.5
Compiling ryu v1.0.12
Compiling strsim v0.10.0
Compiling ihex v3.0.0
Compiling hxdmp v0.2.1
Compiling hex v0.4.3
Compiling bitfield v0.14.0
Compiling scroll v0.11.0
Compiling time-macros v0.2.6
Compiling proc-macro-error-attr v1.0.4
Compiling proc-macro-error v1.0.4
Compiling indexmap v1.9.2
Compiling clap_lex v0.3.0
Compiling object v0.29.0
Compiling libusb1-sys v0.6.4
Compiling getrandom v0.2.8
Compiling terminal_size v0.1.17
Compiling time v0.3.17
Compiling console v0.15.2
Compiling rand_core v0.6.4
Compiling rand_chacha v0.3.1
Compiling indicatif v0.17.2
Compiling rand v0.8.5
Compiling simplelog v0.12.0
Compiling is-terminal v0.4.2
Compiling clap_derive v4.0.21
Compiling clap v4.0.32
Compiling serde_yaml v0.9.16
Compiling wchisp v0.2.0 (/home/alan/.cargo/git/checkouts/wchisp-052209e38cd65ae2/5c7469e)
Finished release [optimized] target(s) in 44.34s
Installing /home/alan/.cargo/bin/wchisp
Installed package `wchisp v0.2.0 (https://github.com/ch32-rs/wchisp#5c7469eb)` (executable `wchisp`)
warning: be sure to add `/home/alan/.cargo/bin` to your PATH to be able to run the installed binaries
$ sudo -s
# export PATH=$PATH:/home/alan/.cargo/bin
# wchisp info
20:55:13 [INFO] Chip: CH32V203C8T6[0x3119] (Code Flash: 64KiB)
20:55:13 [INFO] Chip UID: cd-ab-57-fc-5b-bc-7f-64
20:55:13 [INFO] BTVER(bootloader ver): 02.60
20:55:13 [INFO] Code Flash protected: false
20:55:13 [INFO] Current config registers: a55a3fc000ff00ffffffffff
RDPR_USER: 0xC03F5AA5
[7:0] RDPR 0xA5 (0b10100101)
`- Unprotected
[16:16] IWDG_SW 0x1 (0b1)
`- IWDG enabled by the software, and disabled by hardware
[17:17] STOP_RST 0x1 (0b1)
`- Disable
[18:18] STANDBY_RST 0x1 (0b1)
`- Disable, entering standby-mode without RST
[23:22] SRAM_CODE_MODE 0x0 (0b0)
`- CODE-192KB + RAM-128KB / CODE-128KB + RAM-64KB depending on the chip
DATA: 0xFF00FF00
[7:0] DATA0 0x0 (0b0)
[23:16] DATA1 0x0 (0b0)
WRP: 0xFFFFFFFF
`- Unprotected
How to clean up Meadow repository
git clean -xffd
cd mbedtls
git clean -xffd
cd ..
git submodule update --recursive
./build.sh --force --clean
If you are facing compilation issues try to run it:
$ find . -name libapps.a -exec rm {} \;
$ ./build.sh --wlclean
Using Meadow CLI to flash the firmware
$ /home/alan/.dotnet/tools/meadow flash os -e -d -o Meadow.OS.bin -r Meadow.OS.Runtime.bin -s /dev/ttyACM0
Skipping step to flash Meadow OS
Connecting to Meadow on /dev/ttyACM0
An unknown request value of '0x4D00' was received.
Your OS or runtime version is older than 0.6.1.0. A flash erase is highly recommended.
Proceed? (Y/N) Press Y to erase flash, N to continue install without erasing
y
Meadow StdInfo: Bulk erase begun. Will take 2-3 minutes.
How to install Meadow CLI on Linux
$ dotnet tool install WildernessLabs.Meadow.CLI --global
Welcome to .NET 7.0!
---------------------
SDK Version: 7.0.101
Telemetry
---------
The .NET tools collect usage data in order to help us improve your experience. It is collected by Microsoft and shared with the community. You can opt-out of telemetry by setting the DOTNET_CLI_TELEMETRY_OPTOUT environment variable to '1' or 'true' using your favorite shell.
Read more about .NET CLI Tools telemetry: https://aka.ms/dotnet-cli-telemetry
----------------
Installed an ASP.NET Core HTTPS development certificate.
To trust the certificate run 'dotnet dev-certs https --trust' (Windows and macOS only).
Learn about HTTPS: https://aka.ms/dotnet-https
----------------
Write your first app: https://aka.ms/dotnet-hello-world
Find out what's new: https://aka.ms/dotnet-whats-new
Explore documentation: https://aka.ms/dotnet-docs
Report issues and find source on GitHub: https://github.com/dotnet/core
Use 'dotnet --help' to see available commands or visit: https://aka.ms/dotnet-cli
--------------------------------------------------------------------------------------
Since you just installed the .NET SDK, you will need to logout or restart your session before running the tool you installed.
You can invoke the tool using the following command: meadow
Tool 'wildernesslabs.meadow.cli' (version '0.90.0') was successfully installed.
Installing .NET on Ubuntu
These are the steps:
alan@dev:/tmp$ wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb
--2022-12-19 19:32:45-- https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb
Resolving packages.microsoft.com (packages.microsoft.com)... 13.90.21.104
Connecting to packages.microsoft.com (packages.microsoft.com)|13.90.21.104|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 3690 (3,6K) [application/octet-stream]
Saving to: ‘packages-microsoft-prod.deb’
packages-microsoft-prod 100%[==============================>] 3,60K --.-KB/s in 0s
2022-12-19 19:32:51 (1,14 GB/s) - ‘packages-microsoft-prod.deb’ saved [3690/3690]
alan@dev:/tmp$ sudo dpkg -i packages-microsoft-prod.deb
Selecting previously unselected package packages-microsoft-prod.
(Reading database ... 514992 files and directories currently installed.)
Preparing to unpack packages-microsoft-prod.deb ...
Unpacking packages-microsoft-prod (1.0-ubuntu20.04.1) ...
Setting up packages-microsoft-prod (1.0-ubuntu20.04.1) ...
alan@dev:/tmp$ sudo apt update
Hit:1 http://br.archive.ubuntu.com/ubuntu focal InRelease
Get:2 http://br.archive.ubuntu.com/ubuntu focal-updates InRelease [114 kB]
Get:3 http://br.archive.ubuntu.com/ubuntu focal-backports InRelease [108 kB]
Hit:4 https://dl.google.com/linux/chrome/deb stable InRelease
Get:5 http://br.archive.ubuntu.com/ubuntu focal-updates/main amd64 DEP-11 Metadata [274 kB]
Get:6 http://security.ubuntu.com/ubuntu focal-security InRelease [114 kB]
Get:7 http://br.archive.ubuntu.com/ubuntu focal-updates/universe amd64 DEP-11 Metadata [407 kB]
Get:8 http://br.archive.ubuntu.com/ubuntu focal-updates/multiverse amd64 DEP-11 Metadata [940 B]
Get:9 http://br.archive.ubuntu.com/ubuntu focal-backports/main amd64 DEP-11 Metadata [7.960 B]
Get:10 http://br.archive.ubuntu.com/ubuntu focal-backports/universe amd64 DEP-11 Metadata [30,5 kB]
Hit:11 http://ppa.launchpad.net/obsproject/obs-studio/ubuntu focal InRelease
Hit:12 http://dell.archive.canonical.com focal InRelease
Hit:13 http://packages.microsoft.com/repos/code stable InRelease
Hit:14 http://ppa.launchpad.net/umang/indicator-stickynotes/ubuntu focal InRelease
Get:15 http://security.ubuntu.com/ubuntu focal-security/main amd64 DEP-11 Metadata [40,7 kB]
Get:16 https://packages.microsoft.com/ubuntu/20.04/prod focal InRelease [10,5 kB]
Get:17 http://security.ubuntu.com/ubuntu focal-security/universe amd64 DEP-11 Metadata [93,9 kB]
Hit:18 https://packages.microsoft.com/repos/ms-teams stable InRelease
Get:19 http://security.ubuntu.com/ubuntu focal-security/multiverse amd64 DEP-11 Metadata [940 B]
Hit:20 http://ppa.launchpad.net/wireshark-dev/stable/ubuntu focal InRelease
Get:21 https://packages.microsoft.com/ubuntu/20.04/prod focal/main armhf Packages [30,0 kB]
Get:22 https://packages.microsoft.com/ubuntu/20.04/prod focal/main arm64 Packages [47,3 kB]
Get:23 https://packages.microsoft.com/ubuntu/20.04/prod focal/main amd64 Packages [221 kB]
Get:24 https://packages.microsoft.com/ubuntu/20.04/prod focal/main arm64 Contents (deb) [274 kB]
Get:25 https://packages.microsoft.com/ubuntu/20.04/prod focal/main armhf Contents (deb) [265 kB]
Get:26 https://packages.microsoft.com/ubuntu/20.04/prod focal/main amd64 Contents (deb) [2.805 kB]
Fetched 4.846 kB in 3s (1.548 kB/s)
Reading package lists... Done
Building dependency tree
Reading state information... Done
53 packages can be upgraded. Run 'apt list --upgradable' to see them.
alan@dev:/tmp$ sudo apt install apt-transport-https
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
arduino-core avr-libc binutils-avr binutils-riscv64-unknown-elf gcc-avr libjna-java
libjna-jni librxtx-java libwireshark13 libwiretap10 libwsutil11 libxmlb1 mpv
python3-pyxattr rtmpdump
Use 'sudo apt autoremove' to remove them.
The following NEW packages will be installed:
apt-transport-https
0 upgraded, 1 newly installed, 0 to remove and 53 not upgraded.
Need to get 1.704 B of archives.
After this operation, 162 kB of additional disk space will be used.
Get:1 http://br.archive.ubuntu.com/ubuntu focal-updates/universe amd64 apt-transport-https all 2.0.9 [1.704 B]
Fetched 1.704 B in 0s (15,6 kB/s)
Selecting previously unselected package apt-transport-https.
(Reading database ... 515000 files and directories currently installed.)
Preparing to unpack .../apt-transport-https_2.0.9_all.deb ...
Unpacking apt-transport-https (2.0.9) ...
Setting up apt-transport-https (2.0.9) ...
alan@dev:/tmp$ sudo apt install dotnet-sdk-3.1
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
arduino-core avr-libc binutils-avr binutils-riscv64-unknown-elf gcc-avr libjna-java
libjna-jni librxtx-java libwireshark13 libwiretap10 libwsutil11 libxmlb1 mpv
python3-pyxattr rtmpdump
Use 'sudo apt autoremove' to remove them.
The following additional packages will be installed:
aspnetcore-runtime-3.1 aspnetcore-targeting-pack-3.1 dotnet-apphost-pack-3.1 dotnet-host
dotnet-hostfxr-3.1 dotnet-runtime-3.1 dotnet-runtime-deps-3.1 dotnet-targeting-pack-3.1
netstandard-targeting-pack-2.1
The following NEW packages will be installed:
aspnetcore-runtime-3.1 aspnetcore-targeting-pack-3.1 dotnet-apphost-pack-3.1 dotnet-host
dotnet-hostfxr-3.1 dotnet-runtime-3.1 dotnet-runtime-deps-3.1 dotnet-sdk-3.1
dotnet-targeting-pack-3.1 netstandard-targeting-pack-2.1
0 upgraded, 10 newly installed, 0 to remove and 53 not upgraded.
Need to get 82,2 MB of archives.
After this operation, 346 MB of additional disk space will be used.
Do you want to continue? [Y/n]
Get:1 https://packages.microsoft.com/ubuntu/20.04/prod focal/main amd64 dotnet-host amd64 7.0.1-1 [57,3 kB]
Get:2 https://packages.microsoft.com/ubuntu/20.04/prod focal/main amd64 dotnet-hostfxr-3.1 amd64 3.1.32-1 [121 kB]
Get:3 https://packages.microsoft.com/ubuntu/20.04/prod focal/main amd64 dotnet-runtime-deps-3.1 amd64 3.1.32-1 [2.674 B]
Get:4 https://packages.microsoft.com/ubuntu/20.04/prod focal/main amd64 dotnet-runtime-3.1 amd64 3.1.32-1 [21,9 MB]
Get:5 https://packages.microsoft.com/ubuntu/20.04/prod focal/main amd64 aspnetcore-runtime-3.1 amd64 3.1.32-1 [5.773 kB]
Get:6 https://packages.microsoft.com/ubuntu/20.04/prod focal/main amd64 dotnet-targeting-pack-3.1 amd64 3.1.0-1 [1.988 kB]
Get:7 https://packages.microsoft.com/ubuntu/20.04/prod focal/main amd64 aspnetcore-targeting-pack-3.1 amd64 3.1.10-1 [1.063 kB]
Get:8 https://packages.microsoft.com/ubuntu/20.04/prod focal/main amd64 dotnet-apphost-pack-3.1 amd64 3.1.32-1 [42,3 kB]
Get:9 https://packages.microsoft.com/ubuntu/20.04/prod focal/main amd64 netstandard-targeting-pack-2.1 amd64 2.1.0-1 [1.476 kB]
Get:10 https://packages.microsoft.com/ubuntu/20.04/prod focal/main amd64 dotnet-sdk-3.1 amd64 3.1.426-1 [49,8 MB]
Fetched 82,2 MB in 17s (4.789 kB/s)
Selecting previously unselected package dotnet-host.
(Reading database ... 515004 files and directories currently installed.)
Preparing to unpack .../0-dotnet-host_7.0.1-1_amd64.deb ...
Unpacking dotnet-host (7.0.1-1) ...
Selecting previously unselected package dotnet-hostfxr-3.1.
Preparing to unpack .../1-dotnet-hostfxr-3.1_3.1.32-1_amd64.deb ...
Unpacking dotnet-hostfxr-3.1 (3.1.32-1) ...
Selecting previously unselected package dotnet-runtime-deps-3.1.
Preparing to unpack .../2-dotnet-runtime-deps-3.1_3.1.32-1_amd64.deb ...
Unpacking dotnet-runtime-deps-3.1 (3.1.32-1) ...
Selecting previously unselected package dotnet-runtime-3.1.
Preparing to unpack .../3-dotnet-runtime-3.1_3.1.32-1_amd64.deb ...
Unpacking dotnet-runtime-3.1 (3.1.32-1) ...
Selecting previously unselected package aspnetcore-runtime-3.1.
Preparing to unpack .../4-aspnetcore-runtime-3.1_3.1.32-1_amd64.deb ...
Unpacking aspnetcore-runtime-3.1 (3.1.32-1) ...
Selecting previously unselected package dotnet-targeting-pack-3.1.
Preparing to unpack .../5-dotnet-targeting-pack-3.1_3.1.0-1_amd64.deb ...
Unpacking dotnet-targeting-pack-3.1 (3.1.0-1) ...
Selecting previously unselected package aspnetcore-targeting-pack-3.1.
Preparing to unpack .../6-aspnetcore-targeting-pack-3.1_3.1.10-1_amd64.deb ...
Unpacking aspnetcore-targeting-pack-3.1 (3.1.10-1) ...
Selecting previously unselected package dotnet-apphost-pack-3.1.
Preparing to unpack .../7-dotnet-apphost-pack-3.1_3.1.32-1_amd64.deb ...
Unpacking dotnet-apphost-pack-3.1 (3.1.32-1) ...
Selecting previously unselected package netstandard-targeting-pack-2.1.
Preparing to unpack .../8-netstandard-targeting-pack-2.1_2.1.0-1_amd64.deb ...
Unpacking netstandard-targeting-pack-2.1 (2.1.0-1) ...
Selecting previously unselected package dotnet-sdk-3.1.
Preparing to unpack .../9-dotnet-sdk-3.1_3.1.426-1_amd64.deb ...
Unpacking dotnet-sdk-3.1 (3.1.426-1) ...
Setting up dotnet-host (7.0.1-1) ...
Setting up dotnet-apphost-pack-3.1 (3.1.32-1) ...
Setting up netstandard-targeting-pack-2.1 (2.1.0-1) ...
Setting up dotnet-targeting-pack-3.1 (3.1.0-1) ...
Setting up aspnetcore-targeting-pack-3.1 (3.1.10-1) ...
Setting up dotnet-runtime-deps-3.1 (3.1.32-1) ...
Setting up dotnet-hostfxr-3.1 (3.1.32-1) ...
Setting up dotnet-runtime-3.1 (3.1.32-1) ...
Setting up aspnetcore-runtime-3.1 (3.1.32-1) ...
Setting up dotnet-sdk-3.1 (3.1.426-1) ...
This software may collect information about you and your use of the software, and send that to
Microsoft.
Please visit http://aka.ms/dotnet-cli-eula for more information.
Welcome to .NET Core!
---------------------
Learn more about .NET Core: https://aka.ms/dotnet-docs
Use 'dotnet --help' to see available commands or visit: https://aka.ms/dotnet-cli-docs
Telemetry
---------
The .NET Core tools collect usage data in order to help us improve your experience. It is colle
cted by Microsoft and shared with the community. You can opt-out of telemetry by setting the DO
TNET_CLI_TELEMETRY_OPTOUT environment variable to '1' or 'true' using your favorite shell.
Read more about .NET Core CLI Tools telemetry: https://aka.ms/dotnet-cli-telemetry
Configuring...
--------------
A command is running to populate your local package cache to improve restore speed and enable o
ffline access. This command takes up to one minute to complete and only runs once.
Processing triggers for man-db (2.9.1-1) ...
alan@dev:/tmp$ dotnet --version
3.1.426
Source: https://tecadmin.net/how-to-install-net-core-on-ubuntu-20-04/
Update: to install .NET 7 you need to follow these steps: https://learn.microsoft.com/en-us/dotnet/core/install/linux-ubuntu#2204-microsoft-package-feed
Flashing Meadow in the F7 MicroV2.0 board
First you need to press and hold the BOOT button and plug the USB cable.
Run dmesg to confirm it was detected:
[36899.173341] usb 3-3: new full-speed USB device number 10 using xhci_hcd
[36899.330385] usb 3-3: New USB device found, idVendor=0483, idProduct=df11, bcdDevice=22.00
[36899.330387] usb 3-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[36899.330388] usb 3-3: Product: STM32 BOOTLOADER
[36899.330389] usb 3-3: Manufacturer: STMicroelectronics
[36899.330390] usb 3-3: SerialNumber: xx5431xxxxxx
Now just run the dfu-util command:
$ sudo dfu-util -a 0 -D Meadow.OS.bin -s 0x08000000
Place your finger on the fingerprint reader
dfu-util 0.9
Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2016 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to http://sourceforge.net/p/dfu-util/tickets/
dfu-util: Invalid DFU suffix signature
dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
Opening DFU capable USB device...
ID 0483:df11
Run-time device DFU version 011a
Claiming USB DFU Interface...
Setting Alternate Setting #0 ...
Determining device status: state = dfuERROR, status = 10
dfuERROR, clearing status
Determining device status: state = dfuIDLE, status = 0
dfuIDLE, continuing
DFU mode device DFU version 011a
Device returned transfer size 2048
DfuSe interface name: "Internal Flash "
Downloading to address = 0x08000000, size = 2097152
Download [=========================] 100% 2097152 bytes
Download done.
File downloaded successfully
Reset the board and install the Runtime:
$ /home/alan/.dotnet/tools/meadow mono update rt -f Meadow.OS.Runtime.bin && meadow file delete -f Meadow.OS.Runtime.bin
Connecting to Meadow on /dev/ttyACM0
Starting Mono Runtime Update
Meadow StdInfo: Mono is enabled
Meadow StdInfo: Mono has been disabled - restarting Meadow
Connecting to Meadow on /dev/ttyACM0
Connecting to Meadow on /dev/ttyACM1
Meadow StdInfo: Mono is disabled
Connecting to Meadow on /dev/ttyACM1
Meadow StdInfo: Mono is disabled
Updating Mono Runtime
Starting File Transfer...
Meadow StdInfo: File 10% downloaded
Meadow StdInfo: File 20% downloaded
Meadow StdInfo: File 30% downloaded
Meadow StdInfo: File 40% downloaded
Meadow StdInfo: File 50% downloaded
Meadow StdInfo: File 60% downloaded
Meadow StdInfo: File 70% downloaded
Meadow StdInfo: File 80% downloaded
Meadow StdInfo: File 90% downloaded
Meadow StdInfo: Download of 'Meadow.OS.Runtime.bin' success (checksums calculated:0x0EEFAD3C, expected:0x0EEFAD3C)
Meadow StdInfo: Erasing mono flash memory
Meadow StdInfo: Mono memory erase success
Meadow StdInfo: Flashing 10% complete
Meadow StdInfo: Flashing 20% complete
Meadow StdInfo: Flashing 30% complete
Meadow StdInfo: Flashing 40% complete
Meadow StdInfo: Flashing 50% complete
Meadow StdInfo: Flashing 60% complete
Meadow StdInfo: Flashing 70% complete
Meadow StdInfo: Flashing 80% complete
Meadow StdInfo: Flashing 90% complete
Meadow StdInfo: Verifying runtime flash operation.
Meadow StdInfo: Verifying 10% complete
Meadow StdInfo: Verifying 20% complete
Meadow StdInfo: Verifying 30% complete
Meadow StdInfo: Verifying 40% complete
Meadow StdInfo: Verifying 50% complete
Meadow StdInfo: Verifying 60% complete
Meadow StdInfo: Verifying 70% complete
Meadow StdInfo: Verifying 80% complete
Meadow StdInfo: Verifying 90% complete
Meadow StdInfo: Mono runtime successfully flashed.
Transfer Complete, wrote 3145728 bytes to Meadow
Connecting to Meadow on /dev/ttyACM1
Connecting to Meadow on /dev/ttyACM0
Mono Flashed Successfully
Done!
meadow: command not found
Confirm everything is fine:
$ /home/alan/.dotnet/tools/meadow device info
Connecting to Meadow on /dev/ttyACM0
Meadow by Wilderness Labs
Board Information
Model: F7Micro
Hardware version: F7FeatherV2
Device name: MeadowF7
Hardware Information
Processor type: STM32F777IIK6
ID: 23-00-1C-00-07-51-38-34-35-31-38-33
Serial number: 335431623438
Coprocessor type: ESP32
Firmware Versions
OS: 0.9.5.7
Mono: 0.9.5.7
Coprocessor: Not available
Done!