From d6c9bde4eff82dd89143e1fad3703cbc18c17872 Mon Sep 17 00:00:00 2001 From: Brendan Haines Date: Fri, 30 May 2025 23:29:27 -0600 Subject: [PATCH 1/7] Initial commit. Working blinky --- .gitignore | 1 + .west/config | 7 + Pipfile | 12 ++ Pipfile.lock | 194 ++++++++++++++++++++++++++ README.md | 46 ++++++ mellifera_firmware/app/CMakeLists.txt | 5 + mellifera_firmware/app/prj.conf | 1 + mellifera_firmware/app/src/main.c | 52 +++++++ mellifera_firmware/west.yml | 26 ++++ 9 files changed, 344 insertions(+) create mode 100644 .gitignore create mode 100644 .west/config create mode 100644 Pipfile create mode 100644 Pipfile.lock create mode 100644 README.md create mode 100644 mellifera_firmware/app/CMakeLists.txt create mode 100644 mellifera_firmware/app/prj.conf create mode 100644 mellifera_firmware/app/src/main.c create mode 100644 mellifera_firmware/west.yml diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c795b05 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +build \ No newline at end of file diff --git a/.west/config b/.west/config new file mode 100644 index 0000000..1cbe92f --- /dev/null +++ b/.west/config @@ -0,0 +1,7 @@ +[manifest] +path = mellifera_firmware +file = west.yml + +[zephyr] +base = zephyr + diff --git a/Pipfile b/Pipfile new file mode 100644 index 0000000..9b80742 --- /dev/null +++ b/Pipfile @@ -0,0 +1,12 @@ +[[source]] +url = "https://pypi.org/simple" +verify_ssl = true +name = "pypi" + +[packages] +west = "*" + +[dev-packages] + +[requires] +python_version = "3.10" diff --git a/Pipfile.lock b/Pipfile.lock new file mode 100644 index 0000000..b31347a --- /dev/null +++ b/Pipfile.lock @@ -0,0 +1,194 @@ +{ + "_meta": { + "hash": { + "sha256": "5938a8038f8f64dfb1c84d9158f05f6b53dfe0c38edca94db3d279264e409aac" + }, + "pipfile-spec": 6, + "requires": { + "python_version": "3.10" + }, + "sources": [ + { + "name": "pypi", + "url": "https://pypi.org/simple", + "verify_ssl": true + } + ] + }, + "default": { + "colorama": { + "hashes": [ + "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44", + "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" + ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5, 3.6'", + "version": "==0.4.6" + }, + "docopt": { + "hashes": [ + "sha256:49b3a825280bd66b3aa83585ef59c4a8c82f2c8a522dbe754a8bc8d08c85c491" + ], + "version": "==0.6.2" + }, + "packaging": { + "hashes": [ + "sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484", + "sha256:d443872c98d677bf60f6a1f2f8c1cb748e8fe762d2bf9d3148b5599295b0fc4f" + ], + "markers": "python_version >= '3.8'", + "version": "==25.0" + }, + "pykwalify": { + "hashes": [ + "sha256:731dfa87338cca9f559d1fca2bdea37299116e3139b73f78ca90a543722d6651", + "sha256:796b2ad3ed4cb99b88308b533fb2f559c30fa6efb4fa9fda11347f483d245884" + ], + "version": "==1.8.0" + }, + "python-dateutil": { + "hashes": [ + "sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3", + "sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427" + ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", + "version": "==2.9.0.post0" + }, + "pyyaml": { + "hashes": [ + "sha256:01179a4a8559ab5de078078f37e5c1a30d76bb88519906844fd7bdea1b7729ff", + "sha256:0833f8694549e586547b576dcfaba4a6b55b9e96098b36cdc7ebefe667dfed48", + "sha256:0a9a2848a5b7feac301353437eb7d5957887edbf81d56e903999a75a3d743086", + "sha256:0b69e4ce7a131fe56b7e4d770c67429700908fc0752af059838b1cfb41960e4e", + "sha256:0ffe8360bab4910ef1b9e87fb812d8bc0a308b0d0eef8c8f44e0254ab3b07133", + "sha256:11d8f3dd2b9c1207dcaf2ee0bbbfd5991f571186ec9cc78427ba5bd32afae4b5", + "sha256:17e311b6c678207928d649faa7cb0d7b4c26a0ba73d41e99c4fff6b6c3276484", + "sha256:1e2120ef853f59c7419231f3bf4e7021f1b936f6ebd222406c3b60212205d2ee", + "sha256:1f71ea527786de97d1a0cc0eacd1defc0985dcf6b3f17bb77dcfc8c34bec4dc5", + "sha256:23502f431948090f597378482b4812b0caae32c22213aecf3b55325e049a6c68", + "sha256:24471b829b3bf607e04e88d79542a9d48bb037c2267d7927a874e6c205ca7e9a", + "sha256:29717114e51c84ddfba879543fb232a6ed60086602313ca38cce623c1d62cfbf", + "sha256:2e99c6826ffa974fe6e27cdb5ed0021786b03fc98e5ee3c5bfe1fd5015f42b99", + "sha256:39693e1f8320ae4f43943590b49779ffb98acb81f788220ea932a6b6c51004d8", + "sha256:3ad2a3decf9aaba3d29c8f537ac4b243e36bef957511b4766cb0057d32b0be85", + "sha256:3b1fdb9dc17f5a7677423d508ab4f243a726dea51fa5e70992e59a7411c89d19", + "sha256:41e4e3953a79407c794916fa277a82531dd93aad34e29c2a514c2c0c5fe971cc", + "sha256:43fa96a3ca0d6b1812e01ced1044a003533c47f6ee8aca31724f78e93ccc089a", + "sha256:50187695423ffe49e2deacb8cd10510bc361faac997de9efef88badc3bb9e2d1", + "sha256:5ac9328ec4831237bec75defaf839f7d4564be1e6b25ac710bd1a96321cc8317", + "sha256:5d225db5a45f21e78dd9358e58a98702a0302f2659a3c6cd320564b75b86f47c", + "sha256:6395c297d42274772abc367baaa79683958044e5d3835486c16da75d2a694631", + "sha256:688ba32a1cffef67fd2e9398a2efebaea461578b0923624778664cc1c914db5d", + "sha256:68ccc6023a3400877818152ad9a1033e3db8625d899c72eacb5a668902e4d652", + "sha256:70b189594dbe54f75ab3a1acec5f1e3faa7e8cf2f1e08d9b561cb41b845f69d5", + "sha256:797b4f722ffa07cc8d62053e4cff1486fa6dc094105d13fea7b1de7d8bf71c9e", + "sha256:7c36280e6fb8385e520936c3cb3b8042851904eba0e58d277dca80a5cfed590b", + "sha256:7e7401d0de89a9a855c839bc697c079a4af81cf878373abd7dc625847d25cbd8", + "sha256:80bab7bfc629882493af4aa31a4cfa43a4c57c83813253626916b8c7ada83476", + "sha256:82d09873e40955485746739bcb8b4586983670466c23382c19cffecbf1fd8706", + "sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563", + "sha256:8824b5a04a04a047e72eea5cec3bc266db09e35de6bdfe34c9436ac5ee27d237", + "sha256:8b9c7197f7cb2738065c481a0461e50ad02f18c78cd75775628afb4d7137fb3b", + "sha256:9056c1ecd25795207ad294bcf39f2db3d845767be0ea6e6a34d856f006006083", + "sha256:936d68689298c36b53b29f23c6dbb74de12b4ac12ca6cfe0e047bedceea56180", + "sha256:9b22676e8097e9e22e36d6b7bda33190d0d400f345f23d4065d48f4ca7ae0425", + "sha256:a4d3091415f010369ae4ed1fc6b79def9416358877534caf6a0fdd2146c87a3e", + "sha256:a8786accb172bd8afb8be14490a16625cbc387036876ab6ba70912730faf8e1f", + "sha256:a9f8c2e67970f13b16084e04f134610fd1d374bf477b17ec1599185cf611d725", + "sha256:bc2fa7c6b47d6bc618dd7fb02ef6fdedb1090ec036abab80d4681424b84c1183", + "sha256:c70c95198c015b85feafc136515252a261a84561b7b1d51e3384e0655ddf25ab", + "sha256:cc1c1159b3d456576af7a3e4d1ba7e6924cb39de8f67111c735f6fc832082774", + "sha256:ce826d6ef20b1bc864f0a68340c8b3287705cae2f8b4b1d932177dcc76721725", + "sha256:d584d9ec91ad65861cc08d42e834324ef890a082e591037abe114850ff7bbc3e", + "sha256:d7fded462629cfa4b685c5416b949ebad6cec74af5e2d42905d41e257e0869f5", + "sha256:d84a1718ee396f54f3a086ea0a66d8e552b2ab2017ef8b420e92edbc841c352d", + "sha256:d8e03406cac8513435335dbab54c0d385e4a49e4945d2909a581c83647ca0290", + "sha256:e10ce637b18caea04431ce14fabcf5c64a1c61ec9c56b071a4b7ca131ca52d44", + "sha256:ec031d5d2feb36d1d1a24380e4db6d43695f3748343d99434e6f5f9156aaa2ed", + "sha256:ef6107725bd54b262d6dedcc2af448a266975032bc85ef0172c5f059da6325b4", + "sha256:efdca5630322a10774e8e98e1af481aad470dd62c3170801852d752aa7a783ba", + "sha256:f753120cb8181e736c57ef7636e83f31b9c0d1722c516f7e86cf15b7aa57ff12", + "sha256:ff3824dc5261f50c9b0dfb3be22b4567a6f938ccce4587b38952d85fd9e9afe4" + ], + "markers": "python_version >= '3.8'", + "version": "==6.0.2" + }, + "ruamel.yaml": { + "hashes": [ + "sha256:5a38fd5ce39d223bebb9e3a6779e86b9427a03fb0bf9f270060f8b149cffe5e2", + "sha256:790ba4c48b6a6e6b12b532a7308779eb12d2aaab3a80fdb8389216f28ea2b287" + ], + "markers": "python_version >= '3.7'", + "version": "==0.18.12" + }, + "ruamel.yaml.clib": { + "hashes": [ + "sha256:040ae85536960525ea62868b642bdb0c2cc6021c9f9d507810c0c604e66f5a7b", + "sha256:0467c5965282c62203273b838ae77c0d29d7638c8a4e3a1c8bdd3602c10904e4", + "sha256:0b7e75b4965e1d4690e93021adfcecccbca7d61c7bddd8e22406ef2ff20d74ef", + "sha256:11f891336688faf5156a36293a9c362bdc7c88f03a8a027c2c1d8e0bcde998e5", + "sha256:1492a6051dab8d912fc2adeef0e8c72216b24d57bd896ea607cb90bb0c4981d3", + "sha256:20b0f8dc160ba83b6dcc0e256846e1a02d044e13f7ea74a3d1d56ede4e48c632", + "sha256:22353049ba4181685023b25b5b51a574bce33e7f51c759371a7422dcae5402a6", + "sha256:2c59aa6170b990d8d2719323e628aaf36f3bfbc1c26279c0eeeb24d05d2d11c7", + "sha256:32621c177bbf782ca5a18ba4d7af0f1082a3f6e517ac2a18b3974d4edf349680", + "sha256:3bc2a80e6420ca8b7d3590791e2dfc709c88ab9152c00eeb511c9875ce5778bf", + "sha256:3eac5a91891ceb88138c113f9db04f3cebdae277f5d44eaa3651a4f573e6a5da", + "sha256:4a6679521a58256a90b0d89e03992c15144c5f3858f40d7c18886023d7943db6", + "sha256:4c8c5d82f50bb53986a5e02d1b3092b03622c02c2eb78e29bec33fd9593bae1a", + "sha256:4f6f3eac23941b32afccc23081e1f50612bdbe4e982012ef4f5797986828cd01", + "sha256:5a0e060aace4c24dcaf71023bbd7d42674e3b230f7e7b97317baf1e953e5b519", + "sha256:6442cb36270b3afb1b4951f060eccca1ce49f3d087ca1ca4563a6eb479cb3de6", + "sha256:6c8fbb13ec503f99a91901ab46e0b07ae7941cd527393187039aec586fdfd36f", + "sha256:749c16fcc4a2b09f28843cda5a193e0283e47454b63ec4b81eaa2242f50e4ccd", + "sha256:7dd5adc8b930b12c8fc5b99e2d535a09889941aa0d0bd06f4749e9a9397c71d2", + "sha256:811ea1594b8a0fb466172c384267a4e5e367298af6b228931f273b111f17ef52", + "sha256:932205970b9f9991b34f55136be327501903f7c66830e9760a8ffb15b07f05cd", + "sha256:943f32bc9dedb3abff9879edc134901df92cfce2c3d5c9348f172f62eb2d771d", + "sha256:95c3829bb364fdb8e0332c9931ecf57d9be3519241323c5274bd82f709cebc0c", + "sha256:96777d473c05ee3e5e3c3e999f5d23c6f4ec5b0c38c098b3a5229085f74236c6", + "sha256:a274fb2cb086c7a3dea4322ec27f4cb5cc4b6298adb583ab0e211a4682f241eb", + "sha256:a52d48f4e7bf9005e8f0a89209bf9a73f7190ddf0489eee5eb51377385f59f2a", + "sha256:a606ef75a60ecf3d924613892cc603b154178ee25abb3055db5062da811fd969", + "sha256:ab007f2f5a87bd08ab1499bdf96f3d5c6ad4dcfa364884cb4549aa0154b13a28", + "sha256:b82a7c94a498853aa0b272fd5bc67f29008da798d4f93a2f9f289feb8426a58d", + "sha256:bb43a269eb827806502c7c8efb7ae7e9e9d0573257a46e8e952f4d4caba4f31e", + "sha256:bc5f1e1c28e966d61d2519f2a3d451ba989f9ea0f2307de7bc45baa526de9e45", + "sha256:bd0a08f0bab19093c54e18a14a10b4322e1eacc5217056f3c063bd2f59853ce4", + "sha256:beffaed67936fbbeffd10966a4eb53c402fafd3d6833770516bf7314bc6ffa12", + "sha256:bf165fef1f223beae7333275156ab2022cffe255dcc51c27f066b4370da81e31", + "sha256:cf12567a7b565cbf65d438dec6cfbe2917d3c1bdddfce84a9930b7d35ea59642", + "sha256:d84318609196d6bd6da0edfa25cedfbabd8dbde5140a0a23af29ad4b8f91fb1e", + "sha256:d85252669dc32f98ebcd5d36768f5d4faeaeaa2d655ac0473be490ecdae3c285", + "sha256:e143ada795c341b56de9418c58d028989093ee611aa27ffb9b7f609c00d813ed", + "sha256:e188d2699864c11c36cdfdada94d781fd5d6b0071cd9c427bceb08ad3d7c70e1", + "sha256:e2f1c3765db32be59d18ab3953f43ab62a761327aafc1594a2a1fbe038b8b8a7", + "sha256:e5b8daf27af0b90da7bb903a876477a9e6d7270be6146906b276605997c7e9a3", + "sha256:e7e3736715fbf53e9be2a79eb4db68e4ed857017344d697e8b9749444ae57475", + "sha256:e8c4ebfcfd57177b572e2040777b8abc537cdef58a2120e830124946aa9b42c5", + "sha256:f66efbc1caa63c088dead1c4170d148eabc9b80d95fb75b6c92ac0aad2437d76", + "sha256:fc4b630cd3fa2cf7fce38afa91d7cfe844a9f75d7f0f36393fa98815e911d987", + "sha256:fd5415dded15c3822597455bc02bcd66e81ef8b7a48cb71a33628fc9fdde39df" + ], + "markers": "python_version < '3.14' and platform_python_implementation == 'CPython'", + "version": "==0.2.12" + }, + "six": { + "hashes": [ + "sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274", + "sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81" + ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", + "version": "==1.17.0" + }, + "west": { + "hashes": [ + "sha256:908a07ae7cc334a88cb2f069b430484dfdfdda0c3422d14b9e23a43030cf9cc6", + "sha256:9a625825a556b35e3aafabe0d96acd1c45f1db341b25dcccb254acd5b4b82f5e" + ], + "index": "pypi", + "markers": "python_version >= '3.9'", + "version": "==1.4.0" + } + }, + "develop": {} +} diff --git a/README.md b/README.md new file mode 100644 index 0000000..e50cc5e --- /dev/null +++ b/README.md @@ -0,0 +1,46 @@ +## Installation + +### Setting up west + +This shouldn't need to be re-done. These files are committed + +```bash +west init -l mellifera_firmware +``` + +### + +```bash +pipenv sync +pipenv shell +west update +west zephyr-export +west packages pip --install +west sdk install +``` + +### NRFUtil (Nordic Semiconductor) + +This is required for flashing Nordic Semiconductor devices + +This is installed globally, not in the environment + +```bash +# dependencies first +sudo apt install -y libusb-1.0-0 +wget https://github.com/NordicSemiconductor/nrf-udev/releases/download/v1.0.1/nrf-udev_1.0.1-all.deb +sudo dpkg -i nrf-udev_1.0.1-all.deb + +curl https://files.nordicsemi.com/artifactory/swtools/external/nrfutil/executables/x86_64-unknown-linux-gnu/nrfutil -o nrfutil +chmod +x nrfutil +sudo mv nrfutil /usr/bin/nrfutil # I should probably change ownership too... but I'm the only user on this machine so I don't care +nrfutil self-upgrade +nrfutil install device +``` + +## Building + +```bash +west build -p -b nrf52dk/nrf52832 zephyr/samples/basic/blinky + +``` \ No newline at end of file diff --git a/mellifera_firmware/app/CMakeLists.txt b/mellifera_firmware/app/CMakeLists.txt new file mode 100644 index 0000000..db00d20 --- /dev/null +++ b/mellifera_firmware/app/CMakeLists.txt @@ -0,0 +1,5 @@ +cmake_minimum_required(VERSION 3.20.0) +find_package(Zephyr REQUIRED HINTS $ENV{ZEPHYR_BASE}) +project(blinky) + +target_sources(app PRIVATE src/main.c) diff --git a/mellifera_firmware/app/prj.conf b/mellifera_firmware/app/prj.conf new file mode 100644 index 0000000..91c3c15 --- /dev/null +++ b/mellifera_firmware/app/prj.conf @@ -0,0 +1 @@ +CONFIG_GPIO=y diff --git a/mellifera_firmware/app/src/main.c b/mellifera_firmware/app/src/main.c new file mode 100644 index 0000000..a5f5954 --- /dev/null +++ b/mellifera_firmware/app/src/main.c @@ -0,0 +1,52 @@ +/* + * Copyright (c) 2016 Intel Corporation + * + * SPDX-License-Identifier: Apache-2.0 + */ + +#include +#include +#include + +/* 1000 msec = 1 sec */ +#define SLEEP_TIME_MS 100 + +/* The devicetree node identifier for the "led0" alias. */ +#define LED0_NODE DT_ALIAS(led0) + +/* + * A build error on this line means your board is unsupported. + * See the sample documentation for information on how to fix this. + */ +static const struct gpio_dt_spec led = GPIO_DT_SPEC_GET(LED0_NODE, gpios); + +int main(void) +{ + int ret; + bool led_state = true; + + if (!gpio_is_ready_dt(&led)) + { + return 0; + } + + ret = gpio_pin_configure_dt(&led, GPIO_OUTPUT_ACTIVE); + if (ret < 0) + { + return 0; + } + + while (1) + { + ret = gpio_pin_toggle_dt(&led); + if (ret < 0) + { + return 0; + } + + led_state = !led_state; + printf("LED state: %s\n", led_state ? "ON" : "OFF"); + k_msleep(SLEEP_TIME_MS); + } + return 0; +} diff --git a/mellifera_firmware/west.yml b/mellifera_firmware/west.yml new file mode 100644 index 0000000..db24c97 --- /dev/null +++ b/mellifera_firmware/west.yml @@ -0,0 +1,26 @@ +manifest: + # self: + # west-commands: scripts/west-commands.yml + + remotes: + - name: zephyrproject-rtos + url-base: https://github.com/zephyrproject-rtos + # - name: mcu-tools + # url-base: https://github.com/mcu-tools + + projects: + - name: zephyr + remote: zephyrproject-rtos + revision: main + import: true + # # By using name-allowlist we can clone only the modules that are + # # strictly needed by the application. + # name-allowlist: + # - cmsis # required by the ARM port + # - hal_nordic # required by the custom_plank board (Nordic based) + # - hal_stm32 # required by the nucleo_f302r8 board (STM32 based) + # - zcbor # required by mcuboot serial + # - tinycrypt + # - name: mcuboot + # remote: mcu-tools + # revision: main From 952a0357a1e6cfd8fcdb57fd6148ac271e80f062 Mon Sep 17 00:00:00 2001 From: Brendan Haines Date: Fri, 30 May 2025 23:30:38 -0600 Subject: [PATCH 2/7] rename mellifera_firmware to mellifera --- .west/config | 2 +- {mellifera_firmware => mellifera}/app/CMakeLists.txt | 0 {mellifera_firmware => mellifera}/app/prj.conf | 0 {mellifera_firmware => mellifera}/app/src/main.c | 0 {mellifera_firmware => mellifera}/west.yml | 0 5 files changed, 1 insertion(+), 1 deletion(-) rename {mellifera_firmware => mellifera}/app/CMakeLists.txt (100%) rename {mellifera_firmware => mellifera}/app/prj.conf (100%) rename {mellifera_firmware => mellifera}/app/src/main.c (100%) rename {mellifera_firmware => mellifera}/west.yml (100%) diff --git a/.west/config b/.west/config index 1cbe92f..7ffa6ef 100644 --- a/.west/config +++ b/.west/config @@ -1,5 +1,5 @@ [manifest] -path = mellifera_firmware +path = mellifera file = west.yml [zephyr] diff --git a/mellifera_firmware/app/CMakeLists.txt b/mellifera/app/CMakeLists.txt similarity index 100% rename from mellifera_firmware/app/CMakeLists.txt rename to mellifera/app/CMakeLists.txt diff --git a/mellifera_firmware/app/prj.conf b/mellifera/app/prj.conf similarity index 100% rename from mellifera_firmware/app/prj.conf rename to mellifera/app/prj.conf diff --git a/mellifera_firmware/app/src/main.c b/mellifera/app/src/main.c similarity index 100% rename from mellifera_firmware/app/src/main.c rename to mellifera/app/src/main.c diff --git a/mellifera_firmware/west.yml b/mellifera/west.yml similarity index 100% rename from mellifera_firmware/west.yml rename to mellifera/west.yml From 2e0d6803d6bf6c060a54edffb0ca466ad170678c Mon Sep 17 00:00:00 2001 From: Brendan Haines Date: Fri, 30 May 2025 23:36:02 -0600 Subject: [PATCH 3/7] add workflow --- .github/workflows/blah.yml | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 .github/workflows/blah.yml diff --git a/.github/workflows/blah.yml b/.github/workflows/blah.yml new file mode 100644 index 0000000..ce4d32d --- /dev/null +++ b/.github/workflows/blah.yml @@ -0,0 +1,33 @@ +name: Build + +on: + push: + pull_request: + +jobs: + build: + name: Build + runs-on: ubuntu-latest + + env: + RUNNER_TOOL_CACHE: /toolcache # https://about.gitea.com/resources/tutorials/enable-gitea-actions-cache-to-accelerate-cicd + AGENT_TOOLSDIRECTORY: /toolcache # https://github.com/actions/setup-python/issues/824 + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Setup Zephyr project + uses: zephyrproject-rtos/action-zephyr-setup@v1 + with: + app-path: mellifera + toolchains: arm-zephyr-eabi + + - name: Build + run: | + west build -b nrf52dk/nrf52832 mellifera/app + + - name: upload + uses: actions/upload-artifact@v3 + with: + path: build/ \ No newline at end of file From 9c12aa1b3dd5ecde4ed7898ae6d89af9fe4af338 Mon Sep 17 00:00:00 2001 From: Brendan Haines Date: Fri, 30 May 2025 23:43:31 -0600 Subject: [PATCH 4/7] try to fix ci --- .github/workflows/blah.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/blah.yml b/.github/workflows/blah.yml index ce4d32d..8c9c3e7 100644 --- a/.github/workflows/blah.yml +++ b/.github/workflows/blah.yml @@ -17,6 +17,10 @@ jobs: - name: Checkout uses: actions/checkout@v4 + - name: De-initialize West + run: | + rm -r ./.west + - name: Setup Zephyr project uses: zephyrproject-rtos/action-zephyr-setup@v1 with: From 6d32cf918f604a82ed6e2decddf7265317b256f7 Mon Sep 17 00:00:00 2001 From: Brendan Haines Date: Fri, 30 May 2025 23:49:23 -0600 Subject: [PATCH 5/7] let's use the same general names across projects so I don't have to think about multiple paths --- .github/workflows/blah.yml | 4 ++-- .west/config | 2 +- {mellifera => firmware}/app/CMakeLists.txt | 0 {mellifera => firmware}/app/prj.conf | 0 {mellifera => firmware}/app/src/main.c | 0 {mellifera => firmware}/west.yml | 0 6 files changed, 3 insertions(+), 3 deletions(-) rename {mellifera => firmware}/app/CMakeLists.txt (100%) rename {mellifera => firmware}/app/prj.conf (100%) rename {mellifera => firmware}/app/src/main.c (100%) rename {mellifera => firmware}/west.yml (100%) diff --git a/.github/workflows/blah.yml b/.github/workflows/blah.yml index 8c9c3e7..500055f 100644 --- a/.github/workflows/blah.yml +++ b/.github/workflows/blah.yml @@ -24,12 +24,12 @@ jobs: - name: Setup Zephyr project uses: zephyrproject-rtos/action-zephyr-setup@v1 with: - app-path: mellifera + app-path: firmware toolchains: arm-zephyr-eabi - name: Build run: | - west build -b nrf52dk/nrf52832 mellifera/app + west build -b nrf52dk/nrf52832 firmware/app - name: upload uses: actions/upload-artifact@v3 diff --git a/.west/config b/.west/config index 7ffa6ef..53cbfdf 100644 --- a/.west/config +++ b/.west/config @@ -1,5 +1,5 @@ [manifest] -path = mellifera +path = firmware file = west.yml [zephyr] diff --git a/mellifera/app/CMakeLists.txt b/firmware/app/CMakeLists.txt similarity index 100% rename from mellifera/app/CMakeLists.txt rename to firmware/app/CMakeLists.txt diff --git a/mellifera/app/prj.conf b/firmware/app/prj.conf similarity index 100% rename from mellifera/app/prj.conf rename to firmware/app/prj.conf diff --git a/mellifera/app/src/main.c b/firmware/app/src/main.c similarity index 100% rename from mellifera/app/src/main.c rename to firmware/app/src/main.c diff --git a/mellifera/west.yml b/firmware/west.yml similarity index 100% rename from mellifera/west.yml rename to firmware/west.yml From 33c2e343709fa73f90b31c8844b95aa0832a2373 Mon Sep 17 00:00:00 2001 From: Brendan Haines Date: Fri, 30 May 2025 23:56:40 -0600 Subject: [PATCH 6/7] move blinky before merging in some old work --- firmware/{app => blinky}/CMakeLists.txt | 0 firmware/{app => blinky}/prj.conf | 0 firmware/{app => blinky}/src/main.c | 0 3 files changed, 0 insertions(+), 0 deletions(-) rename firmware/{app => blinky}/CMakeLists.txt (100%) rename firmware/{app => blinky}/prj.conf (100%) rename firmware/{app => blinky}/src/main.c (100%) diff --git a/firmware/app/CMakeLists.txt b/firmware/blinky/CMakeLists.txt similarity index 100% rename from firmware/app/CMakeLists.txt rename to firmware/blinky/CMakeLists.txt diff --git a/firmware/app/prj.conf b/firmware/blinky/prj.conf similarity index 100% rename from firmware/app/prj.conf rename to firmware/blinky/prj.conf diff --git a/firmware/app/src/main.c b/firmware/blinky/src/main.c similarity index 100% rename from firmware/app/src/main.c rename to firmware/blinky/src/main.c From 2f86fd12eda66412194b2242b1bd61675451c19a Mon Sep 17 00:00:00 2001 From: Brendan Haines Date: Sat, 31 May 2025 00:03:54 -0600 Subject: [PATCH 7/7] ignore west stuff --- .gitignore | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index c795b05..e1bc053 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,7 @@ -build \ No newline at end of file +build + +# stuff managed by west +bootloader +modules +tools +zephyr \ No newline at end of file