Add Bluepill (stm32f103) handwired keyboard (#4126)
* Main folder
Main folder with some changes like the base layout and matrix for uploading in a future to the qmk repositorie
* First Commit
Firsts non previously commited changes:
-Changed to keyboards/handwired
-Basic credit to Xydane
-70% Layout
* Modified file structure for several keyboards
As I don't want to create several folders and overcrowd the main folders I made a few modifications to being able of configure several keyboards as revisions of the main keyboard.
Added a second variant.
Compiling tests went right but I haven't tried it on the controller.
* Starting leds
* Started dual color leds PWM functions and configs
I started to create the PWM functions and configs based on internet examples, it doesn't compile yet
* Backtraced a bit to establish and try debug before continuing the pwm
Just this, algo some doc as a new pinout image, space cadet modification to try if it works and little more
* Deleted unuseful stuff
After trying the reestructure to being compatible with several keyboards and that it worked I deleted the other keyboard.
Added space cadet shift to ISO.
Finally I couldn't debug everything and I'm getting quite frustrated to continue much more than just adding pwm leds
* Changed again Iso fix for Space Cadet
* Renamed keyboard, future pull
I just renamed the keyboard and made some simplifying changes in order to make a pull request sometime soon.
I'm too frustrated, tired and knowledge limited to achive using the PWM for leds, I didn't even get to use the debug mode...
I intend to end basic led color change using layers (if I can), document everything properly and make a pull request so other users can continue/use this project.
* Writed Readme.md file
I also corrected a previous compilation problem and ordered a bit the keymaps
* Corrected readme
* Try to add layer activated light
* Revert "Try to add layer activated light"
This reverts commit 205af820d845dab08988f329b9f062f558060220.
* Progress to fork
Coming back to work, upcoming pull
* Linked image
Corrected readme
* Some cleanning
Added images to readme, som cleaning, burning after commit.
* Almost finished (working)
Finally
* Finished bluepill firmware
Just finished and tried layer dependant led colors. Going for merge
* Deleted innecesary stuff and trailing spaces
Just as commit title said.
* Coding conventions
Just modified some files to respect coding conventions
* Deleted XXXXXX define
Checking some other PR seen this improvement
* Changes suggested on PR
Firs doing the easy changes
* More changes for the PR
-I also deleted one unused function for led toggling on matrix.c (Now it uses layer dependent baklight, algo on of on start)
-Deleted commented function on keymaps.
Right now only needs testing and all pragma replaces.
* Almost every pragma change on PR
That's almost finished, only waiting for reply due to compiling errors
* Revert "Almost every pragma change on PR"
This reverts commit 07f23aa862b370cdf0ae37d6f2130c9e9856f491.
* Revert last commit
I moddified by mistake a file from another keyboard
* Solved last pragma
Compiles fine.
Now I only need to test it, I say you if it works to include it in the main repository.
2018-10-22 18:45:46 +00:00
|
|
|
# project specific files
|
|
|
|
SRC = matrix.c \
|
|
|
|
led.c
|
|
|
|
|
|
|
|
# GENERIC STM32F103C8T6 board - stm32duino bootloader
|
|
|
|
#OPT_DEFS = -DCORTEX_VTOR_INIT=0x2000
|
|
|
|
#MCU_LDSCRIPT = STM32F103x8_stm32duino_bootloader
|
|
|
|
#BOARD = GENERIC_STM32_F103
|
|
|
|
|
|
|
|
# GENERIC STM32F103C8T6 board - no bootloader (programmer over serial or SWD) // Modified by Xydane
|
|
|
|
OPT_DEFS =
|
|
|
|
MCU_LDSCRIPT = STM32F103x8
|
|
|
|
BOARD = GENERIC_STM32_F103
|
|
|
|
|
|
|
|
# MAPLE MINI
|
|
|
|
# OPT_DEFS = -DCORTEX_VTOR_INIT=0x5000
|
|
|
|
# MCU_LDSCRIPT = STM32F103xB_maplemini_bootloader
|
|
|
|
# BOARD = MAPLEMINI_STM32_F103
|
|
|
|
|
|
|
|
## chip/board settings
|
|
|
|
# the next two should match the directories in
|
|
|
|
# <chibios>/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES)
|
|
|
|
MCU_FAMILY = STM32
|
|
|
|
MCU_SERIES = STM32F1xx
|
|
|
|
# linker script to use
|
|
|
|
# it should exist either in <chibios>/os/common/ports/ARMCMx/compilers/GCC/ld/
|
|
|
|
# or <this_dir>/ld/
|
|
|
|
# startup code to use
|
|
|
|
# is should exist in <chibios>/os/common/ports/ARMCMx/compilers/GCC/mk/
|
|
|
|
MCU_STARTUP = stm32f1xx
|
|
|
|
# it should exist either in <chibios>/os/hal/boards/
|
|
|
|
# or <this_dir>/boards
|
|
|
|
# Cortex version
|
|
|
|
# Teensy LC is cortex-m0; Teensy 3.x are cortex-m4
|
|
|
|
MCU = cortex-m3
|
|
|
|
# ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7
|
|
|
|
ARMV = 7
|
|
|
|
# If you want to be able to jump to bootloader from firmware on STM32 MCUs,
|
|
|
|
# set the correct BOOTLOADER_ADDRESS. Either set it here, or define it in
|
|
|
|
# ./bootloader_defs.h or in ./boards/<FOO>/bootloader_defs.h (if you have
|
|
|
|
# a custom board definition that you plan to reuse).
|
|
|
|
# If you're not setting it here, leave it commented out.
|
|
|
|
# It is chip dependent, the correct number can be looked up here (page 175):
|
|
|
|
# http://www.st.com/web/en/resource/technical/document/application_note/CD00167594.pdf
|
|
|
|
# This also requires a patch to chibios:
|
|
|
|
# <tmk_dir>/tmk_core/tool/chibios/ch-bootloader-jump.patch
|
2020-01-02 22:58:34 +00:00
|
|
|
#STM32_BOOTLOADER_ADDRESS = 0x1FFFC800
|
|
|
|
|
|
|
|
|
|
|
|
# Enter lower-power sleep mode when on the ChibiOS idle thread
|
|
|
|
OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE
|