aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLoek Le Blansch <loek@pipeframe.xyz>2024-06-23 14:16:41 +0200
committerLoek Le Blansch <loek@pipeframe.xyz>2024-06-23 14:16:41 +0200
commit77aba570a3a94cdcf78e82dc0ebbff0c3dde41d1 (patch)
tree4bd27c849d168877a6ad66e7e44d930a6ca25a1d
parente22d67e4ac0c03f8e05ae887b62791ce57e8818c (diff)
clean up documentation for puzzle modules
-rw-r--r--puzzle/dummy/CMakeLists.txt3
-rw-r--r--puzzle/dummy/makefile12
-rw-r--r--puzzle/neo/CMakeLists.txt14
-rw-r--r--puzzle/neo/index.dox8
-rw-r--r--puzzle/neo/makefile12
-rw-r--r--puzzle/neo/mod.c4
-rw-r--r--puzzle/readme.md17
-rw-r--r--puzzle/vault/CMakeLists.txt12
-rw-r--r--puzzle/vault/index.dox5
-rw-r--r--puzzle/vault/makefile12
-rw-r--r--puzzle/vault/mod.c4
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;