Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
4ed3c07
Neopixel initial code
planeflight Feb 6, 2026
3f2b1f1
Automatic Json Format: Standardized formatting automatically
github-actions[bot] Feb 7, 2026
225384c
Automatic CMake Format: Standardized formatting automatically
github-actions[bot] Feb 7, 2026
250d311
Automatic Clang-Format: Standardized formatting automatically
github-actions[bot] Feb 7, 2026
91af148
added spi1
Cuteturtle101 Feb 13, 2026
ea66ebc
Automatic Clang-Format: Standardized formatting automatically
github-actions[bot] Feb 13, 2026
9b4a51d
log being tested
Cuteturtle101 Feb 13, 2026
57f3611
Automatic Clang-Format: Standardized formatting automatically
github-actions[bot] Feb 13, 2026
f991917
Setup logomatic and change clock HSE -> HSI
dchansen06 Feb 14, 2026
fcd5260
Change clock in launch settings
dchansen06 Feb 14, 2026
390d09d
Cleanup usart files
dchansen06 Feb 14, 2026
013a520
Automatic Clang-Format: Standardized formatting automatically
github-actions[bot] Feb 14, 2026
59ce359
Do a full cleanup of other things going on in G4NEOTESTING that are n…
dchansen06 Feb 16, 2026
b8a13bc
Surface level fixes, fixed SPI
dchansen06 Feb 16, 2026
4254933
Get a minimum viable probably working implementation
dchansen06 Feb 16, 2026
ac927d0
Test that implementation
dchansen06 Feb 16, 2026
a674b09
Automatic Clang-Format: Standardized formatting automatically
github-actions[bot] Feb 16, 2026
d9aa2d5
Accidentally drag mouse in VS Code one time and it messes up all the …
dchansen06 Feb 16, 2026
65f94ff
Specify the COPI pinout
dchansen06 Feb 16, 2026
7341a24
Shorten `MX_SPI1_Init` dramatically
dchansen06 Feb 16, 2026
2e9c312
Automatic Clang-Format: Standardized formatting automatically
github-actions[bot] Feb 16, 2026
5fe43ee
Cleanup random GPIO pin definitions
dchansen06 Feb 16, 2026
fd34bce
Duplicate typedef structs
dchansen06 Feb 16, 2026
367c3bb
Somehow changed startup assembly file
dchansen06 Feb 16, 2026
a3fad72
Automatic Clang-Format: Standardized formatting automatically
github-actions[bot] Feb 16, 2026
462cd06
Update build command in tasks.json to use presets
dchansen06 Feb 16, 2026
20de7d3
Added enums for GPIO Pins and alternate functions
Shrav816 Feb 20, 2026
a6422a3
Automatic Clang-Format: Standardized formatting automatically
github-actions[bot] Feb 20, 2026
8dbe1bc
In progress updates
Shrav816 Feb 20, 2026
7834b24
Automatic Clang-Format: Standardized formatting automatically
github-actions[bot] Feb 20, 2026
d38c8ea
Remove no longer needed files
dchansen06 Feb 20, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 31 additions & 0 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
Expand Up @@ -312,6 +312,37 @@
}
]
}
},
{
"cwd": "${workspaceFolder}",
"executable": "${command:cmake.buildDirectory}/G4NEOTESTING.elf",
"name": "G4NEOTESTING",
"request": "launch",
"type": "cortex-debug",
"servertype": "openocd",
"configFiles": [
"interface/stlink.cfg",
"target/stm32g4x.cfg"
],
"searchDir": [],
"preLaunchTask": "CMake: configure and build G4NEOTESTING",
"showDevDebugOutput": "raw",
"svdPath": "${workspaceFolder}/Lib/Vendor/CMSIS_5/SVD/STM32G474.svd",
"swoConfig": {
"enabled": true,
"cpuFrequency": 170000000,
"swoFrequency": 2000000,
"source": "probe",
"decoders": [
{
"type": "console",
"label": "ITM",
"showOnStartup": true,
"port": 0,
"encoding": "ascii"
}
]
}
}
]
}
9 changes: 9 additions & 0 deletions .vscode/tasks.json
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,15 @@
],
"command": "cmake --build --preset ${command:cmake.activeBuildPresetName} --target G4CANTESTING"
},
{
"label": "CMake: configure and build G4NEOTESTING",
"type": "shell",
"dependsOrder": "sequence",
"dependsOn": [
"CMake: configure"
],
"command": "cmake --build --preset ${command:cmake.activeBuildPresetName} --target G4NEOTESTING"
},
{
"label": "CMake: configure and build G4BLINKY",
"type": "shell",
Expand Down
2 changes: 2 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ include("${lib_path}/Utils/BitManipulations/bit-utils.cmake")
include("${lib_path}/Peripherals/USART/common.cmake")
include("${lib_path}/Peripherals/CAN/common.cmake")
include("${lib_path}/FancyLayers-RENAME/ADC/adc.cmake")
include("${lib_path}/FancyLayers-RENAME/NeoPixel/neopixel.cmake")

message(
STATUS
Expand All @@ -71,6 +72,7 @@ add_gr_project(STM32G474xE AnalogCalibration)
add_gr_project(STM32G474xE G4ADCTESTING)
add_gr_project(STM32G474xE G4PERTESTING)
add_gr_project(STM32G474xE G4CANTESTING)
add_gr_project(STM32G474xE G4NEOTESTING)

# BLINKY Demos
add_gr_project(STM32G474xE BLINKY G4HELLO)
Expand Down
39 changes: 39 additions & 0 deletions G4NEOTESTING/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
cmake_minimum_required(VERSION 3.25)

# Setup compiler settings
set(CMAKE_C_STANDARD 11)
set(CMAKE_C_STANDARD_REQUIRED ON)
set(CMAKE_C_EXTENSIONS ON)

# Define the build type
if(NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE "Debug")
endif()

# Enable compile command to ease indexing with e.g. clangd
set(CMAKE_EXPORT_COMPILE_COMMANDS TRUE)

# Enable CMake support for ASM and C languages
enable_language(
C
ASM
)

# Core project settings
project(${CMAKE_PROJECT_NAME})

# what, does in fact not get the filename of somthing but rather the name of the project from the path
get_filename_component(PROJECT_NAME ${CMAKE_CURRENT_SOURCE_DIR} NAME)

add_library(${PROJECT_NAME}_USER_CODE INTERFACE)
target_sources(
${PROJECT_NAME}_USER_CODE
INTERFACE
Core/Src/main.c
Core/Src/stm32g4xx_hal_msp.c
Core/Src/stm32g4xx_it.c
)

target_link_libraries(${PROJECT_NAME}_USER_CODE INTERFACE GR_NEOPIXEL)

target_include_directories(${PROJECT_NAME}_USER_CODE INTERFACE Core/Inc)
87 changes: 87 additions & 0 deletions G4NEOTESTING/Core/Inc/main.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
/* USER CODE BEGIN Header */
/**
******************************************************************************
* @file : main.h
* @brief : Header for main.c file.
* This file contains the common defines of the application.
******************************************************************************
* @attention
*
* Copyright (c) 2024 STMicroelectronics.
* All rights reserved.
*
* This software is licensed under terms that can be found in the LICENSE file
* in the root directory of this software component.
* If no LICENSE file comes with this software, it is provided AS-IS.
*
******************************************************************************
*/
/* USER CODE END Header */

/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef __MAIN_H
#define __MAIN_H

#ifdef __cplusplus
extern "C" {
#endif

/* Includes ------------------------------------------------------------------*/
#include "stm32g4xx_hal.h"
#include "stm32g4xx_ll_adc.h"
#include "stm32g4xx_ll_bus.h"
#include "stm32g4xx_ll_cortex.h"
#include "stm32g4xx_ll_crs.h"
#include "stm32g4xx_ll_dma.h"
#include "stm32g4xx_ll_exti.h"
#include "stm32g4xx_ll_gpio.h"
#include "stm32g4xx_ll_i2c.h"
#include "stm32g4xx_ll_lpuart.h"
#include "stm32g4xx_ll_pwr.h"
#include "stm32g4xx_ll_rcc.h"
#include "stm32g4xx_ll_spi.h"
#include "stm32g4xx_ll_system.h"
#include "stm32g4xx_ll_tim.h"
#include "stm32g4xx_ll_usart.h"
#include "stm32g4xx_ll_utils.h"

/* Private includes ----------------------------------------------------------*/
/* USER CODE BEGIN Includes */

/* USER CODE END Includes */

/* Exported types ------------------------------------------------------------*/
/* USER CODE BEGIN ET */

/* USER CODE END ET */

/* Exported constants --------------------------------------------------------*/
/* USER CODE BEGIN EC */

/* USER CODE END EC */

/* Exported macro ------------------------------------------------------------*/
/* USER CODE BEGIN EM */

/* USER CODE END EM */

/* Exported functions prototypes ---------------------------------------------*/
void Error_Handler(void);

/* USER CODE BEGIN EFP */

/* USER CODE END EFP */

/* Private defines -----------------------------------------------------------*/
#define NEOPIXEL_DIN_Pin LL_GPIO_PIN_5
#define NEOPIXEL_DIN_GPIO_Port GPIOB

/* USER CODE BEGIN Private defines */

/* USER CODE END Private defines */

#ifdef __cplusplus
}
#endif

#endif /* __MAIN_H */
52 changes: 52 additions & 0 deletions G4NEOTESTING/Core/Inc/stm32_assert.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
/* USER CODE BEGIN Header */
/**
******************************************************************************
* @file stm32_assert.h
* @author MCD Application Team
* @brief STM32 assert file.
******************************************************************************
* @attention
*
* Copyright (c) 2019 STMicroelectronics.
* All rights reserved.
*
* This software is licensed under terms that can be found in the LICENSE file
* in the root directory of this software component.
* If no LICENSE file comes with this software, it is provided AS-IS.
*
******************************************************************************
*/
/* USER CODE END Header */
/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef __STM32_ASSERT_H
#define __STM32_ASSERT_H

#ifdef __cplusplus
extern "C" {
#endif

/* Exported types ------------------------------------------------------------*/
/* Exported constants --------------------------------------------------------*/
/* Includes ------------------------------------------------------------------*/
/* Exported macro ------------------------------------------------------------*/
#ifdef USE_FULL_ASSERT
/**
* @brief The assert_param macro is used for function's parameters check.
* @param expr: If expr is false, it calls assert_failed function
* which reports the name of the source file and the source
* line number of the call that failed.
* If expr is true, it returns no value.
* @retval None
*/
#define assert_param(expr) ((expr) ? (void)0U : assert_failed((uint8_t *)__FILE__, __LINE__))
/* Exported functions ------------------------------------------------------- */
void assert_failed(uint8_t *file, uint32_t line);
#else
#define assert_param(expr) ((void)0U)
#endif /* USE_FULL_ASSERT */

#ifdef __cplusplus
}
#endif

#endif /* __STM32_ASSERT_H */
Loading
Loading