diff options
| -rw-r--r-- | puzzle/dummy/CMakeLists.txt | 3 | ||||
| -rw-r--r-- | puzzle/dummy/makefile | 12 | ||||
| -rw-r--r-- | puzzle/neo/CMakeLists.txt | 14 | ||||
| -rw-r--r-- | puzzle/neo/index.dox | 8 | ||||
| -rw-r--r-- | puzzle/neo/makefile | 12 | ||||
| -rw-r--r-- | puzzle/neo/mod.c | 4 | ||||
| -rw-r--r-- | puzzle/readme.md | 17 | ||||
| -rw-r--r-- | puzzle/vault/CMakeLists.txt | 12 | ||||
| -rw-r--r-- | puzzle/vault/index.dox | 5 | ||||
| -rw-r--r-- | puzzle/vault/makefile | 12 | ||||
| -rw-r--r-- | puzzle/vault/mod.c | 4 | 
11 files changed, 30 insertions, 73 deletions
| diff --git a/puzzle/dummy/CMakeLists.txt b/puzzle/dummy/CMakeLists.txt index 0d508ae..63c4449 100644 --- a/puzzle/dummy/CMakeLists.txt +++ b/puzzle/dummy/CMakeLists.txt @@ -17,8 +17,7 @@ set(ARDUINO_BOARD "Arduino Mega or Mega 2560 [avr.mega]")  # freertos  add_library(freertos_config INTERFACE)  target_include_directories(freertos_config SYSTEM INTERFACE .) -# set(FREERTOS_PORT GCC_ATMEGA) # Arduino Uno -set(FREERTOS_PORT GCC_ATMEGA) # Arduino Uno +set(FREERTOS_PORT GCC_ATMEGA)  set(FREERTOS_HEAP 4)  # used for testing diff --git a/puzzle/dummy/makefile b/puzzle/dummy/makefile index 509d8e3..26e9157 100644 --- a/puzzle/dummy/makefile +++ b/puzzle/dummy/makefile @@ -6,15 +6,3 @@ export SERIAL_PORT ?= /dev/ttyACM0  flash: upload-main;  upload-main: $(TARGET) -test: test_a test_b; - -test_a: -	$(MAKE) -C . clean -	$(MAKE) -E CMFLAGS+=-D\ CMAKE_CXX_FLAGS=-DTEST_A -C . -	$(MAKE) -E SERIAL_PORT=/dev/ttyACM0 -C . flash - -test_b: -	$(MAKE) -C . clean -	$(MAKE) -E CMFLAGS+=-D\ CMAKE_CXX_FLAGS=-DTEST_B -C . -	$(MAKE) -E SERIAL_PORT=/dev/ttyACM1 -C . flash - diff --git a/puzzle/neo/CMakeLists.txt b/puzzle/neo/CMakeLists.txt index db3aadc..6c45f13 100644 --- a/puzzle/neo/CMakeLists.txt +++ b/puzzle/neo/CMakeLists.txt @@ -7,26 +7,18 @@ set(CMAKE_EXPORT_COMPILE_COMMANDS 1)  # enable debug features  set(CMAKE_BUILD_TYPE Debug)  add_compile_definitions(DEBUG) -# add_compile_options(-O0) # no optimizations  # arduino  set(CMAKE_TOOLCHAIN_FILE ${CMAKE_SOURCE_DIR}/lib/Arduino-CMake-Toolchain/Arduino-toolchain.cmake) -# set(ARDUINO_BOARD "Arduino Uno [avr.uno]")  set(ARDUINO_BOARD "Arduino Mega or Mega 2560 [avr.mega]")  # freertos  add_library(freertos_config INTERFACE)  target_include_directories(freertos_config SYSTEM INTERFACE .) -# set(FREERTOS_PORT GCC_ATMEGA) # Arduino Uno -set(FREERTOS_PORT GCC_ATMEGA) # Arduino Uno +set(FREERTOS_PORT GCC_ATMEGA)  set(FREERTOS_HEAP 4) -# used for testing -# set(ARDUINO_BOARD "Raspberry Pi Pico W [rp2040.rpipicow]") -# add_compile_definitions(USE_TINYUSB) -# include_directories(/home/loek/.arduino15/packages/rp2040/hardware/rp2040/3.9.2/libraries/Adafruit_TinyUSB_Arduino/src/arduino) - -project(pb_mod_dummy C CXX) +project(pb_mod_neo C CXX)  add_subdirectory(lib/pbdrv)  add_subdirectory(lib/FreeRTOS-Kernel) @@ -45,7 +37,7 @@ target_link_arduino_libraries(main PUBLIC  	Adafruit_seesaw  	) -#Adafruit workarround +# fugly workaround  target_link_arduino_libraries(_arduino_lib_Adafruit_seesaw_Library PUBLIC "Adafruit BusIO")  target_enable_arduino_upload(main) diff --git a/puzzle/neo/index.dox b/puzzle/neo/index.dox index 14cefdc..87822e0 100644 --- a/puzzle/neo/index.dox +++ b/puzzle/neo/index.dox @@ -3,4 +3,12 @@  \ingroup puz  \defgroup puz_neo Neo  \brief NeoTrellis puzzle module + +\par Setup +- Use the Arduino IDE library manager to install the "Adafruit seesaw Library" +	library and its dependencies + +\warning There is another library named "Adafruit NeoTrellis M4 Library", this +is not the right library. +  */ diff --git a/puzzle/neo/makefile b/puzzle/neo/makefile index 509d8e3..26e9157 100644 --- a/puzzle/neo/makefile +++ b/puzzle/neo/makefile @@ -6,15 +6,3 @@ export SERIAL_PORT ?= /dev/ttyACM0  flash: upload-main;  upload-main: $(TARGET) -test: test_a test_b; - -test_a: -	$(MAKE) -C . clean -	$(MAKE) -E CMFLAGS+=-D\ CMAKE_CXX_FLAGS=-DTEST_A -C . -	$(MAKE) -E SERIAL_PORT=/dev/ttyACM0 -C . flash - -test_b: -	$(MAKE) -C . clean -	$(MAKE) -E CMFLAGS+=-D\ CMAKE_CXX_FLAGS=-DTEST_B -C . -	$(MAKE) -E SERIAL_PORT=/dev/ttyACM1 -C . flash - diff --git a/puzzle/neo/mod.c b/puzzle/neo/mod.c index 058a585..7157d22 100644 --- a/puzzle/neo/mod.c +++ b/puzzle/neo/mod.c @@ -1,6 +1,6 @@  #include "pb.h"  #include "pb-mod.h" -const char * PB_MOD_NAME = "dummy"; -const i2c_addr_t PB_MOD_ADDR = PB_ADDR_MOD_DUMMY; +const char * PB_MOD_NAME = "neotrellis"; +const i2c_addr_t PB_MOD_ADDR = PB_ADDR_MOD_NEOTRELLIS; diff --git a/puzzle/readme.md b/puzzle/readme.md index 21cddd3..1b572ba 100644 --- a/puzzle/readme.md +++ b/puzzle/readme.md @@ -1,29 +1,24 @@  \defgroup puz puzzle  \brief Puzzle modules -# puzzles - -This folder contains the source code for all puzzle modules. -  ## Arduino-based puzzle modules  > [!NOTE]  > Because of the poorly designed hardware (21-22) used during development  > (23-24), all puzzle modules ended up being developed using Arduino boards. -All libraries in this repository use CMake for building (for consistency), -which also means the Arduino based puzzle modules use CMake. The CMakeLists.txt -of some puzzles uses the [Arduino-CMake-Toolchain][arduino-cmake]. To build any -of these subfolders, make sure you have done the following: +The Arduino based puzzle modules also use CMake with the +[Arduino-CMake-Toolchain][arduino-cmake]. To build any of these puzzles, make +sure you have done the following:  - Install the official Arduino IDE  - Open "Tools" > "Board" > "Board manager"  - Install the "Arduino AVR Boards" package (1.8.6 works at the time of writing) -- Install the Adafruit seesaw library and dependicies (for the neotrellis puzzle) -- Install the TM1637 library from Avishay Orpaz  [arduino-cmake]: https://github.com/a9183756-gh/Arduino-CMake-Toolchain +<!-- +  ## ESP-based puzzle modules  ### ESP-IDF SDK Setup instructions @@ -36,3 +31,5 @@ of these subfolders, make sure you have done the following:     - [For windows](https://docs.espressif.com/projects/esp-idf/en/stable/esp32/get-started/windows-setup.html#get-started-windows-first-steps)     - [For Linux](https://docs.espressif.com/projects/esp-idf/en/stable/esp32/get-started/linux-macos-setup.html#get-started-linux-macos-first-steps) +--> + diff --git a/puzzle/vault/CMakeLists.txt b/puzzle/vault/CMakeLists.txt index b0f05f2..bc13c8c 100644 --- a/puzzle/vault/CMakeLists.txt +++ b/puzzle/vault/CMakeLists.txt @@ -7,26 +7,18 @@ set(CMAKE_EXPORT_COMPILE_COMMANDS 1)  # enable debug features  set(CMAKE_BUILD_TYPE Debug)  add_compile_definitions(DEBUG) -# add_compile_options(-O0) # no optimizations  # arduino  set(CMAKE_TOOLCHAIN_FILE ${CMAKE_SOURCE_DIR}/lib/Arduino-CMake-Toolchain/Arduino-toolchain.cmake) -# set(ARDUINO_BOARD "Arduino Uno [avr.uno]")  set(ARDUINO_BOARD "Arduino Mega or Mega 2560 [avr.mega]")  # freertos  add_library(freertos_config INTERFACE)  target_include_directories(freertos_config SYSTEM INTERFACE .) -# set(FREERTOS_PORT GCC_ATMEGA) # Arduino Uno -set(FREERTOS_PORT GCC_ATMEGA) # Arduino Uno +set(FREERTOS_PORT GCC_ATMEGA)  set(FREERTOS_HEAP 4) -# used for testing -# set(ARDUINO_BOARD "Raspberry Pi Pico W [rp2040.rpipicow]") -# add_compile_definitions(USE_TINYUSB) -# include_directories(/home/loek/.arduino15/packages/rp2040/hardware/rp2040/3.9.2/libraries/Adafruit_TinyUSB_Arduino/src/arduino) - -project(pb_mod_dummy C CXX) +project(pb_mod_vault C CXX)  add_subdirectory(lib/pbdrv)  add_subdirectory(lib/FreeRTOS-Kernel) diff --git a/puzzle/vault/index.dox b/puzzle/vault/index.dox index b14e616..15eae1f 100644 --- a/puzzle/vault/index.dox +++ b/puzzle/vault/index.dox @@ -3,4 +3,9 @@  \ingroup puz  \defgroup puz_vault Vault  \brief Vault puzzle module + +\par Setup +- Use the Arduino IDE library manager to install the "TM1637" library (by +	Avishay Orpaz) and its dependencies +  */ diff --git a/puzzle/vault/makefile b/puzzle/vault/makefile index 509d8e3..26e9157 100644 --- a/puzzle/vault/makefile +++ b/puzzle/vault/makefile @@ -6,15 +6,3 @@ export SERIAL_PORT ?= /dev/ttyACM0  flash: upload-main;  upload-main: $(TARGET) -test: test_a test_b; - -test_a: -	$(MAKE) -C . clean -	$(MAKE) -E CMFLAGS+=-D\ CMAKE_CXX_FLAGS=-DTEST_A -C . -	$(MAKE) -E SERIAL_PORT=/dev/ttyACM0 -C . flash - -test_b: -	$(MAKE) -C . clean -	$(MAKE) -E CMFLAGS+=-D\ CMAKE_CXX_FLAGS=-DTEST_B -C . -	$(MAKE) -E SERIAL_PORT=/dev/ttyACM1 -C . flash - diff --git a/puzzle/vault/mod.c b/puzzle/vault/mod.c index 058a585..bae8a3d 100644 --- a/puzzle/vault/mod.c +++ b/puzzle/vault/mod.c @@ -1,6 +1,6 @@  #include "pb.h"  #include "pb-mod.h" -const char * PB_MOD_NAME = "dummy"; -const i2c_addr_t PB_MOD_ADDR = PB_ADDR_MOD_DUMMY; +const char * PB_MOD_NAME = "vault"; +const i2c_addr_t PB_MOD_ADDR = PB_ADDR_MOD_VAULT; |