Meadow OS Flash Failure

So I set my Micro F7 aside for the last year letting development catch up with what I wanted to do with it. With the recent release of beta 5.1 I thought I would pull it out and play around with it a little.

I have spent the good portion of the evening updating windows, using Zadig, going into boot mode, out of boot mode… Dumping the old code I had and creating a fresh Hello World.

At this point I am able to get the CLI to recognize the F7 in boot mode, but it doesn’t look like the OS flash is working (logs below.)

Device in DFU Mode, flashing OS
Flashing OS with C:\Users\Trey\AppData\Local\WildernessLabs\Firmware\Meadow.OS.bin
dfu-util update required. To install, run in administrator mode: meadow --InstallDfuUtil
dfu-util 0.8

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2014 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to dfu-util@lists.gnumonks.org

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 done.
File downloaded successfully
Transitioning to dfuMANIFEST state
Invalid DFU suffix signature
Device Flashed.
Connecting to Meadow on COM3
Meadow StdInfo: MONO won't start, the following file(s) missing: mscorlib.dll, System.Core.dll, System.dll, Meadow.dll, App.exe
Meadow StdInfo: Mono enabled, will run app.exe
Unhandled exception. System.ArgumentNullException: Value cannot be null.
   at System.Threading.Monitor.ReliableEnter(Object obj, Boolean& lockTaken)
   at Meadow.CLI.Core.Devices.MeadowSerialDevice.Dispose(Boolean disposing) in D:\a\1\s\Meadow.CLI.Core\Devices\MeadowSerialDevice.cs:line 41
   at Meadow.CLI.Core.Devices.MeadowLocalDevice.Finalize() in D:\a\1\s\Meadow.CLI.Core\Devices\MeadowLocalDevice.cs:line 387

It is giving me a warning about dfu-util being out of date. BUT… the recommended command doesn’t appear to be correct.

I instead ran the meadow install dfu-util command with the following results

C:\>meadow install dfu-util
Installing dfu-util...
Unexpected error
System.IO.IOException: The process cannot access the file 'C:\Users\Trey\AppData\Local\WildernessLabs\temp\dfu-util-0.10-binaries.zip' because it is being used by another process.
   at System.IO.FileStream.ValidateFileHandle(SafeFileHandle fileHandle)
   at System.IO.FileStream.CreateFileOpenHandle(FileMode mode, FileShare share, FileOptions options)
   at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options)
   at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, Boolean useAsync)
   at System.IO.Compression.ZipFile.Open(String archiveFileName, ZipArchiveMode mode, Encoding entryNameEncoding)
   at System.IO.Compression.ZipFile.ExtractToDirectory(String sourceArchiveFileName, String destinationDirectoryName, Encoding entryNameEncoding, Boolean overwriteFiles)
   at System.IO.Compression.ZipFile.ExtractToDirectory(String sourceArchiveFileName, String destinationDirectoryName)
   at Meadow.CLI.Core.DownloadManager.InstallDfuUtilAsync(Boolean is64Bit, CancellationToken cancellationToken) in D:\a\1\s\Meadow.CLI.Core\DownloadManager.cs:line 112
Done!

If I open the HelloWorld app in VS, have the Meadow extention installed, and deploy the project, I do get the following output.

Build started...
1>------ Deploy started: Project: MeadowApplication2, Configuration: Debug Any CPU ------
1>[7/7/2021 1:19:07 AM] Connecting to Meadow on COM3
1>[7/7/2021 1:19:07 AM] Meadow StdInfo: MONO won't start, the following file(s) missing: mscorlib.dll, System.Core.dll, System.dll, Meadow.dll, App.exe
1>[7/7/2021 1:19:07 AM] Meadow StdInfo: Mono enabled, will run app.exe
1>[7/7/2021 1:20:07 AM] Failed to connect to Meadow on COM3
1>Device not ready after 00:01:00s
========== Build: 0 succeeded, 0 failed, 1 up-to-date, 0 skipped ==========
========== Deploy: 0 succeeded, 1 failed, 0 skipped ==========

Hoping this might look familiar to someone.

It is giving me a warning about dfu-util being out of date. BUT… the recommended command doesn’t appear to be correct.

So the first thing I would attempt here is to perform a manual update to dfu-util. You can get the package from Sourceforge. I have let the development team know about this problem.

From the output from the board it looks like you do not have the latest OS on the board so I would follow the deployment instructions.

You can check if the deployment has worked by executing meadow device info. You should see the following message:

Meadow by Wilderness Labs, Model: F7Micro, MeadowOS Version: 0.5.1.0 (Jul  6 2021 18:04:11), Processor: STM32F777IIK6, Processor Id: 40-00-2e-00-0e-51-38-32-37-35-36-30, Serial Number: 306435813238, CoProcessor: ESP32, CoProcessor OS Version: 0.5.1.0, Mono Version: 0.5.1.0, Device Name: MeadowF7

somewhere in the output.

Once this has completed successfully you will need to redeploy your application.

Hope this helps,
Mark

Thanks for the response. No luck yet.

I was able to find where dfu-util is located on my machine and update it with the correct version. That error has gone away. But I am still not getting the Meadow to update.

C:\>meadow flash os
Having trouble putting Meadow in DFU Mode, please press RST button on Meadow and press enter to try again
+Device in DFU Mode, flashing OS
Flashing OS with C:\Users\Trey\AppData\Local\WildernessLabs\Firmware\Meadow.OS.bin
dfu-util 0.10

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2020 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/

Match vendor ID from file: 0000
Match product ID from file: 0000
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 element to address = 0x08000000, size = 2097152

Erase    done.

Download done.
File downloaded successfully
Transitioning to dfuMANIFEST state
Warning: Invalid DFU suffix signature
Device Flashed.
Connecting to Meadow on COM3
An error occurred while attempting to create Meadow
System.IO.FileNotFoundException: Could not find file 'COM3'.
File name: 'COM3'
   at System.IO.Ports.SerialStream..ctor(String portName, Int32 baudRate, Parity parity, Int32 dataBits, StopBits stopBits, Int32 readTimeout, Int32 writeTimeout, Handshake handshake, Boolean dtrEnable, Boolean rtsEnable, Boolean discardNull, Byte parityReplace)
   at System.IO.Ports.SerialPort.Open()
   at Meadow.CLI.Core.Devices.MeadowSerialDevice.OpenSerialPort(String portName) in D:\a\1\s\Meadow.CLI.Core\Devices\MeadowSerialDevice.cs:line 127
   at Meadow.CLI.Core.Devices.MeadowSerialDevice..ctor(String serialPortName, ILogger logger) in D:\a\1\s\Meadow.CLI.Core\Devices\MeadowSerialDevice.cs:line 21
   at Meadow.CLI.Core.DeviceManagement.MeadowDeviceManager.<>c__DisplayClass4_0.<GetMeadowForSerialPort>b__0() in D:\a\1\s\Meadow.CLI.Core\DeviceManagement\MeadowDeviceManager.cs:line 38
   at System.Threading.Tasks.Task`1.InnerInvoke()
   at System.Threading.Tasks.Task.<>c.<.cctor>b__277_0(Object obj)
   at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
   at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
--- End of stack trace from previous location ---
   at Meadow.CLI.Core.DeviceManagement.MeadowDeviceManager.GetMeadowForSerialPort(String serialPort, Boolean verbose, ILogger logger) in D:\a\1\s\Meadow.CLI.Core\DeviceManagement\MeadowDeviceManager.cs:line 47
Connecting to Meadow on COM3
Meadow StdInfo: MONO won't start, the following file(s) missing: mscorlib.dll, System.Core.dll, System.dll, Meadow.dll, App.exe
Meadow StdInfo: Mono enabled, will run app.exe
Unhandled exception. Failed to connect to Meadow on System.ArgumentNullException: Value cannot be null.
   at System.Threading.Monitor.ReliableEnter(Object obj, Boolean& lockTaken)
   at Meadow.CLI.Core.Devices.MeadowSerialDevice.Dispose(Boolean disposing) in D:\a\1\s\Meadow.CLI.Core\Devices\MeadowSerialDevice.cs:line 41
   at Meadow.CLI.Core.Devices.MeadowLocalDevice.Finalize() in D:\a\1\s\Meadow.CLI.Core\Devices\MeadowLocalDevice.cs:line 387
COM3
System.Exception: Device not ready after 00:01:00s
   at Meadow.CLI.Core.Devices.MeadowSerialDevice.InitializeAsync(CancellationToken cancellationToken) in D:\a\1\s\Meadow.CLI.Core\Devices\MeadowSerialDevice.cs:line 105
   at Meadow.CLI.Core.DeviceManagement.MeadowDeviceManager.GetMeadowForSerialPort(String serialPort, Boolean verbose, ILogger logger) in D:\a\1\s\Meadow.CLI.Core\DeviceManagement\MeadowDeviceManager.cs:line 57
ERROR
System.Exception: Device not ready after 00:01:00s
  at Meadow.CLI.Core.Devices.MeadowSerialDevice.InitializeAsync(CancellationToken cancellationToken) in D:\a\1\s\Meadow.CLI.Core\Devices\MeadowSerialDevice.cs:105
  at Meadow.CLI.Core.DeviceManagement.MeadowDeviceManager.GetMeadowForSerialPort(String serialPort, Boolean verbose, ILogger logger) in D:\a\1\s\Meadow.CLI.Core\DeviceManagement\MeadowDeviceManager.cs:57
  at Meadow.CLI.Core.DeviceManagement.MeadowDeviceManager.FindMeadowBySerialNumber(String serialNumber, ILogger logger, Int32 maxAttempts, CancellationToken cancellationToken) in D:\a\1\s\Meadow.CLI.Core\DeviceManagement\MeadowDeviceManager.cs:137
  at Meadow.CLI.Commands.DeviceManagement.FlashOsCommand.ExecuteAsync(IConsole console) in D:\a\1\s\Meadow.CLI\Commands\DeviceManagement\FlashOsCommand.cs:59
  at CliFx.CliApplication.RunAsync(ApplicationSchema applicationSchema, CommandInput commandInput) in \home\runner\work\CliFx\CliFx\CliFx\CliApplication.cs:147
  at CliFx.CliApplication.RunAsync(IReadOnlyList`1 commandLineArguments, IReadOnlyDictionary`2 environmentVariables) in \home\runner\work\CliFx\CliFx\CliFx\CliApplication.cs:191
Done!

Also the meadow device info isn’t working for me and is returning an exception it cannot find COM3. But, I can do a meadow flash os immediately after this (without unplugging or anything) and it will find it on COM3 to update (and still fail.)

C:\>meadow device info
Connecting to Meadow on 3
An error occurred while attempting to create Meadow
System.ArgumentException: The given port name (3) does not resolve to a valid serial port. (Parameter 'portName')
   at System.IO.Ports.SerialStream..ctor(String portName, Int32 baudRate, Parity parity, Int32 dataBits, StopBits stopBits, Int32 readTimeout, Int32 writeTimeout, Handshake handshake, Boolean dtrEnable, Boolean rtsEnable, Boolean discardNull, Byte parityReplace)
   at System.IO.Ports.SerialPort.Open()
   at Meadow.CLI.Core.Devices.MeadowSerialDevice.OpenSerialPort(String portName) in D:\a\1\s\Meadow.CLI.Core\Devices\MeadowSerialDevice.cs:line 127
   at Meadow.CLI.Core.Devices.MeadowSerialDevice..ctor(String serialPortName, ILogger logger) in D:\a\1\s\Meadow.CLI.Core\Devices\MeadowSerialDevice.cs:line 21
   at Meadow.CLI.Core.DeviceManagement.MeadowDeviceManager.<>c__DisplayClass4_0.<GetMeadowForSerialPort>b__0() in D:\a\1\s\Meadow.CLI.Core\DeviceManagement\MeadowDeviceManager.cs:line 38
   at System.Threading.Tasks.Task`1.InnerInvoke()
   at System.Threading.Tasks.Task.<>c.<.cctor>b__277_0(Object obj)
   at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
   at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
--- End of stack trace from previous location ---
   at Meadow.CLI.Core.DeviceManagement.MeadowDeviceManager.GetMeadowForSerialPort(String serialPort, Boolean verbose, ILogger logger) in D:\a\1\s\Meadow.CLI.Core\DeviceManagement\MeadowDeviceManager.cs:line 47
Failed to connect to Meadow on 3
System.ArgumentException: The given port name (3) does not resolve to a valid serial port. (Parameter 'portName')
   at System.IO.Ports.SerialStream..ctor(String portName, Int32 baudRate, Parity parity, Int32 dataBits, StopBits stopBits, Int32 readTimeout, Int32 writeTimeout, Handshake handshake, Boolean dtrEnable, Boolean rtsEnable, Boolean discardNull, Byte parityReplace)
   at System.IO.Ports.SerialPort.Open()
   at Meadow.CLI.Core.Devices.MeadowSerialDevice.OpenSerialPort(String portName) in D:\a\1\s\Meadow.CLI.Core\Devices\MeadowSerialDevice.cs:line 127
   at Meadow.CLI.Core.Devices.MeadowSerialDevice..ctor(String serialPortName, ILogger logger) in D:\a\1\s\Meadow.CLI.Core\Devices\MeadowSerialDevice.cs:line 21
   at Meadow.CLI.Core.DeviceManagement.MeadowDeviceManager.<>c__DisplayClass4_0.<GetMeadowForSerialPort>b__0() in D:\a\1\s\Meadow.CLI.Core\DeviceManagement\MeadowDeviceManager.cs:line 38
   at System.Threading.Tasks.Task`1.InnerInvoke()
   at System.Threading.Tasks.Task.<>c.<.cctor>b__277_0(Object obj)
   at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
   at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
--- End of stack trace from previous location ---
   at Meadow.CLI.Core.DeviceManagement.MeadowDeviceManager.GetMeadowForSerialPort(String serialPort, Boolean verbose, ILogger logger) in D:\a\1\s\Meadow.CLI.Core\DeviceManagement\MeadowDeviceManager.cs:line 47
ERROR
System.ArgumentException: The given port name (3) does not resolve to a valid serial port. (Parameter 'portName')
  at System.IO.Ports.SerialStream..ctor(String portName, Int32 baudRate, Parity parity, Int32 dataBits, StopBits stopBits, Int32 readTimeout, Int32 writeTimeout, Handshake handshake, Boolean dtrEnable, Boolean rtsEnable, Boolean discardNull, Byte parityReplace)
  at System.IO.Ports.SerialPort.Open()
  at Meadow.CLI.Core.Devices.MeadowSerialDevice.OpenSerialPort(String portName) in D:\a\1\s\Meadow.CLI.Core\Devices\MeadowSerialDevice.cs:127
  at Meadow.CLI.Core.Devices.MeadowSerialDevice..ctor(String serialPortName, ILogger logger) in D:\a\1\s\Meadow.CLI.Core\Devices\MeadowSerialDevice.cs:21
  at Meadow.CLI.Core.DeviceManagement.MeadowDeviceManager.<>c__DisplayClass4_0.<GetMeadowForSerialPort>b__0() in D:\a\1\s\Meadow.CLI.Core\DeviceManagement\MeadowDeviceManager.cs:38
  at System.Threading.Tasks.Task`1.InnerInvoke()
  at System.Threading.Tasks.Task.<>c.<.cctor>b__277_0(Object obj)
  at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
  at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
  at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
  at Meadow.CLI.Core.DeviceManagement.MeadowDeviceManager.GetMeadowForSerialPort(String serialPort, Boolean verbose, ILogger logger) in D:\a\1\s\Meadow.CLI.Core\DeviceManagement\MeadowDeviceManager.cs:47
  at Meadow.CLI.Commands.MeadowSerialCommand.ExecuteAsync(IConsole console) in D:\a\1\s\Meadow.CLI\Commands\MeadowSerialCommand.cs:63
  at Meadow.CLI.Commands.DeviceManagement.GetDeviceInfoCommand.ExecuteAsync(IConsole console) in D:\a\1\s\Meadow.CLI\Commands\DeviceManagement\GetDeviceInfoCommand.cs:23
  at CliFx.CliApplication.RunAsync(ApplicationSchema applicationSchema, CommandInput commandInput) in \home\runner\work\CliFx\CliFx\CliFx\CliApplication.cs:147
  at CliFx.CliApplication.RunAsync(IReadOnlyList`1 commandLineArguments, IReadOnlyDictionary`2 environmentVariables) in \home\runner\work\CliFx\CliFx\CliFx\CliApplication.cs:191
Done!

I think your com port is wrong, it looks like it is set to 3 when it should be COM3.

Try executing meadow device info -s COM3 to reset the port name. Once that is done try running the flash / update commands again.

Regards,
Mark

Sorry, no luck there. I tried both in boot mode and normal runtime mode.

C:\>meadow device info -s COM3
Connecting to Meadow on COM3
An error occurred while attempting to create Meadow
System.IO.FileNotFoundException: Could not find file 'COM3'.
File name: 'COM3'
   at System.IO.Ports.SerialStream..ctor(String portName, Int32 baudRate, Parity parity, Int32 dataBits, StopBits stopBits, Int32 readTimeout, Int32 writeTimeout, Handshake handshake, Boolean dtrEnable, Boolean rtsEnable, Boolean discardNull, Byte parityReplace)
   at System.IO.Ports.SerialPort.Open()
   at Meadow.CLI.Core.Devices.MeadowSerialDevice.OpenSerialPort(String portName) in D:\a\1\s\Meadow.CLI.Core\Devices\MeadowSerialDevice.cs:line 127
   at Meadow.CLI.Core.Devices.MeadowSerialDevice..ctor(String serialPortName, ILogger logger) in D:\a\1\s\Meadow.CLI.Core\Devices\MeadowSerialDevice.cs:line 21
   at Meadow.CLI.Core.DeviceManagement.MeadowDeviceManager.<>c__DisplayClass4_0.<GetMeadowForSerialPort>b__0() in D:\a\1\s\Meadow.CLI.Core\DeviceManagement\MeadowDeviceManager.cs:line 38
   at System.Threading.Tasks.Task`1.InnerInvoke()
   at System.Threading.Tasks.Task.<>c.<.cctor>b__277_0(Object obj)
   at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
   at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
--- End of stack trace from previous location ---
   at Meadow.CLI.Core.DeviceManagement.MeadowDeviceManager.GetMeadowForSerialPort(String serialPort, Boolean verbose, ILogger logger) in D:\a\1\s\Meadow.CLI.Core\DeviceManagement\MeadowDeviceManager.cs:line 47
Failed to open Serial Port. Please ensure you have exclusive access to the serial port and the specified port exists.
Unable to find Meadow.

So… there is hope! On a whim I decided to run meadow download os and I think that changed something. Because now the Meadow is coming up on COM4.

Running the meadow device info -s COM4 came back:

C:\>meadow device info -s COM4
Connecting to Meadow on COM4
Meadow StdInfo: Mono will not start. Version mismatch, Meadow.OS version 0.5.1.0, Mono version 222.192.173.222.
Meadow StdInfo: ESP32 version not available. Meadow.OS version 0.5.1.0, Mono version 222.192.173.222.
Meadow by Wilderness Labs, Model: F7Micro, MeadowOS Version: 0.5.1.0 (Jun 19 2021 01:49:23), Processor: STM32F777IIK6, Processor Id: 38-00-41-00-0d-51-38-32-37-35-36-30, Serial Number: 307735793238, CoProcessor: ESP32, CoProcessor OS Version: Not available, Mono Version: 222.192.173.222, Device Name: MeadowF7
Done!

I am also getting new exceptions and errors when trying to flash the os:

C:\>meadow flash os -s COM4
Device in DFU Mode, flashing OS
Flashing OS with C:\Users\Trey\AppData\Local\WildernessLabs\Firmware\Meadow.OS.bin
dfu-util 0.10

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2020 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/

Match vendor ID from file: 0000
Match product ID from file: 0000
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 element to address = 0x08000000, size = 2097152

Erase    done.

Download done.
File downloaded successfully
Transitioning to dfuMANIFEST state
Warning: Invalid DFU suffix signature
Device Flashed.
Connecting to Meadow on COM3
An error occurred while attempting to create Meadow
System.IO.FileNotFoundException: Could not find file 'COM3'.
File name: 'COM3'
   at System.IO.Ports.SerialStream..ctor(String portName, Int32 baudRate, Parity parity, Int32 dataBits, StopBits stopBits, Int32 readTimeout, Int32 writeTimeout, Handshake handshake, Boolean dtrEnable, Boolean rtsEnable, Boolean discardNull, Byte parityReplace)
   at System.IO.Ports.SerialPort.Open()
   at Meadow.CLI.Core.Devices.MeadowSerialDevice.OpenSerialPort(String portName) in D:\a\1\s\Meadow.CLI.Core\Devices\MeadowSerialDevice.cs:line 127
   at Meadow.CLI.Core.Devices.MeadowSerialDevice..ctor(String serialPortName, ILogger logger) in D:\a\1\s\Meadow.CLI.Core\Devices\MeadowSerialDevice.cs:line 21
   at Meadow.CLI.Core.DeviceManagement.MeadowDeviceManager.<>c__DisplayClass4_0.<GetMeadowForSerialPort>b__0() in D:\a\1\s\Meadow.CLI.Core\DeviceManagement\MeadowDeviceManager.cs:line 38
   at System.Threading.Tasks.Task`1.InnerInvoke()
   at System.Threading.Tasks.Task.<>c.<.cctor>b__277_0(Object obj)
   at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
   at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
--- End of stack trace from previous location ---
   at Meadow.CLI.Core.DeviceManagement.MeadowDeviceManager.GetMeadowForSerialPort(String serialPort, Boolean verbose, ILogger logger) in D:\a\1\s\Meadow.CLI.Core\DeviceManagement\MeadowDeviceManager.cs:line 47
Connecting to Meadow on COM4
An error occurred while attempting to create Meadow
System.IO.FileNotFoundException: Could not find file 'COM4'.
File name: 'COM4'
   at System.IO.Ports.SerialStream..ctor(String portName, Int32 baudRate, Parity parity, Int32 dataBits, StopBits stopBits, Int32 readTimeout, Int32 writeTimeout, Handshake handshake, Boolean dtrEnable, Boolean rtsEnable, Boolean discardNull, Byte parityReplace)
   at System.IO.Ports.SerialPort.Open()
   at Meadow.CLI.Core.Devices.MeadowSerialDevice.OpenSerialPort(String portName) in D:\a\1\s\Meadow.CLI.Core\Devices\MeadowSerialDevice.cs:line 127
   at Meadow.CLI.Core.Devices.MeadowSerialDevice..ctor(String serialPortName, ILogger logger) in D:\a\1\s\Meadow.CLI.Core\Devices\MeadowSerialDevice.cs:line 21
   at Meadow.CLI.Core.DeviceManagement.MeadowDeviceManager.<>c__DisplayClass4_0.<GetMeadowForSerialPort>b__0() in D:\a\1\s\Meadow.CLI.Core\DeviceManagement\MeadowDeviceManager.cs:line 38
   at System.Threading.Tasks.Task`1.InnerInvoke()
   at System.Threading.Tasks.Task.<>c.<.cctor>b__277_0(Object obj)
   at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
   at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
--- End of stack trace from previous location ---
   at Meadow.CLI.Core.DeviceManagement.MeadowDeviceManager.GetMeadowForSerialPort(String serialPort, Boolean verbose, ILogger logger) in D:\a\1\s\Meadow.CLI.Core\DeviceManagement\MeadowDeviceManager.cs:line 47
Connecting to Meadow on COM3
An error occurred while attempting to create Meadow
System.IO.FileNotFoundException: Could not find file 'COM3'.
File name: 'COM3'
   at System.IO.Ports.SerialStream..ctor(String portName, Int32 baudRate, Parity parity, Int32 dataBits, StopBits stopBits, Int32 readTimeout, Int32 writeTimeout, Handshake handshake, Boolean dtrEnable, Boolean rtsEnable, Boolean discardNull, Byte parityReplace)
   at System.IO.Ports.SerialPort.Open()
   at Meadow.CLI.Core.Devices.MeadowSerialDevice.OpenSerialPort(String portName) in D:\a\1\s\Meadow.CLI.Core\Devices\MeadowSerialDevice.cs:line 127
   at Meadow.CLI.Core.Devices.MeadowSerialDevice..ctor(String serialPortName, ILogger logger) in D:\a\1\s\Meadow.CLI.Core\Devices\MeadowSerialDevice.cs:line 21
   at Meadow.CLI.Core.DeviceManagement.MeadowDeviceManager.<>c__DisplayClass4_0.<GetMeadowForSerialPort>b__0() in D:\a\1\s\Meadow.CLI.Core\DeviceManagement\MeadowDeviceManager.cs:line 38
   at System.Threading.Tasks.Task`1.InnerInvoke()
   at System.Threading.Tasks.Task.<>c.<.cctor>b__277_0(Object obj)
   at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
   at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
--- End of stack trace from previous location ---
   at Meadow.CLI.Core.DeviceManagement.MeadowDeviceManager.GetMeadowForSerialPort(String serialPort, Boolean verbose, ILogger logger) in D:\a\1\s\Meadow.CLI.Core\DeviceManagement\MeadowDeviceManager.cs:line 47
Connecting to Meadow on COM4
Meadow StdInfo: Mono will not start. Version mismatch, Meadow.OS version 0.5.1.0, Mono version 222.192.173.222.
Meadow StdInfo: ESP32 version not available. Meadow.OS version 0.5.1.0, Mono version 222.192.173.222.
Meadow StdInfo: Mono is enabled
Meadow StdInfo: Mono has been disabled. Restarting Meadow
Meadow StdInfo: Mono will not start. Version mismatch, Meadow.OS version 0.5.1.0, Mono version 222.192.173.222.
Meadow StdInfo: ESP32 version not available. Meadow.OS version 0.5.1.0, Mono version 222.192.173.222.
Meadow StdInfo: Mono is enabled
Meadow StdInfo: Mono has been disabled. Restarting Meadow
Meadow StdInfo: Mono will not start. Version mismatch, Meadow.OS version 0.5.1.0, Mono version 222.192.173.222.
Meadow StdInfo: ESP32 version not available. Meadow.OS version 0.5.1.0, Mono version 222.192.173.222.
Meadow StdInfo: Mono is disabled
Meadow StdInfo: Mono is disabled
FileName not specified, using latest download.
Starting File Transfer...
Meadow StdInfo: File 10% downloaded
Meadow StdInfo: File 20% downloaded
Meadow StdInfo: File 30% downloaded
Unhandled exception. System.ArgumentNullException: Value cannot be null.
   at System.Threading.Monitor.ReliableEnter(Object obj, Boolean& lockTaken)
   at Meadow.CLI.Core.Devices.MeadowSerialDevice.Dispose(Boolean disposing) in D:\a\1\s\Meadow.CLI.Core\Devices\MeadowSerialDevice.cs:line 41
   at Meadow.CLI.Core.Devices.MeadowLocalDevice.Finalize() in D:\a\1\s\Meadow.CLI.Core\Devices\MeadowLocalDevice.cs:line 387

And it appears that when when I deploy the helloworld code out of VS, it actually flashes the app to the board:

Build started...
1>------ Deploy started: Project: MeadowApplication2, Configuration: Debug Any CPU ------
1>[7/8/2021 7:43:15 PM] Connecting to Meadow on COM4
1>[7/8/2021 7:43:16 PM] Meadow StdInfo: Mono is enabled
1>[7/8/2021 7:43:16 PM] Meadow StdInfo: Mono has been disabled. Restarting Meadow
1>[7/8/2021 7:43:17 PM] Meadow StdInfo: Mono will not start. Version mismatch, Meadow.OS version 0.5.1.0, Mono version 222.192.173.222.
1>[7/8/2021 7:43:17 PM] Meadow StdInfo: ESP32 version not available. Meadow.OS version 0.5.1.0, Mono version 222.192.173.222.
1>[7/8/2021 7:43:18 PM] Meadow StdInfo: Mono is disabled
1>[7/8/2021 7:43:18 PM] Meadow StdInfo: dev/     
1>[7/8/2021 7:43:18 PM] Meadow StdInfo:  little0 [block]
1>[7/8/2021 7:43:18 PM] Meadow StdInfo:  little0p0 [block]
1>[7/8/2021 7:43:18 PM] Meadow StdInfo:  monostderr [char]
1>[7/8/2021 7:43:18 PM] Meadow StdInfo:  monostdout [char]
1>[7/8/2021 7:43:18 PM] Meadow StdInfo:  mtdblock0 [block]
1>[7/8/2021 7:43:18 PM] Meadow StdInfo:  null [char]
1>[7/8/2021 7:43:18 PM] Meadow StdInfo:  nxupd [char]
1>[7/8/2021 7:43:18 PM] Meadow StdInfo:  pwm0 [char]
1>[7/8/2021 7:43:18 PM] Meadow StdInfo:  ramlog [char]
1>[7/8/2021 7:43:18 PM] Meadow StdInfo:  ttyACM0 [char]
1>[7/8/2021 7:43:18 PM] Meadow StdInfo:  ttyS0 [char]
1>[7/8/2021 7:43:18 PM] Meadow StdInfo:  ttyS1 [char]
1>[7/8/2021 7:43:18 PM] Meadow StdInfo:  ttyS2 [char]
1>[7/8/2021 7:43:18 PM] Meadow StdInfo:  upd [char]
1>[7/8/2021 7:43:18 PM] Meadow StdInfo:  urandom [char]
1>[7/8/2021 7:43:18 PM] Meadow StdInfo:  usrsock [char]
1>[7/8/2021 7:43:18 PM] Meadow StdInfo: meadow0/ 
1>[7/8/2021 7:43:18 PM] Meadow StdInfo:  ./      
1>[7/8/2021 7:43:18 PM] Meadow StdInfo:  ../     
1>[7/8/2021 7:43:18 PM] Meadow StdInfo:  Meadow.OS.Runtime.bin [file]
1>[7/8/2021 7:43:18 PM] Meadow StdInfo: var/     
1>[7/8/2021 7:43:18 PM] Meadow StdInfo:  mqueue/ 
1>[7/8/2021 7:43:18 PM] Meadow StdInfo:   Esp32Events [char]
1>[7/8/2021 7:43:18 PM] Meadow StdInfo:   Esp32Requests [char]
1>[7/8/2021 7:43:18 PM] Found Meadow.OS.Runtime.bin (CRC: 0)
1>[7/8/2021 7:43:18 PM] Meadow StdInfo: Meadow successfully deleted 'Meadow.OS.Runtime.bin'
1>[7/8/2021 7:43:18 PM] Removing file: Meadow.OS.Runtime.bin
1>[7/8/2021 7:43:18 PM] Writing file: App.deps.json
1>[7/8/2021 7:43:19 PM] Starting File Transfer...
1>[7/8/2021 7:43:19 PM] Meadow StdInfo: File 10% downloaded
1>[7/8/2021 7:43:19 PM] Meadow StdInfo: File 20% downloaded
1>[7/8/2021 7:43:19 PM] Meadow StdInfo: File 30% downloaded...
1>[7/8/2021 7:43:19 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:43:19 PM] Meadow StdInfo: Download of 'App.deps.json' success (checksums calc:0xB2FFF8A3, expected:0xB2FFF8A3)
1>[7/8/2021 7:43:19 PM] Transfer Complete, wrote 43477 bytes to Meadow
1>[7/8/2021 7:43:19 PM] Wrote file: App.deps.json
1>[7/8/2021 7:43:19 PM] Writing file: App.exe    
1>[7/8/2021 7:43:20 PM] Starting File Transfer...
1>[7/8/2021 7:43:20 PM] Meadow StdInfo: File 16% downloaded
1>[7/8/2021 7:43:20 PM] Meadow StdInfo: File 25% downloaded...
1>[7/8/2021 7:43:20 PM] Meadow StdInfo: File 91% downloaded
1>[7/8/2021 7:43:20 PM] Meadow StdInfo: Download of 'App.exe' success (checksums calc:0xA5852D2F, expected:0xA5852D2F)
1>[7/8/2021 7:43:20 PM] Transfer Complete, wrote 6144 bytes to Meadow
1>[7/8/2021 7:43:20 PM] Wrote file: App.exe      
1>[7/8/2021 7:43:20 PM] Writing file: App.pdb    
1>[7/8/2021 7:43:20 PM] Starting File Transfer...
1>[7/8/2021 7:43:20 PM] Meadow StdInfo: File 12% downloaded
1>[7/8/2021 7:43:20 PM] Meadow StdInfo: File 22% downloaded...
1>[7/8/2021 7:43:20 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:43:20 PM] Meadow StdInfo: Download of 'App.pdb' success (checksums calc:0x8F79898E, expected:0x8F79898E)
1>[7/8/2021 7:43:20 PM] Transfer Complete, wrote 15892 bytes to Meadow
1>[7/8/2021 7:43:20 PM] Wrote file: App.pdb      
1>[7/8/2021 7:43:20 PM] Writing file: netstandard.dll
1>[7/8/2021 7:43:21 PM] Starting File Transfer...
1>[7/8/2021 7:43:21 PM] Meadow StdInfo: File 10% downloaded
1>[7/8/2021 7:43:21 PM] Meadow StdInfo: File 20% downloaded...
1>[7/8/2021 7:43:22 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:43:22 PM] Meadow StdInfo: Download of 'netstandard.dll' success (checksums calc:0x75D657A9, expected:0x75D657A9)
1>[7/8/2021 7:43:22 PM] Transfer Complete, wrote 90624 bytes to Meadow
1>[7/8/2021 7:43:22 PM] Wrote file: netstandard.dll
1>[7/8/2021 7:43:22 PM] Writing file: mscorlib.dll
1>[7/8/2021 7:43:22 PM] Starting File Transfer...
1>[7/8/2021 7:43:28 PM] Meadow StdInfo: File 10% downloaded
1>[7/8/2021 7:43:34 PM] Meadow StdInfo: File 20% downloaded...
1>[7/8/2021 7:44:15 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:44:22 PM] Meadow StdInfo: Download of 'mscorlib.dll' success (checksums calc:0x2B69516C, expected:0x2B69516C)
1>[7/8/2021 7:44:22 PM] Transfer Complete, wrote 4637696 bytes to Meadow
1>[7/8/2021 7:44:22 PM] Wrote file: mscorlib.dll 
1>[7/8/2021 7:44:22 PM] Writing file: System.Core.dll
1>[7/8/2021 7:44:22 PM] Starting File Transfer...
1>[7/8/2021 7:44:23 PM] Meadow StdInfo: File 10% downloaded
1>[7/8/2021 7:44:25 PM] Meadow StdInfo: File 20% downloaded...
1>[7/8/2021 7:44:34 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:44:36 PM] Meadow StdInfo: Download of 'System.Core.dll' success (checksums calc:0xDB18D7DA, expected:0xDB18D7DA)
1>[7/8/2021 7:44:36 PM] Transfer Complete, wrote 1086976 bytes to Meadow
1>[7/8/2021 7:44:36 PM] Wrote file: System.Core.dll
1>[7/8/2021 7:44:36 PM] Writing file: System.dll 
1>[7/8/2021 7:44:36 PM] Starting File Transfer...
1>[7/8/2021 7:44:40 PM] Meadow StdInfo: File 10% downloaded
1>[7/8/2021 7:44:43 PM] Meadow StdInfo: File 20% downloaded...
1>[7/8/2021 7:45:06 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:45:10 PM] Meadow StdInfo: Download of 'System.dll' success (checksums calc:0xB0B3E6EA, expected:0xB0B3E6EA)
1>[7/8/2021 7:45:10 PM] Transfer Complete, wrote 2618368 bytes to Meadow
1>[7/8/2021 7:45:10 PM] Wrote file: System.dll   
1>[7/8/2021 7:45:10 PM] Writing file: Mono.Security.dll
1>[7/8/2021 7:45:10 PM] Starting File Transfer...
1>[7/8/2021 7:45:11 PM] Meadow StdInfo: File 10% downloaded
1>[7/8/2021 7:45:11 PM] Meadow StdInfo: File 20% downloaded...
1>[7/8/2021 7:45:13 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:45:14 PM] Meadow StdInfo: Download of 'Mono.Security.dll' success (checksums calc:0xC57A9CAF, expected:0xC57A9CAF)
1>[7/8/2021 7:45:14 PM] Transfer Complete, wrote 240128 bytes to Meadow
1>[7/8/2021 7:45:14 PM] Wrote file: Mono.Security.dll
1>[7/8/2021 7:45:14 PM] Writing file: System.Configuration.dll
1>[7/8/2021 7:45:14 PM] Starting File Transfer...
1>[7/8/2021 7:45:14 PM] Meadow StdInfo: File 10% downloaded
1>[7/8/2021 7:45:14 PM] Meadow StdInfo: File 20% downloaded...
1>[7/8/2021 7:45:15 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:45:15 PM] Meadow StdInfo: Download of 'System.Configuration.dll' success (checksums calc:0xE52E0D50, expected:0xE52E0D50)
1>[7/8/2021 7:45:15 PM] Transfer Complete, wrote 122880 bytes to Meadow
1>[7/8/2021 7:45:15 PM] Wrote file: System.Configuration.dll
1>[7/8/2021 7:45:15 PM] Writing file: System.Xml.dll
1>[7/8/2021 7:45:16 PM] Starting File Transfer...
1>[7/8/2021 7:45:20 PM] Meadow StdInfo: File 10% downloaded
1>[7/8/2021 7:45:24 PM] Meadow StdInfo: File 20% downloaded...
1>[7/8/2021 7:45:52 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:45:57 PM] Meadow StdInfo: Download of 'System.Xml.dll' success (checksums calc:0x4B7959F2, expected:0x4B7959F2)
1>[7/8/2021 7:45:57 PM] Transfer Complete, wrote 3174400 bytes to Meadow
1>[7/8/2021 7:45:57 PM] Wrote file: System.Xml.dll
1>[7/8/2021 7:45:57 PM] Writing file: System.Security.dll
1>[7/8/2021 7:45:57 PM] Starting File Transfer...
1>[7/8/2021 7:45:57 PM] Meadow StdInfo: File 10% downloaded
1>[7/8/2021 7:45:58 PM] Meadow StdInfo: File 20% downloaded
1>[7/8/2021 7:45:58 PM] Meadow StdInfo: File 30% downloaded...
1>[7/8/2021 7:46:01 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:46:01 PM] Meadow StdInfo: Download of 'System.Security.dll' success (checksums calc:0xAE1BC1DE, expected:0xAE1BC1DE)
1>[7/8/2021 7:46:01 PM] Transfer Complete, wrote 308224 bytes to Meadow
1>[7/8/2021 7:46:01 PM] Wrote file: System.Security.dll
1>[7/8/2021 7:46:01 PM] Writing file: System.Numerics.dll
1>[7/8/2021 7:46:01 PM] Starting File Transfer...
1>[7/8/2021 7:46:02 PM] Meadow StdInfo: File 10% downloaded
1>[7/8/2021 7:46:02 PM] Meadow StdInfo: File 20% downloaded
1>[7/8/2021 7:46:02 PM] Meadow StdInfo: File 30% downloaded...
1>[7/8/2021 7:46:03 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:46:03 PM] Meadow StdInfo: Download of 'System.Numerics.dll' success (checksums calc:0xD25B5CDB, expected:0xD25B5CDB)
1>[7/8/2021 7:46:03 PM] Transfer Complete, wrote 119808 bytes to Meadow
1>[7/8/2021 7:46:03 PM] Wrote file: System.Numerics.dll
1>[7/8/2021 7:46:03 PM] Writing file: System.Data.dll
1>[7/8/2021 7:46:03 PM] Starting File Transfer...
1>[7/8/2021 7:46:06 PM] Meadow StdInfo: File 10% downloaded
1>[7/8/2021 7:46:09 PM] Meadow StdInfo: File 20% downloaded...
1>[7/8/2021 7:46:27 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:46:30 PM] Meadow StdInfo: Download of 'System.Data.dll' success (checksums calc:0x0A5B3DB4, expected:0x0A5B3DB4)
1>[7/8/2021 7:46:30 PM] Transfer Complete, wrote 2102784 bytes to Meadow
1>[7/8/2021 7:46:30 PM] Wrote file: System.Data.dll
1>[7/8/2021 7:46:30 PM] Writing file: System.Transactions.dll
1>[7/8/2021 7:46:31 PM] Starting File Transfer...
1>[7/8/2021 7:46:31 PM] Meadow StdInfo: File 10% downloaded
1>[7/8/2021 7:46:31 PM] Meadow StdInfo: File 20% downloaded...
1>[7/8/2021 7:46:31 PM] Meadow StdInfo: File 91% downloaded
1>[7/8/2021 7:46:31 PM] Meadow StdInfo: Download of 'System.Transactions.dll' success (checksums calc:0x54609305, expected:0x54609305)
1>[7/8/2021 7:46:31 PM] Transfer Complete, wrote 34304 bytes to Meadow
1>[7/8/2021 7:46:31 PM] Wrote file: System.Transactions.dll
1>[7/8/2021 7:46:31 PM] Writing file: System.EnterpriseServices.dll
1>[7/8/2021 7:46:31 PM] Starting File Transfer...
1>[7/8/2021 7:46:32 PM] Meadow StdInfo: File 10% downloaded...
1>[7/8/2021 7:46:32 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:46:32 PM] Meadow StdInfo: Download of 'System.EnterpriseServices.dll' success (checksums calc:0x7E64B212, expected:0x7E64B212)
1>[7/8/2021 7:46:32 PM] Transfer Complete, wrote 46592 bytes to Meadow
1>[7/8/2021 7:46:32 PM] Wrote file: System.EnterpriseServices.dll
1>[7/8/2021 7:46:32 PM] Writing file: System.Data.DataSetExtensions.dll
1>[7/8/2021 7:46:32 PM] Starting File Transfer...
1>[7/8/2021 7:46:32 PM] Meadow StdInfo: File 10% downloaded
1>[7/8/2021 7:46:32 PM] Meadow StdInfo: File 20% downloaded...
1>[7/8/2021 7:46:33 PM] Meadow StdInfo: File 81% downloaded
1>[7/8/2021 7:46:33 PM] Meadow StdInfo: File 91% downloaded
1>[7/8/2021 7:46:33 PM] Meadow StdInfo: Download of 'System.Data.DataSetExtensions.dll' success (checksums calc:0xEE4DF24F, expected:0xEE4DF24F)
1>[7/8/2021 7:46:33 PM] Transfer Complete, wrote 29696 bytes to Meadow
1>[7/8/2021 7:46:33 PM] Wrote file: System.Data.DataSetExtensions.dll
1>[7/8/2021 7:46:33 PM] Writing file: System.Drawing.dll
1>[7/8/2021 7:46:33 PM] Starting File Transfer...
1>[7/8/2021 7:46:34 PM] Meadow StdInfo: File 10% downloaded
1>[7/8/2021 7:46:34 PM] Meadow StdInfo: File 20% downloaded...
1>[7/8/2021 7:46:38 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:46:39 PM] Meadow StdInfo: Download of 'System.Drawing.dll' success (checksums calc:0xB87DF7BB, expected:0xB87DF7BB)
1>[7/8/2021 7:46:39 PM] Transfer Complete, wrote 491008 bytes to Meadow
1>[7/8/2021 7:46:39 PM] Wrote file: System.Drawing.dll
1>[7/8/2021 7:46:39 PM] Writing file: System.IO.Compression.dll
1>[7/8/2021 7:46:39 PM] Starting File Transfer...
1>[7/8/2021 7:46:39 PM] Meadow StdInfo: File 10% downloaded
1>[7/8/2021 7:46:40 PM] Meadow StdInfo: File 20% downloaded...
1>[7/8/2021 7:46:40 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:46:41 PM] Meadow StdInfo: Download of 'System.IO.Compression.dll' success (checksums calc:0x912FFB05, expected:0x912FFB05)
1>[7/8/2021 7:46:41 PM] Transfer Complete, wrote 115200 bytes to Meadow
1>[7/8/2021 7:46:41 PM] Wrote file: System.IO.Compression.dll
1>[7/8/2021 7:46:41 PM] Writing file: System.IO.Compression.FileSystem.dll
1>[7/8/2021 7:46:41 PM] Starting File Transfer...
1>[7/8/2021 7:46:41 PM] Meadow StdInfo: File 11% downloaded
1>[7/8/2021 7:46:41 PM] Meadow StdInfo: File 22% downloaded
1>[7/8/2021 7:46:41 PM] Meadow StdInfo: File 30% downloaded...
1>[7/8/2021 7:46:41 PM] Meadow StdInfo: File 91% downloaded
1>[7/8/2021 7:46:41 PM] Meadow StdInfo: Download of 'System.IO.Compression.FileSystem.dll' success (checksums calc:0x8D72531E, expected:0x8D72531E)
1>[7/8/2021 7:46:41 PM] Transfer Complete, wrote 18432 bytes to Meadow
1>[7/8/2021 7:46:41 PM] Wrote file: System.IO.Compression.FileSystem.dll
1>[7/8/2021 7:46:41 PM] Writing file: System.ComponentModel.Composition.dll
1>[7/8/2021 7:46:42 PM] Starting File Transfer...
1>[7/8/2021 7:46:42 PM] Meadow StdInfo: File 10% downloaded...
1>[7/8/2021 7:46:44 PM] Meadow StdInfo: File 80% downloaded
1>[7/8/2021 7:46:44 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:46:45 PM] Meadow StdInfo: Download of 'System.ComponentModel.Composition.dll' success (checksums calc:0x93F75C58, expected:0x93F75C58)
1>[7/8/2021 7:46:45 PM] Transfer Complete, wrote 258560 bytes to Meadow
1>[7/8/2021 7:46:45 PM] Wrote file: System.ComponentModel.Composition.dll
1>[7/8/2021 7:46:45 PM] Writing file: System.Net.Http.dll
1>[7/8/2021 7:46:45 PM] Starting File Transfer...
1>[7/8/2021 7:46:45 PM] Meadow StdInfo: File 10% downloaded
1>[7/8/2021 7:46:46 PM] Meadow StdInfo: File 20% downloaded...
1>[7/8/2021 7:46:48 PM] Meadow StdInfo: File 80% downloaded
1>[7/8/2021 7:46:48 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:46:48 PM] Meadow StdInfo: Download of 'System.Net.Http.dll' success (checksums calc:0x360FE095, expected:0x360FE095)
1>[7/8/2021 7:46:48 PM] Transfer Complete, wrote 281600 bytes to Meadow
1>[7/8/2021 7:46:48 PM] Wrote file: System.Net.Http.dll
1>[7/8/2021 7:46:48 PM] Writing file: System.Runtime.Serialization.dll
1>[7/8/2021 7:46:49 PM] Starting File Transfer...
1>[7/8/2021 7:46:50 PM] Meadow StdInfo: File 10% downloaded
1>[7/8/2021 7:46:51 PM] Meadow StdInfo: File 20% downloaded...
1>[7/8/2021 7:46:59 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:47:00 PM] Meadow StdInfo: Download of 'System.Runtime.Serialization.dll' success (checksums calc:0xE5344E7D, expected:0xE5344E7D)
1>[7/8/2021 7:47:00 PM] Transfer Complete, wrote 938496 bytes to Meadow
1>[7/8/2021 7:47:00 PM] Wrote file: System.Runtime.Serialization.dll
1>[7/8/2021 7:47:00 PM] Writing file: System.ServiceModel.Internals.dll
1>[7/8/2021 7:47:00 PM] Starting File Transfer...
1>[7/8/2021 7:47:00 PM] Meadow StdInfo: File 10% downloaded
1>[7/8/2021 7:47:01 PM] Meadow StdInfo: File 20% downloaded...
1>[7/8/2021 7:47:02 PM] Meadow StdInfo: File 80% downloaded
1>[7/8/2021 7:47:02 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:47:03 PM] Meadow StdInfo: Download of 'System.ServiceModel.Internals.dll' success (checksums calc:0x395B0509, expected:0x395B0509)
1>[7/8/2021 7:47:03 PM] Transfer Complete, wrote 215040 bytes to Meadow
1>[7/8/2021 7:47:03 PM] Wrote file: System.ServiceModel.Internals.dll
1>[7/8/2021 7:47:03 PM] Writing file: System.Web.dll
1>[7/8/2021 7:47:03 PM] Starting File Transfer...
1>[7/8/2021 7:47:07 PM] Meadow StdInfo: File 10% downloaded
1>[7/8/2021 7:47:10 PM] Meadow StdInfo: File 20% downloaded...
1>[7/8/2021 7:47:31 PM] Meadow StdInfo: File 80% downloaded
1>[7/8/2021 7:47:35 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:47:39 PM] Meadow StdInfo: Download of 'System.Web.dll' success (checksums calc:0x38D7F3EE, expected:0x38D7F3EE)
1>[7/8/2021 7:47:39 PM] Transfer Complete, wrote 3028992 bytes to Meadow
1>[7/8/2021 7:47:39 PM] Wrote file: System.Web.dll
1>[7/8/2021 7:47:39 PM] Writing file: System.Runtime.Serialization.Formatters.Soap.dll
1>[7/8/2021 7:47:40 PM] Starting File Transfer...
1>[7/8/2021 7:47:40 PM] Meadow StdInfo: File 10% downloaded
1>[7/8/2021 7:47:40 PM] Meadow StdInfo: File 21% downloaded
1>[7/8/2021 7:47:40 PM] Meadow StdInfo: File 30% downloaded...
1>[7/8/2021 7:47:40 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:47:40 PM] Meadow StdInfo: Download of 'System.Runtime.Serialization.Formatters.Soap.dll' success (checksums calc:0x57BB7836, expected:0x57BB7836)
1>[7/8/2021 7:47:40 PM] Transfer Complete, wrote 38912 bytes to Meadow
1>[7/8/2021 7:47:40 PM] Wrote file: System.Runtime.Serialization.Formatters.Soap.dll
1>[7/8/2021 7:47:40 PM] Writing file: System.ComponentModel.DataAnnotations.dll
1>[7/8/2021 7:47:40 PM] Starting File Transfer...
1>[7/8/2021 7:47:41 PM] Meadow StdInfo: File 10% downloaded
1>[7/8/2021 7:47:41 PM] Meadow StdInfo: File 20% downloaded...
1>[7/8/2021 7:47:41 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:47:41 PM] Meadow StdInfo: Download of 'System.ComponentModel.DataAnnotations.dll' success (checksums calc:0x37946C60, expected:0x37946C60)
1>[7/8/2021 7:47:41 PM] Transfer Complete, wrote 84992 bytes to Meadow
1>[7/8/2021 7:47:41 PM] Wrote file: System.ComponentModel.DataAnnotations.dll
1>[7/8/2021 7:47:41 PM] Writing file: Mono.Data.Sqlite.dll
1>[7/8/2021 7:47:42 PM] Starting File Transfer...
1>[7/8/2021 7:47:42 PM] Meadow StdInfo: File 10% downloaded
1>[7/8/2021 7:47:42 PM] Meadow StdInfo: File 20% downloaded...
1>[7/8/2021 7:47:43 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:47:44 PM] Meadow StdInfo: Download of 'Mono.Data.Sqlite.dll' success (checksums calc:0xC542A426, expected:0xC542A426)
1>[7/8/2021 7:47:44 PM] Transfer Complete, wrote 166912 bytes to Meadow
1>[7/8/2021 7:47:44 PM] Wrote file: Mono.Data.Sqlite.dll
1>[7/8/2021 7:47:44 PM] Writing file: System.Xml.Linq.dll
1>[7/8/2021 7:47:44 PM] Starting File Transfer...
1>[7/8/2021 7:47:44 PM] Meadow StdInfo: File 10% downloaded
1>[7/8/2021 7:47:44 PM] Meadow StdInfo: File 20% downloaded
1>[7/8/2021 7:47:45 PM] Meadow StdInfo: File 30% downloaded...
1>[7/8/2021 7:47:45 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:47:46 PM] Meadow StdInfo: Download of 'System.Xml.Linq.dll' success (checksums calc:0x303AA1E6, expected:0x303AA1E6)
1>[7/8/2021 7:47:46 PM] Transfer Complete, wrote 137728 bytes to Meadow
1>[7/8/2021 7:47:46 PM] Wrote file: System.Xml.Linq.dll
1>[7/8/2021 7:47:46 PM] Writing file: Meadow.dll 
1>[7/8/2021 7:47:46 PM] Starting File Transfer...
1>[7/8/2021 7:47:46 PM] Meadow StdInfo: File 10% downloaded
1>[7/8/2021 7:47:46 PM] Meadow StdInfo: File 20% downloaded...
1>[7/8/2021 7:47:47 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:47:48 PM] Meadow StdInfo: Download of 'Meadow.dll' success (checksums calc:0x1F442AA0, expected:0x1F442AA0)
1>[7/8/2021 7:47:48 PM] Transfer Complete, wrote 119296 bytes to Meadow
1>[7/8/2021 7:47:48 PM] Wrote file: Meadow.dll   
1>[7/8/2021 7:47:48 PM] Writing file: Meadow.Contracts.dll
1>[7/8/2021 7:47:48 PM] Starting File Transfer...
1>[7/8/2021 7:47:48 PM] Meadow StdInfo: File 10% downloaded
1>[7/8/2021 7:47:48 PM] Meadow StdInfo: File 20% downloaded
1>[7/8/2021 7:47:48 PM] Meadow StdInfo: File 30% downloaded
1>[7/8/2021 7:47:48 PM] Meadow StdInfo: File 40% downloaded
1>[7/8/2021 7:47:48 PM] Meadow StdInfo: File 50% downloaded
1>[7/8/2021 7:47:48 PM] Meadow StdInfo: File 60% downloaded
1>[7/8/2021 7:47:48 PM] Meadow StdInfo: File 70% downloaded
1>[7/8/2021 7:47:48 PM] Meadow StdInfo: File 80% downloaded
1>[7/8/2021 7:47:49 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:47:49 PM] Meadow StdInfo: Download of 'Meadow.Contracts.dll' success (checksums calc:0x4E3F3D93, expected:0x4E3F3D93)
1>[7/8/2021 7:47:49 PM] Transfer Complete, wrote 65536 bytes to Meadow
1>[7/8/2021 7:47:49 PM] Wrote file: Meadow.Contracts.dll
1>[7/8/2021 7:47:49 PM] Writing file: Meadow.Units.dll
1>[7/8/2021 7:47:49 PM] Starting File Transfer...
1>[7/8/2021 7:47:49 PM] Meadow StdInfo: File 10% downloaded
1>[7/8/2021 7:47:49 PM] Meadow StdInfo: File 20% downloaded...
1>[7/8/2021 7:47:50 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:47:50 PM] Meadow StdInfo: Download of 'Meadow.Units.dll' success (checksums calc:0xFE4A53D5, expected:0xFE4A53D5)
1>[7/8/2021 7:47:50 PM] Transfer Complete, wrote 78848 bytes to Meadow
1>[7/8/2021 7:47:50 PM] Wrote file: Meadow.Units.dll
1>[7/8/2021 7:47:50 PM] Writing file: Meadow.F7.dll
1>[7/8/2021 7:47:50 PM] Starting File Transfer...
1>[7/8/2021 7:47:50 PM] Meadow StdInfo: File 10% downloaded...
1>[7/8/2021 7:47:52 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:47:52 PM] Meadow StdInfo: Download of 'Meadow.F7.dll' success (checksums calc:0x79A31D4B, expected:0x79A31D4B)
1>[7/8/2021 7:47:52 PM] Transfer Complete, wrote 131072 bytes to Meadow
1>[7/8/2021 7:47:52 PM] Wrote file: Meadow.F7.dll
1>[7/8/2021 7:47:52 PM] Writing file: Meadow.Foundation.dll
1>[7/8/2021 7:47:52 PM] Starting File Transfer...
1>[7/8/2021 7:47:52 PM] Meadow StdInfo: File 10% downloaded
1>[7/8/2021 7:47:53 PM] Meadow StdInfo: File 20% downloaded...
1>[7/8/2021 7:47:53 PM] Meadow StdInfo: File 90% downloaded
1>[7/8/2021 7:47:53 PM] Meadow StdInfo: Download of 'Meadow.Foundation.dll' success (checksums calc:0x7607F219, expected:0x7607F219)
1>[7/8/2021 7:47:53 PM] Transfer Complete, wrote 100864 bytes to Meadow
1>[7/8/2021 7:47:53 PM] Wrote file: Meadow.Foundation.dll
1>[7/8/2021 7:47:53 PM] App.dll deploy complete  
1>[7/8/2021 7:47:53 PM] Meadow StdInfo: Mono is disabled
1>[7/8/2021 7:47:53 PM] Meadow StdInfo: Mono has been enabled. Restarting F7 Micro
1>[7/8/2021 7:47:56 PM] Meadow StdInfo: Mono will not start. Version mismatch, Meadow.OS version 0.5.1.0, Mono version 222.192.173.222.
1>[7/8/2021 7:47:56 PM] Meadow StdInfo: ESP32 version not available. Meadow.OS version 0.5.1.0, Mono version 222.192.173.222.
1>[7/8/2021 7:47:57 PM] Meadow StdInfo: Mono is enabled
========== Build: 0 succeeded, 0 failed, 1 up-to-date, 0 skipped ==========
========== Deploy: 1 succeeded, 0 failed, 0 skipped ==========

But… the app on the Meadow doesn’t appear to be working.

Ok… so working off the warning/error that there was a mono version mismatch:

C:\>meadow mono state
Connecting to Meadow on COM4
Meadow StdInfo: Mono will not start. Version mismatch, Meadow.OS version 0.5.1.0, Mono version 222.192.173.222.
Meadow StdInfo: ESP32 version not available. Meadow.OS version 0.5.1.0, Mono version 222.192.173.222.
Meadow StdInfo: Mono is enabled
Mono Run State: Enabled
Done!

I ran the meadow mono update rt command and it appears to have fixed the mono type mismatch.

C:\>meadow mono update rt
Connecting to Meadow on COM4
Starting Mono Runtime Update
Meadow StdInfo: Mono is enabled
Meadow StdInfo: Mono has been disabled. Restarting Meadow
Meadow StdInfo: Mono will not start. Version mismatch, Meadow.OS version 0.5.1.0, Mono version 222.192.173.222.
Meadow StdInfo: ESP32 version not available. Meadow.OS version 0.5.1.0, Mono version 222.192.173.222.
Meadow StdInfo: Mono is disabled
Meadow StdInfo: Mono is disabled
Updating Mono Runtime
FileName not specified, using latest download.
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 calc:0xF15A4F15, expected:0xF15A4F15)
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: Mono runtime successfully flashed.
Transfer Complete, wrote 2097152 bytes to Meadow
Meadow StdInfo: ESP32 version not available. Meadow.OS version 0.5.1.0, Mono version 0.5.1.0.
Meadow StdInfo: Mono is disabled.
Mono Flashed Successfully
Done!

So now the error message is gone, but it says that mono is disabled.

C:\>meadow mono state
Connecting to Meadow on COM4
Meadow StdInfo: Mono is disabled
Mono Run State: Disabled
Done!

So I enabled mono:

C:\>meadow mono enable
Connecting to Meadow on COM4
Meadow StdInfo: Mono is disabled
Meadow StdInfo: Mono has been enabled. Restarting F7 Micro
Meadow StdInfo: ESP32 version not available. Meadow.OS version 0.5.1.0, Mono version 0.5.1.0.
Meadow StdInfo: Meadow successfully started MONO
Meadow StdInfo: Mono is enabled
Mono Enabled Successfully
Done!

AND I SUCCESSFULLY HAVE THE HELLO WORLD APP RUNNING ON THE MEADOW AND THE ONBOARD LED IS ROTATING THROUGH THE VARIOUS COLORS!!!

The next command you want is meadow flash esp to put the correct firmware on the ESP32. If you do that you should find that meadow device info should return all three versions as 0.5.1.0.

Regards,
Mark