Particle Electron on 2.3.1 - Flash Failure due to CRC

Hi all,

After a good amount of time stored away, I pulled out some old Electrons today to use them for a project I have in mind. After updating from 0.6.X/0.7.X firmware to 2.3.1 using the CLI, I setup Particle Workbench and created a new project to target 2.3.1 Electrons.

After resolving a few missing packages, I finally got to the point where the default program compiled, however, I can't seem to solve this last issue:


Flashing electron 2c002d000d47373336373936
CRC check failed for module /home/PATH_TO_FOLDER/target/2.3.1/electron/TestProject.bin
make[1]: *** [flash-app] Error 1
make: *** [flash-user] Error 2

** * The terminal process "/bin/bash '-c', 'make -f '/home/randall/.particle/toolchains/buildscripts/1.10.1/Makefile' flash-user -s'" terminated with exit code: 2. **
** * Press any key to close the terminal.**

Can anyone provide any guidance on what might be going wrong here? I'm obviously overlooking something.

Thanks so much!

You could try using the cloud compile or cloud flash options to see if those work.

You could try the particle binary inspect target/2.3.1/electron/TestProject.bin on the command line to check the validity of the built binary.

Hi rikkas7, thanks for the reply!

I was able to cloud-compile the binary and then flash from terminal using "particle flash --usb BINARYNAME.bin", however, strangely I can't use the flash button in the IDE. (Note, I don't currently have a functional SIM card with my at the moment to try cloud flashing, but I suspect it would work if the electron could connect to the cloud.)

When I inspect binary on the locally compiled binary I get this message:

 CRC failed (should be 78563412 but is c0562011)
 Compiled for electron
 This is a monolithic firmware number 0 at version 2302

I've also audited the environment and I think I might have found the problem as it appears that the GCC compilers aren't found? Output from "Particle: Audit Environment" below:

To report an issue, visit:

    "username": "MY_USERNAME",
    "workspace": {
        "name": "231-Test-Project",
        "isWorkspace": false,
        "folders": [
                "location": "/home/randall/Documents/Programming/231-Test-Project/231-Test-Project",
                "hasValidPath": true,
                "settings": {
                    "firmwareName": "deviceOS",
                    "firmwareVersion": "2.3.1",
                    "targetDevice": "",
                    "targetPlatform": "electron",
                    "compileButtonAction": "localAppDeviceOS",
                    "flashButtonAction": "localAppDeviceOS",
                    "disableWelcomeScreen": true,
                    "disableDeviceOSOutdatedCheck": true,
                    "disableLocalCompilerDirtyCheck": false,
                    "enableVerboseLocalCompilerLogging": false,
                    "compileDefines": [],
                    "customDeviceOSLocation": "",
                    "maxAllowedToolchains": 4,
                    "enablePre-releaseDeviceOSBuilds": false
                "files": [
    "cli": {
        "binpath": "/home/randall/bin/particle",
        "ok": true,
        "version": "3.24.0"
    "localCompiler": {
        "ok": false,
        "dependencies": [
                "id": "deviceOS@6.1.0",
                "ok": true
                "id": "gcc-arm@10.2.1",
                "ok": false
                "id": "buildtools@1.1.1",
                "ok": true
                "id": "buildscripts@1.15.0",
                "ok": true
                "id": "openocd@0.11.0-particle.4",
                "ok": true
                "id": "deviceOS@2.3.1",
                "ok": true
                "id": "gcc-arm@9.2.1",
                "ok": false
                "id": "buildscripts@1.10.1",
                "ok": true
                "id": "deviceOS@0.7.0",
                "ok": true
                "id": "gcc-arm@5.3.1",
                "ok": false
    "platform": {
        "os": "linux",
        "type": "Linux",
        "release": "5.15.0-112-generic",
        "arch": "x64",
        "path": {
            "key": "PATH",
            "value": "/app/bin:/app/bin:/app/bin:/usr/bin:/home/randall/.var/app/com.visualstudio.code/data/node_modules/bin",
            "entries": [
        "homeDir": "/home/randall",
        "particleDir": "/home/randall/.particle",
        "particleToolchainDir": "/home/randall/.particle/toolchains"
    "env": {
        "ALSA_CONFIG_DIR": "/usr/share/alsa",
        "ALSA_CONFIG_PATH": "/usr/share/alsa/alsa-flatpak.conf",
        "AT_SPI_BUS_ADDRESS": "unix:path=/run/flatpak/at-spi-bus",
        "CHROME_DESKTOP": "code-url-handler.desktop",
        "CINNAMON_VERSION": "6.0.4",
        "DBUS_SESSION_BUS_ADDRESS": "unix:path=/run/flatpak/bus",
        "DBUS_SYSTEM_BUS_ADDRESS": "unix:path=/run/dbus/system_bus_socket",
        "DEFAULTS_PATH": "/usr/share/gconf/cinnamon.default.path",
        "DESKTOP_SESSION": "cinnamon",
        "DISPLAY": ":99.0",
        "DOTNET_BUNDLE_EXTRACT_BASE_DIR": "/home/randall/.cache/dotnet_bundle_extract",
        "FLATPAK_ID": "com.visualstudio.code",
        "FLATPAK_SANDBOX_DIR": "/home/randall/.var/app/com.visualstudio.code/sandbox",
        "GDK_BACKEND": "x11",
        "GDMSESSION": "cinnamon",
        "GDM_LANG": "en_US",
        "GIO_LAUNCHED_DESKTOP_FILE": "/var/lib/flatpak/exports/share/applications/com.visualstudio.code.desktop",
        "GI_TYPELIB_PATH": "/app/lib/girepository-1.0",
        "GJS_DEBUG_OUTPUT": "stderr",
        "GNOME_DESKTOP_SESSION_ID": "this-is-deprecated",
        "GPG_AGENT_INFO": "/run/user/1000/gnupg/S.gpg-agent:0:1",
        "GST_PLUGIN_SYSTEM_PATH": "/app/lib/gstreamer-1.0:/usr/lib/extensions/gstreamer-1.0:/usr/lib/x86_64-linux-gnu/gstreamer-1.0",
        "GTK3_MODULES": "xapp-gtk3-module",
        "GTK_MODULES": "gail:atk-bridge",
        "HOME": "/home/randall",
        "JAVA_HOME": "/usr/lib/jvm/java-8-openjdk-amd64/jre",
        "LANG": "en_US.UTF-8",
        "LANGUAGE": "en_US",
        "LC_ADDRESS": "es_CR.UTF-8",
        "LC_IDENTIFICATION": "es_CR.UTF-8",
        "LC_MEASUREMENT": "es_CR.UTF-8",
        "LC_MONETARY": "es_CR.UTF-8",
        "LC_NAME": "es_CR.UTF-8",
        "LC_NUMERIC": "es_CR.UTF-8",
        "LC_PAPER": "es_CR.UTF-8",
        "LC_TELEPHONE": "es_CR.UTF-8",
        "LD_LIBRARY_PATH": "/app/lib",
        "LOGNAME": "randall",
        "MANDATORY_PATH": "/usr/share/gconf/cinnamon.mandatory.path",
        "NPM_CONFIG_GLOBALCONFIG": "/app/etc/npmrc",
        "PATH": "/app/bin:/app/bin:/app/bin:/usr/bin:/home/randall/.var/app/com.visualstudio.code/data/node_modules/bin",
        "PULSE_CLIENTCONFIG": "/run/flatpak/pulse/config",
        "PULSE_SERVER": "unix:/run/flatpak/pulse/native",
        "PWD": "/home/randall",
        "PYTHONUSERBASE": "/var/data/python",
        "QT_ACCESSIBILITY": "1",
        "QT_QPA_PLATFORMTHEME": "qt5ct",
        "SANDBOX_LD_LIBRARY_PATH": "/app/lib",
        "SBX_CHROME_API_RQ": "1",
        "SESSION_MANAGER": "local/randall-Spin-SP513-52N:@/tmp/.ICE-unix/1111,unix/randall-Spin-SP513-52N:/tmp/.ICE-unix/1111",
        "SHELL": "/bin/sh",
        "SHLVL": "0",
        "SSH_AUTH_SOCK": "/run/flatpak/ssh-auth",
        "USER": "randall",
        "VSCODE_AMD_ENTRYPOINT": "vs/workbench/api/node/extensionHostProcess",
        "VSCODE_CLI": "1",
        "VSCODE_CODE_CACHE_PATH": "/home/randall/.var/app/com.visualstudio.code/config/Code/CachedData/611f9bfce64f25108829dd295f54a6894e87339d",
        "VSCODE_CRASH_REPORTER_PROCESS_TYPE": "extensionHost",
        "VSCODE_CWD": "/home/randall",
        "VSCODE_IPC_HOOK": "/run/user/1000/vscode-04d36755-1.90-main.sock",
        "VSCODE_NLS_CONFIG": "{\"locale\":\"en-us\",\"osLocale\":\"en-us\",\"availableLanguages\":{},\"_languagePackSupport\":true}",
        "VSCODE_PID": "21",
        "XAUTHORITY": "/run/flatpak/Xauthority",
        "XCURSOR_PATH": "/run/host/user-share/icons:/run/host/share/icons",
        "XDG_CACHE_HOME": "/home/randall/.var/app/com.visualstudio.code/cache",
        "XDG_CONFIG_DIRS": "/app/etc/xdg:/etc/xdg",
        "XDG_CONFIG_HOME": "/home/randall/.var/app/com.visualstudio.code/config",
        "XDG_CURRENT_DESKTOP": "X-Cinnamon",
        "XDG_DATA_DIRS": "/app/share:/usr/share:/usr/share/runtime/share:/run/host/user-share:/run/host/share",
        "XDG_DATA_HOME": "/home/randall/.var/app/com.visualstudio.code/data",
        "XDG_GREETER_DATA_DIR": "/var/lib/lightdm-data/randall",
        "XDG_RUNTIME_DIR": "/run/user/1000",
        "XDG_SEAT": "seat0",
        "XDG_SEAT_PATH": "/org/freedesktop/DisplayManager/Seat0",
        "XDG_SESSION_CLASS": "user",
        "XDG_SESSION_DESKTOP": "cinnamon",
        "XDG_SESSION_ID": "c1",
        "XDG_SESSION_PATH": "/org/freedesktop/DisplayManager/Session0",
        "XDG_SESSION_TYPE": "x11",
        "XDG_VTNR": "7",
        "ZYPAK_BIN": "/app/bin",
        "ZYPAK_LIB": "/app/bin/../lib",
        "__EGL_EXTERNAL_PLATFORM_CONFIG_DIRS": "/etc/egl/egl_external_platform.d:/usr/lib/x86_64-linux-gnu/GL/egl/egl_external_platform.d:/usr/share/egl/egl_external_platform.d",
        "container": "flatpak",
        "ELECTRON_RUN_AS_NODE": "1",
        "CommonPropertyBagPath": "/tmp/csdevkit/a9d968eb.json",
        "CommonPropertyBagWithConfigPath": "/tmp/csdevkit/58f88c8680411718976267706.json"
    "versions": {
        "node": "20.9.0",
        "acorn": "8.10.0",
        "ada": "2.6.0",
        "ares": "1.19.1",
        "base64": "0.5.0",
        "brotli": "1.0.9",
        "cjs_module_lexer": "1.2.2",
        "cldr": "43.0",
        "icu": "73.1",
        "llhttp": "8.1.1",
        "modules": "121",
        "napi": "9",
        "nghttp2": "1.57.0",
        "openssl": "1.1.1",
        "simdutf": "3.2.17",
        "tz": "2024a",
        "undici": "5.26.3",
        "unicode": "15.0",
        "uv": "1.46.0",
        "uvwasi": "0.0.18",
        "v8": "",
        "zlib": "",
        "electron": "29.4.0",
        "chrome": "122.0.6261.156",
        "microsoft-build": "9593362"
    "vscode": {
        "appName": "Visual Studio Code",
        "appRoot": "/app/extra/vscode/resources/app",
        "machineId": "f2b85df2f1b5e4d6bba32d1db6743d2c605c6f1bbeb09e2e8f66134558a4e048",
        "sessionId": "a9d968eb-23ee-48bd-8ed8-58f88c8680411718976267706",
        "version": "1.90.1"
    "extensions": [
            "id": "ms-vscode.js-debug",
            "version": "1.90.0"
            "id": "ms-vscode.js-debug-companion",
            "version": "1.1.2"
            "id": "ms-vscode.vscode-js-profile-table",
            "version": "1.0.9"
            "id": "Crestron.crestroncomponents",
            "version": "2.6.1"
            "id": "marus25.cortex-debug",
            "version": "1.12.1"
            "id": "mcu-debug.debug-tracker-vscode",
            "version": "0.0.15"
            "id": "mcu-debug.memory-view",
            "version": "0.0.25"
            "id": "mcu-debug.peripheral-viewer",
            "version": "1.4.6"
            "id": "mcu-debug.rtos-views",
            "version": "0.0.7"
            "id": "ms-dotnettools.csdevkit",
            "version": "1.7.27"
            "id": "ms-dotnettools.csharp",
            "version": "2.34.12"
            "id": "ms-dotnettools.vscode-dotnet-runtime",
            "version": "2.0.6"
            "id": "ms-vscode.cmake-tools",
            "version": "1.18.42"
            "id": "ms-vscode.cpptools",
            "version": "1.20.5"
            "id": "ms-vscode.cpptools-extension-pack",
            "version": "1.3.0"
            "id": "ms-vscode.cpptools-themes",
            "version": "2.0.0"
            "id": "mwgustin.crestron-simpl-plus",
            "version": "1.3.0"
            "id": "particle.particle-vscode-core",
            "version": "1.16.20"
            "id": "particle.particle-vscode-pack",
            "version": "1.16.20"
            "id": "particle.particle-vscode-snippets",
            "version": "1.16.20"
            "id": "particle.particle-vscode-theme",
            "version": "1.16.20"
            "id": "twxs.cmake",
            "version": "0.0.17"

To report an issue, visit:

Any ideas what might be going on here?

One other thread that may be worth pulling on: I read about conflicts with the Platformio Extension so I've disabled that, and uninstalled and reinstalled Particle Workbench just to make sure - but the problems persist.

Okay, further update...

I am currently using the Linux Flatpak version of VS Code and that's what's giving me problems. This afternoon I installed the not flatpak version of VS Code and then installed the Particle Workbench extension on that clean install of VS Code.

Everything worked perfectly. I could compile locally without any errors, upload worked flawlessly. Everything was perfect.

This now makes me wonder though - what's the problem with my Flatpak VS Code?! Something wrong with paths? I would still love to solve this - any suggestions?