From 057896899c6e54f920ab4111b8fad2c20e032b12 Mon Sep 17 00:00:00 2001 From: Salam <124652815+SalamCytron@users.noreply.github.com> Date: Tue, 27 Aug 2024 22:08:48 +0800 Subject: [PATCH] Add motion 2350 pro (#2372) * Added motion 2350 pro. * generated boards.txt * adjusted the f_cpu * Added Cytron Motion 2350 Pro to README.md * Update pins_arduino.h --- README.md | 1 + boards.txt | 229 ++++++++++++++++++ package/package_pico_index.template.json | 3 + tools/json/cytron_motion_2350_pro.json | 56 +++++ tools/makeboards.py | 1 + .../cytron_motion_2350_pro/pins_arduino.h | 62 +++++ 6 files changed, 352 insertions(+) create mode 100644 tools/json/cytron_motion_2350_pro.json create mode 100644 variants/cytron_motion_2350_pro/pins_arduino.h diff --git a/README.md b/README.md index 9f7ae83..bd02109 100644 --- a/README.md +++ b/README.md @@ -39,6 +39,7 @@ Read the [Contributing Guide](https://github.com/earlephilhower/arduino-pico/blo * Cytron Maker Pi RP2040 * Cytron Maker Nano RP2040 * Cytron Maker Uno RP2040 +* Cytron Motion 2350 Pro * DatanoiseTV PicoADK+ * Degz Suibo RP2040 * DeRuiLab FlyBoard2040 Core diff --git a/boards.txt b/boards.txt index 2edb445..1049934 100644 --- a/boards.txt +++ b/boards.txt @@ -9897,6 +9897,235 @@ cytron_maker_uno_rp2040.menu.uploadmethod.picodebug.upload.maximum_data_size=245 cytron_maker_uno_rp2040.menu.uploadmethod.picodebug.upload.tool=picodebug cytron_maker_uno_rp2040.menu.uploadmethod.picodebug.upload.tool.default=picodebug +# ----------------------------------- +# Cytron Motion 2350 Pro +# ----------------------------------- +cytron_motion_2350_pro.name=Cytron Motion 2350 Pro +cytron_motion_2350_pro.vid.0=0x2e8a +cytron_motion_2350_pro.pid.0=0x1096 +cytron_motion_2350_pro.vid.1=0x2e8a +cytron_motion_2350_pro.pid.1=0x1196 +cytron_motion_2350_pro.vid.2=0x2e8a +cytron_motion_2350_pro.pid.2=0x5096 +cytron_motion_2350_pro.vid.3=0x2e8a +cytron_motion_2350_pro.pid.3=0x5196 +cytron_motion_2350_pro.vid.4=0x2e8a +cytron_motion_2350_pro.pid.4=0x9096 +cytron_motion_2350_pro.vid.5=0x2e8a +cytron_motion_2350_pro.pid.5=0x9196 +cytron_motion_2350_pro.vid.6=0x2e8a +cytron_motion_2350_pro.pid.6=0xd096 +cytron_motion_2350_pro.vid.7=0x2e8a +cytron_motion_2350_pro.pid.7=0xd196 +cytron_motion_2350_pro.upload_port.0.vid=0x2e8a +cytron_motion_2350_pro.upload_port.0.pid=0x1096 +cytron_motion_2350_pro.upload_port.1.vid=0x2e8a +cytron_motion_2350_pro.upload_port.1.pid=0x1196 +cytron_motion_2350_pro.upload_port.2.vid=0x2e8a +cytron_motion_2350_pro.upload_port.2.pid=0x5096 +cytron_motion_2350_pro.upload_port.3.vid=0x2e8a +cytron_motion_2350_pro.upload_port.3.pid=0x5196 +cytron_motion_2350_pro.upload_port.4.vid=0x2e8a +cytron_motion_2350_pro.upload_port.4.pid=0x9096 +cytron_motion_2350_pro.upload_port.5.vid=0x2e8a +cytron_motion_2350_pro.upload_port.5.pid=0x9196 +cytron_motion_2350_pro.upload_port.6.vid=0x2e8a +cytron_motion_2350_pro.upload_port.6.pid=0xd096 +cytron_motion_2350_pro.upload_port.7.vid=0x2e8a +cytron_motion_2350_pro.upload_port.7.pid=0xd196 +cytron_motion_2350_pro.build.usbvid=-DUSBD_VID=0x2e8a +cytron_motion_2350_pro.build.usbpid=-DUSBD_PID=0x1096 +cytron_motion_2350_pro.build.usbpwr=-DUSBD_MAX_POWER_MA=250 +cytron_motion_2350_pro.build.board=CYTRON_MOTION_2350_PRO +cytron_motion_2350_pro.build.chip=rp2350 +cytron_motion_2350_pro.build.toolchain=arm-none-eabi +cytron_motion_2350_pro.build.toolchainopts=-mcpu=cortex-m33 -mthumb -march=armv8-m.main+fp+dsp -mfloat-abi=softfp -mcmse +cytron_motion_2350_pro.build.uf2family=--family rp2350-arm-s --abs-block +cytron_motion_2350_pro.build.variant=cytron_motion_2350_pro +cytron_motion_2350_pro.upload.maximum_size=2097152 +cytron_motion_2350_pro.upload.wait_for_upload_port=true +cytron_motion_2350_pro.upload.erase_cmd= +cytron_motion_2350_pro.serial.disableDTR=false +cytron_motion_2350_pro.serial.disableRTS=false +cytron_motion_2350_pro.build.f_cpu=125000000 +cytron_motion_2350_pro.build.led= +cytron_motion_2350_pro.build.core=rp2040 +cytron_motion_2350_pro.build.ldscript=memmap_default.ld +cytron_motion_2350_pro.build.boot2=boot2_generic_03h_2_padded_checksum +cytron_motion_2350_pro.build.usb_manufacturer="Cytron" +cytron_motion_2350_pro.build.usb_product="Motion 2350 Pro" +cytron_motion_2350_pro.build.psram_length=0x000000 +cytron_motion_2350_pro.menu.flash.2097152_0=2MB (no FS) +cytron_motion_2350_pro.menu.flash.2097152_0.upload.maximum_size=2088960 +cytron_motion_2350_pro.menu.flash.2097152_0.build.flash_total=2097152 +cytron_motion_2350_pro.menu.flash.2097152_0.build.flash_length=2088960 +cytron_motion_2350_pro.menu.flash.2097152_0.build.eeprom_start=270524416 +cytron_motion_2350_pro.menu.flash.2097152_0.build.fs_start=270524416 +cytron_motion_2350_pro.menu.flash.2097152_0.build.fs_end=270524416 +cytron_motion_2350_pro.menu.flash.2097152_65536=2MB (Sketch: 1984KB, FS: 64KB) +cytron_motion_2350_pro.menu.flash.2097152_65536.upload.maximum_size=2023424 +cytron_motion_2350_pro.menu.flash.2097152_65536.build.flash_total=2097152 +cytron_motion_2350_pro.menu.flash.2097152_65536.build.flash_length=2023424 +cytron_motion_2350_pro.menu.flash.2097152_65536.build.eeprom_start=270524416 +cytron_motion_2350_pro.menu.flash.2097152_65536.build.fs_start=270458880 +cytron_motion_2350_pro.menu.flash.2097152_65536.build.fs_end=270524416 +cytron_motion_2350_pro.menu.flash.2097152_131072=2MB (Sketch: 1920KB, FS: 128KB) +cytron_motion_2350_pro.menu.flash.2097152_131072.upload.maximum_size=1957888 +cytron_motion_2350_pro.menu.flash.2097152_131072.build.flash_total=2097152 +cytron_motion_2350_pro.menu.flash.2097152_131072.build.flash_length=1957888 +cytron_motion_2350_pro.menu.flash.2097152_131072.build.eeprom_start=270524416 +cytron_motion_2350_pro.menu.flash.2097152_131072.build.fs_start=270393344 +cytron_motion_2350_pro.menu.flash.2097152_131072.build.fs_end=270524416 +cytron_motion_2350_pro.menu.flash.2097152_262144=2MB (Sketch: 1792KB, FS: 256KB) +cytron_motion_2350_pro.menu.flash.2097152_262144.upload.maximum_size=1826816 +cytron_motion_2350_pro.menu.flash.2097152_262144.build.flash_total=2097152 +cytron_motion_2350_pro.menu.flash.2097152_262144.build.flash_length=1826816 +cytron_motion_2350_pro.menu.flash.2097152_262144.build.eeprom_start=270524416 +cytron_motion_2350_pro.menu.flash.2097152_262144.build.fs_start=270262272 +cytron_motion_2350_pro.menu.flash.2097152_262144.build.fs_end=270524416 +cytron_motion_2350_pro.menu.flash.2097152_524288=2MB (Sketch: 1536KB, FS: 512KB) +cytron_motion_2350_pro.menu.flash.2097152_524288.upload.maximum_size=1564672 +cytron_motion_2350_pro.menu.flash.2097152_524288.build.flash_total=2097152 +cytron_motion_2350_pro.menu.flash.2097152_524288.build.flash_length=1564672 +cytron_motion_2350_pro.menu.flash.2097152_524288.build.eeprom_start=270524416 +cytron_motion_2350_pro.menu.flash.2097152_524288.build.fs_start=270000128 +cytron_motion_2350_pro.menu.flash.2097152_524288.build.fs_end=270524416 +cytron_motion_2350_pro.menu.flash.2097152_1048576=2MB (Sketch: 1MB, FS: 1MB) +cytron_motion_2350_pro.menu.flash.2097152_1048576.upload.maximum_size=1040384 +cytron_motion_2350_pro.menu.flash.2097152_1048576.build.flash_total=2097152 +cytron_motion_2350_pro.menu.flash.2097152_1048576.build.flash_length=1040384 +cytron_motion_2350_pro.menu.flash.2097152_1048576.build.eeprom_start=270524416 +cytron_motion_2350_pro.menu.flash.2097152_1048576.build.fs_start=269475840 +cytron_motion_2350_pro.menu.flash.2097152_1048576.build.fs_end=270524416 +cytron_motion_2350_pro.menu.freq.150=150 MHz +cytron_motion_2350_pro.menu.freq.150.build.f_cpu=150000000L +cytron_motion_2350_pro.menu.freq.50=50 MHz +cytron_motion_2350_pro.menu.freq.50.build.f_cpu=50000000L +cytron_motion_2350_pro.menu.freq.100=100 MHz +cytron_motion_2350_pro.menu.freq.100.build.f_cpu=100000000L +cytron_motion_2350_pro.menu.freq.120=120 MHz +cytron_motion_2350_pro.menu.freq.120.build.f_cpu=120000000L +cytron_motion_2350_pro.menu.freq.125=125 MHz +cytron_motion_2350_pro.menu.freq.125.build.f_cpu=125000000L +cytron_motion_2350_pro.menu.freq.128=128 MHz +cytron_motion_2350_pro.menu.freq.128.build.f_cpu=128000000L +cytron_motion_2350_pro.menu.freq.133=133 MHz +cytron_motion_2350_pro.menu.freq.133.build.f_cpu=133000000L +cytron_motion_2350_pro.menu.freq.175=175 MHz (Overclock) +cytron_motion_2350_pro.menu.freq.175.build.f_cpu=175000000L +cytron_motion_2350_pro.menu.freq.200=200 MHz (Overclock) +cytron_motion_2350_pro.menu.freq.200.build.f_cpu=200000000L +cytron_motion_2350_pro.menu.freq.225=225 MHz (Overclock) +cytron_motion_2350_pro.menu.freq.225.build.f_cpu=225000000L +cytron_motion_2350_pro.menu.freq.240=240 MHz (Overclock) +cytron_motion_2350_pro.menu.freq.240.build.f_cpu=240000000L +cytron_motion_2350_pro.menu.freq.250=250 MHz (Overclock) +cytron_motion_2350_pro.menu.freq.250.build.f_cpu=250000000L +cytron_motion_2350_pro.menu.freq.275=275 MHz (Overclock) +cytron_motion_2350_pro.menu.freq.275.build.f_cpu=275000000L +cytron_motion_2350_pro.menu.freq.300=300 MHz (Overclock) +cytron_motion_2350_pro.menu.freq.300.build.f_cpu=300000000L +cytron_motion_2350_pro.menu.opt.Small=Small (-Os) (standard) +cytron_motion_2350_pro.menu.opt.Small.build.flags.optimize=-Os +cytron_motion_2350_pro.menu.opt.Optimize=Optimize (-O) +cytron_motion_2350_pro.menu.opt.Optimize.build.flags.optimize=-O +cytron_motion_2350_pro.menu.opt.Optimize2=Optimize More (-O2) +cytron_motion_2350_pro.menu.opt.Optimize2.build.flags.optimize=-O2 +cytron_motion_2350_pro.menu.opt.Optimize3=Optimize Even More (-O3) +cytron_motion_2350_pro.menu.opt.Optimize3.build.flags.optimize=-O3 +cytron_motion_2350_pro.menu.opt.Fast=Fast (-Ofast) (maybe slower) +cytron_motion_2350_pro.menu.opt.Fast.build.flags.optimize=-Ofast +cytron_motion_2350_pro.menu.opt.Debug=Debug (-Og) +cytron_motion_2350_pro.menu.opt.Debug.build.flags.optimize=-Og +cytron_motion_2350_pro.menu.rtti.Disabled=Disabled +cytron_motion_2350_pro.menu.rtti.Disabled.build.flags.rtti=-fno-rtti +cytron_motion_2350_pro.menu.rtti.Enabled=Enabled +cytron_motion_2350_pro.menu.rtti.Enabled.build.flags.rtti= +cytron_motion_2350_pro.menu.stackprotect.Disabled=Disabled +cytron_motion_2350_pro.menu.stackprotect.Disabled.build.flags.stackprotect= +cytron_motion_2350_pro.menu.stackprotect.Enabled=Enabled +cytron_motion_2350_pro.menu.stackprotect.Enabled.build.flags.stackprotect=-fstack-protector +cytron_motion_2350_pro.menu.exceptions.Disabled=Disabled +cytron_motion_2350_pro.menu.exceptions.Disabled.build.flags.exceptions=-fno-exceptions +cytron_motion_2350_pro.menu.exceptions.Disabled.build.flags.libstdcpp=-lstdc++ +cytron_motion_2350_pro.menu.exceptions.Enabled=Enabled +cytron_motion_2350_pro.menu.exceptions.Enabled.build.flags.exceptions=-fexceptions +cytron_motion_2350_pro.menu.exceptions.Enabled.build.flags.libstdcpp=-lstdc++-exc +cytron_motion_2350_pro.menu.dbgport.Disabled=Disabled +cytron_motion_2350_pro.menu.dbgport.Disabled.build.debug_port= +cytron_motion_2350_pro.menu.dbgport.Serial=Serial +cytron_motion_2350_pro.menu.dbgport.Serial.build.debug_port=-DDEBUG_RP2040_PORT=Serial +cytron_motion_2350_pro.menu.dbgport.Serial1=Serial1 +cytron_motion_2350_pro.menu.dbgport.Serial1.build.debug_port=-DDEBUG_RP2040_PORT=Serial1 +cytron_motion_2350_pro.menu.dbgport.Serial2=Serial2 +cytron_motion_2350_pro.menu.dbgport.Serial2.build.debug_port=-DDEBUG_RP2040_PORT=Serial2 +cytron_motion_2350_pro.menu.dbglvl.None=None +cytron_motion_2350_pro.menu.dbglvl.None.build.debug_level= +cytron_motion_2350_pro.menu.dbglvl.Core=Core +cytron_motion_2350_pro.menu.dbglvl.Core.build.debug_level=-DDEBUG_RP2040_CORE +cytron_motion_2350_pro.menu.dbglvl.SPI=SPI +cytron_motion_2350_pro.menu.dbglvl.SPI.build.debug_level=-DDEBUG_RP2040_SPI +cytron_motion_2350_pro.menu.dbglvl.Wire=Wire +cytron_motion_2350_pro.menu.dbglvl.Wire.build.debug_level=-DDEBUG_RP2040_WIRE +cytron_motion_2350_pro.menu.dbglvl.Bluetooth=Bluetooth +cytron_motion_2350_pro.menu.dbglvl.Bluetooth.build.debug_level=-DDEBUG_RP2040_BLUETOOTH +cytron_motion_2350_pro.menu.dbglvl.All=All +cytron_motion_2350_pro.menu.dbglvl.All.build.debug_level=-DDEBUG_RP2040_WIRE -DDEBUG_RP2040_SPI -DDEBUG_RP2040_CORE -DDEBUG_RP2040_BLUETOOTH +cytron_motion_2350_pro.menu.dbglvl.NDEBUG=NDEBUG +cytron_motion_2350_pro.menu.dbglvl.NDEBUG.build.debug_level=-DNDEBUG +cytron_motion_2350_pro.menu.usbstack.picosdk=Pico SDK +cytron_motion_2350_pro.menu.usbstack.picosdk.build.usbstack_flags= +cytron_motion_2350_pro.menu.usbstack.tinyusb=Adafruit TinyUSB +cytron_motion_2350_pro.menu.usbstack.tinyusb.build.usbstack_flags=-DUSE_TINYUSB "-I{runtime.platform.path}/libraries/Adafruit_TinyUSB_Arduino/src/arduino" +cytron_motion_2350_pro.menu.usbstack.tinyusb_host=Adafruit TinyUSB Host (native) +cytron_motion_2350_pro.menu.usbstack.tinyusb_host.build.usbstack_flags=-DUSE_TINYUSB -DUSE_TINYUSB_HOST "-I{runtime.platform.path}/libraries/Adafruit_TinyUSB_Arduino/src/arduino" +cytron_motion_2350_pro.menu.usbstack.nousb=No USB +cytron_motion_2350_pro.menu.usbstack.nousb.build.usbstack_flags="-DNO_USB -DDISABLE_USB_SERIAL -I{runtime.platform.path}/tools/libpico" +cytron_motion_2350_pro.menu.ipbtstack.ipv4only=IPv4 Only +cytron_motion_2350_pro.menu.ipbtstack.ipv4only.build.libpicow=libipv4.a +cytron_motion_2350_pro.menu.ipbtstack.ipv4only.build.libpicowdefs=-DLWIP_IPV6=0 -DLWIP_IPV4=1 +cytron_motion_2350_pro.menu.ipbtstack.ipv4ipv6=IPv4 + IPv6 +cytron_motion_2350_pro.menu.ipbtstack.ipv4ipv6.build.libpicow=libipv4-ipv6.a +cytron_motion_2350_pro.menu.ipbtstack.ipv4ipv6.build.libpicowdefs=-DLWIP_IPV6=1 -DLWIP_IPV4=1 +cytron_motion_2350_pro.menu.ipbtstack.ipv4btcble=IPv4 + Bluetooth +cytron_motion_2350_pro.menu.ipbtstack.ipv4btcble.build.libpicow=libipv4-bt.a +cytron_motion_2350_pro.menu.ipbtstack.ipv4btcble.build.libpicowdefs=-DLWIP_IPV6=0 -DLWIP_IPV4=1 -DENABLE_CLASSIC=1 -DENABLE_BLE=1 +cytron_motion_2350_pro.menu.ipbtstack.ipv4ipv6btcble=IPv4 + IPv6 + Bluetooth +cytron_motion_2350_pro.menu.ipbtstack.ipv4ipv6btcble.build.libpicow=libipv4-ipv6-bt.a +cytron_motion_2350_pro.menu.ipbtstack.ipv4ipv6btcble.build.libpicowdefs=-DLWIP_IPV6=1 -DLWIP_IPV4=1 -DENABLE_CLASSIC=1 -DENABLE_BLE=1 +cytron_motion_2350_pro.menu.ipbtstack.ipv4onlybig=IPv4 Only - 32K +cytron_motion_2350_pro.menu.ipbtstack.ipv4onlybig.build.libpicow=libipv4-big.a +cytron_motion_2350_pro.menu.ipbtstack.ipv4onlybig.build.libpicowdefs=-DLWIP_IPV6=0 -DLWIP_IPV4=1 -D__LWIP_MEMMULT=2 +cytron_motion_2350_pro.menu.ipbtstack.ipv4ipv6big=IPv4 + IPv6 - 32K +cytron_motion_2350_pro.menu.ipbtstack.ipv4ipv6big.build.libpicow=libipv4-ipv6-big.a +cytron_motion_2350_pro.menu.ipbtstack.ipv4ipv6big.build.libpicowdefs=-DLWIP_IPV6=1 -DLWIP_IPV4=1 -D__LWIP_MEMMULT=2 +cytron_motion_2350_pro.menu.ipbtstack.ipv4btcblebig=IPv4 + Bluetooth - 32K +cytron_motion_2350_pro.menu.ipbtstack.ipv4btcblebig.build.libpicow=libipv4-bt-big.a +cytron_motion_2350_pro.menu.ipbtstack.ipv4btcblebig.build.libpicowdefs=-DLWIP_IPV6=0 -DLWIP_IPV4=1 -DENABLE_CLASSIC=1 -DENABLE_BLE=1 -D__LWIP_MEMMULT=2 +cytron_motion_2350_pro.menu.ipbtstack.ipv4ipv6btcblebig=IPv4 + IPv6 + Bluetooth - 32K +cytron_motion_2350_pro.menu.ipbtstack.ipv4ipv6btcblebig.build.libpicow=libipv4-ipv6-bt-big.a +cytron_motion_2350_pro.menu.ipbtstack.ipv4ipv6btcblebig.build.libpicowdefs=-DLWIP_IPV6=1 -DLWIP_IPV4=1 -DENABLE_CLASSIC=1 -DENABLE_BLE=1 -D__LWIP_MEMMULT=2 +cytron_motion_2350_pro.menu.uploadmethod.default=Default (UF2) +cytron_motion_2350_pro.menu.uploadmethod.default.build.ram_length=512k +cytron_motion_2350_pro.menu.uploadmethod.default.build.debugscript=picoprobe_cmsis_dap.tcl +cytron_motion_2350_pro.menu.uploadmethod.default.upload.maximum_data_size=524288 +cytron_motion_2350_pro.menu.uploadmethod.default.upload.tool=uf2conv +cytron_motion_2350_pro.menu.uploadmethod.default.upload.tool.default=uf2conv +cytron_motion_2350_pro.menu.uploadmethod.default.upload.tool.network=uf2conv-network +cytron_motion_2350_pro.menu.uploadmethod.picotool=Picotool +cytron_motion_2350_pro.menu.uploadmethod.picotool.build.ram_length=512k +cytron_motion_2350_pro.menu.uploadmethod.picotool.build.debugscript=picoprobe.tcl +cytron_motion_2350_pro.menu.uploadmethod.picotool.build.picodebugflags=-DENABLE_PICOTOOL_USB +cytron_motion_2350_pro.menu.uploadmethod.picotool.upload.maximum_data_size=524288 +cytron_motion_2350_pro.menu.uploadmethod.picotool.upload.tool=picotool +cytron_motion_2350_pro.menu.uploadmethod.picotool.upload.tool.default=picotool +cytron_motion_2350_pro.menu.uploadmethod.picoprobe_cmsis_dap=Picoprobe/Debugprobe (CMSIS-DAP) +cytron_motion_2350_pro.menu.uploadmethod.picoprobe_cmsis_dap.build.ram_length=512k +cytron_motion_2350_pro.menu.uploadmethod.picoprobe_cmsis_dap.build.debugscript=picoprobe_cmsis_dap.tcl +cytron_motion_2350_pro.menu.uploadmethod.picoprobe_cmsis_dap.upload.maximum_data_size=524288 +cytron_motion_2350_pro.menu.uploadmethod.picoprobe_cmsis_dap.upload.tool=picoprobe_cmsis_dap +cytron_motion_2350_pro.menu.uploadmethod.picoprobe_cmsis_dap.upload.tool.default=picoprobe_cmsis_dap + # ----------------------------------- # DatanoiseTV PicoADK # ----------------------------------- diff --git a/package/package_pico_index.template.json b/package/package_pico_index.template.json index 6dc7d82..f8e603d 100644 --- a/package/package_pico_index.template.json +++ b/package/package_pico_index.template.json @@ -116,6 +116,9 @@ { "name": "Cytron Maker Uno RP2040" }, + { + "name": "Cytron Motion 2350 Pro" + }, { "name": "DatanoiseTV PicoADK" }, diff --git a/tools/json/cytron_motion_2350_pro.json b/tools/json/cytron_motion_2350_pro.json new file mode 100644 index 0000000..770604c --- /dev/null +++ b/tools/json/cytron_motion_2350_pro.json @@ -0,0 +1,56 @@ +{ + "build": { + "arduino": { + "earlephilhower": { + "boot2_source": "boot2_generic_03h_2_padded_checksum.S", + "usb_vid": "0x2E8A", + "usb_pid": "0x1096" + } + }, + "core": "earlephilhower", + "cpu": "cortex-m33", + "extra_flags": "-DARDUINO_CYTRON_MOTION_2350_PRO -DARDUINO_ARCH_RP2040 -DUSBD_MAX_POWER_MA=250 ", + "f_cpu": "150000000L", + "hwids": [ + [ + "0x2E8A", + "0x00C0" + ], + [ + "0x2E8A", + "0x1096" + ] + ], + "mcu": "rp2350", + "variant": "cytron_motion_2350_pro" + }, + "debug": { + "jlink_device": "RP2350_0", + "openocd_target": "rp2350.cfg", + "svd_path": "rp2350.svd" + }, + "frameworks": [ + "arduino" + ], + "name": "Motion 2350 Pro", + "upload": { + "maximum_ram_size": 524288, + "maximum_size": 2097152, + "require_upload_port": true, + "native_usb": true, + "use_1200bps_touch": true, + "wait_for_upload_port": false, + "protocol": "picotool", + "protocols": [ + "blackmagic", + "cmsis-dap", + "jlink", + "raspberrypi-swd", + "picotool", + "picoprobe", + "pico-debug" + ] + }, + "url": "https://www.raspberrypi.org/products/raspberry-pi-pico/", + "vendor": "Cytron" +} \ No newline at end of file diff --git a/tools/makeboards.py b/tools/makeboards.py index 35d4aa1..26cb278 100755 --- a/tools/makeboards.py +++ b/tools/makeboards.py @@ -480,6 +480,7 @@ MakeBoard("cytron_iriv_io_controller", "rp2350", "Cytron", "IRIV IO Controller", MakeBoard("cytron_maker_nano_rp2040", "rp2040", "Cytron", "Maker Nano RP2040", "0x2e8a", "0x100f", 250, "CYTRON_MAKER_NANO_RP2040", 2, 0, "boot2_w25q080_2_padded_checksum") MakeBoard("cytron_maker_pi_rp2040", "rp2040", "Cytron", "Maker Pi RP2040", "0x2e8a", "0x1000", 250, "CYTRON_MAKER_PI_RP2040", 2, 0, "boot2_w25q080_2_padded_checksum") MakeBoard("cytron_maker_uno_rp2040", "rp2040", "Cytron", "Maker Uno RP2040", "0x2e8a", "0x1071", 250, "CYTRON_MAKER_UNO_RP2040", 2, 0, "boot2_w25q080_2_padded_checksum") +MakeBoard("cytron_motion_2350_pro", "rp2350", "Cytron", "Motion 2350 Pro", "0x2e8a", "0x1096", 250, "CYTRON_MOTION_2350_PRO", 2, 0, "boot2_generic_03h_2_padded_checksum") # DatanoiseTV MakeBoard("datanoisetv_picoadk", "rp2040", "DatanoiseTV", "PicoADK", "0x2e8a", "0x000a", 250, "DATANOISETV_PICOADK", 2, 0, "boot2_w25q080_2_padded_checksum") diff --git a/variants/cytron_motion_2350_pro/pins_arduino.h b/variants/cytron_motion_2350_pro/pins_arduino.h new file mode 100644 index 0000000..d93b5ff --- /dev/null +++ b/variants/cytron_motion_2350_pro/pins_arduino.h @@ -0,0 +1,62 @@ +#pragma once + +// LEDs +#define PIN_LED (2u) + +// Neopixel +#define PIN_NEOPIXEL (23u) +#define NUM_NEOPIXEL (2u) +#define PIN_RGB PIN_NEOPIXEL + +// USB host connector +#define PIN_USB_HOST_DP (24u) +#define PIN_USB_HOST_DM (25u) + +// Buzzer +#define PIN_BUZZER (22u) + +// Motor Driver +#define PIN_M1A (8u) +#define PIN_M1B (9u) +#define PIN_M2A (10u) +#define PIN_M2B (11u) +#define PIN_M3A (12u) +#define PIN_M3B (13u) +#define PIN_M4A (14u) +#define PIN_M4B (15u) + +// Voltage Monitor +#define PIN_VOLTAGE_MONITOR (29u) + +// Serial +#define PIN_SERIAL1_TX (0u) +#define PIN_SERIAL1_RX (1u) + +// Not pinned out +#define PIN_SERIAL2_TX (31u) +#define PIN_SERIAL2_RX (31u) + +// SPI +#define PIN_SPI0_MISO (4u) +#define PIN_SPI0_MOSI (7u) +#define PIN_SPI0_SCK (6u) +#define PIN_SPI0_SS (5u) + +// Not pinned out +#define PIN_SPI1_MISO (31u) +#define PIN_SPI1_MOSI (31u) +#define PIN_SPI1_SCK (31u) +#define PIN_SPI1_SS (31u) + +// Wire +#define PIN_WIRE0_SDA (16u) +#define PIN_WIRE0_SCL (17u) + +#define PIN_WIRE1_SDA (26u) +#define PIN_WIRE1_SCL (27u) + +#define SERIAL_HOWMANY (1u) +#define SPI_HOWMANY (1u) +#define WIRE_HOWMANY (2u) + +#include "../generic/common.h"