From 33496e9c68a33028e472defdcda7fff35b7db8b0 Mon Sep 17 00:00:00 2001 From: Nick Date: Fri, 5 Jun 2020 19:58:54 -0500 Subject: [PATCH 1/7] Add nice!nano board support --- .github/workflows/build.yml | 1 + ports/nrf/boards/nice_nano/board.c | 38 +++++++++++++ ports/nrf/boards/nice_nano/mpconfigboard.h | 45 ++++++++++++++++ ports/nrf/boards/nice_nano/mpconfigboard.mk | 8 +++ ports/nrf/boards/nice_nano/pins.c | 60 +++++++++++++++++++++ 5 files changed, 152 insertions(+) create mode 100644 ports/nrf/boards/nice_nano/board.c create mode 100644 ports/nrf/boards/nice_nano/mpconfigboard.h create mode 100644 ports/nrf/boards/nice_nano/mpconfigboard.mk create mode 100644 ports/nrf/boards/nice_nano/pins.c diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 0719b40e94..00454cc2da 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -205,6 +205,7 @@ jobs: - "monster_m4sk" - "ndgarage_ndbit6" - "nfc_copy_cat" + - "nice_nano" - "nucleo_f746zg" - "nucleo_f767zi" - "nucleo_h743zi_2" diff --git a/ports/nrf/boards/nice_nano/board.c b/ports/nrf/boards/nice_nano/board.c new file mode 100644 index 0000000000..4421970eef --- /dev/null +++ b/ports/nrf/boards/nice_nano/board.c @@ -0,0 +1,38 @@ +/* + * This file is part of the MicroPython project, http://micropython.org/ + * + * The MIT License (MIT) + * + * Copyright (c) 2017 Scott Shawcroft for Adafruit Industries + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#include "boards/board.h" + +void board_init(void) { +} + +bool board_requests_safe_mode(void) { + return false; +} + +void reset_board(void) { + +} diff --git a/ports/nrf/boards/nice_nano/mpconfigboard.h b/ports/nrf/boards/nice_nano/mpconfigboard.h new file mode 100644 index 0000000000..5f61947007 --- /dev/null +++ b/ports/nrf/boards/nice_nano/mpconfigboard.h @@ -0,0 +1,45 @@ +/* + * This file is part of the MicroPython project, http://micropython.org/ + * + * The MIT License (MIT) + * + * Copyright (c) 2016 Glenn Ruben Bakke + * Copyright (c) 2018 Dan Halbert for Adafruit Industries + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#include "nrfx/hal/nrf_gpio.h" + +#define MICROPY_HW_BOARD_NAME "nice!nano" +#define MICROPY_HW_MCU_NAME "nRF52840" + +#define MICROPY_HW_LED_STATUS (&pin_P0_15) + +#define BOARD_HAS_CRYSTAL 1 + +#define DEFAULT_I2C_BUS_SCL (&pin_P0_20) +#define DEFAULT_I2C_BUS_SDA (&pin_P0_17) + +#define DEFAULT_SPI_BUS_SCK (&pin_P1_13) +#define DEFAULT_SPI_BUS_MOSI (&pin_P0_10) +#define DEFAULT_SPI_BUS_MISO (&pin_P1_11) + +#define DEFAULT_UART_BUS_RX (&pin_P0_08) +#define DEFAULT_UART_BUS_TX (&pin_P0_06) diff --git a/ports/nrf/boards/nice_nano/mpconfigboard.mk b/ports/nrf/boards/nice_nano/mpconfigboard.mk new file mode 100644 index 0000000000..511a754e69 --- /dev/null +++ b/ports/nrf/boards/nice_nano/mpconfigboard.mk @@ -0,0 +1,8 @@ +USB_VID = 0x239A +USB_PID = 0x80B4 +USB_PRODUCT = "nice!nano" +USB_MANUFACTURER = "Nice Keyboards" + +MCU_CHIP = nrf52840 + +INTERNAL_FLASH_FILESYSTEM = 1 diff --git a/ports/nrf/boards/nice_nano/pins.c b/ports/nrf/boards/nice_nano/pins.c new file mode 100644 index 0000000000..98c1251fe3 --- /dev/null +++ b/ports/nrf/boards/nice_nano/pins.c @@ -0,0 +1,60 @@ +#include "shared-bindings/board/__init__.h" + +STATIC const mp_rom_map_elem_t board_module_globals_table[] = { + { MP_ROM_QSTR(MP_QSTR_P0_02), MP_ROM_PTR(&pin_P0_02) }, + { MP_ROM_QSTR(MP_QSTR_P0_04), MP_ROM_PTR(&pin_P0_04) }, + { MP_ROM_QSTR(MP_QSTR_P0_06), MP_ROM_PTR(&pin_P0_06) }, + { MP_ROM_QSTR(MP_QSTR_P0_08), MP_ROM_PTR(&pin_P0_08) }, + { MP_ROM_QSTR(MP_QSTR_P0_09), MP_ROM_PTR(&pin_P0_09) }, + { MP_ROM_QSTR(MP_QSTR_P0_10), MP_ROM_PTR(&pin_P0_10) }, + { MP_ROM_QSTR(MP_QSTR_P0_11), MP_ROM_PTR(&pin_P0_11) }, + { MP_ROM_QSTR(MP_QSTR_P0_12), MP_ROM_PTR(&pin_P0_12) }, + { MP_ROM_QSTR(MP_QSTR_P0_13), MP_ROM_PTR(&pin_P0_13) }, + { MP_ROM_QSTR(MP_QSTR_P0_15), MP_ROM_PTR(&pin_P0_15) }, + { MP_ROM_QSTR(MP_QSTR_P0_17), MP_ROM_PTR(&pin_P0_17) }, + { MP_ROM_QSTR(MP_QSTR_P0_20), MP_ROM_PTR(&pin_P0_20) }, + { MP_ROM_QSTR(MP_QSTR_P0_22), MP_ROM_PTR(&pin_P0_22) }, + { MP_ROM_QSTR(MP_QSTR_P0_24), MP_ROM_PTR(&pin_P0_24) }, + { MP_ROM_QSTR(MP_QSTR_P0_26), MP_ROM_PTR(&pin_P0_26) }, + { MP_ROM_QSTR(MP_QSTR_P0_29), MP_ROM_PTR(&pin_P0_29) }, + { MP_ROM_QSTR(MP_QSTR_P0_31), MP_ROM_PTR(&pin_P0_31) }, + { MP_ROM_QSTR(MP_QSTR_P1_00), MP_ROM_PTR(&pin_P1_00) }, + { MP_ROM_QSTR(MP_QSTR_P1_01), MP_ROM_PTR(&pin_P1_01) }, + { MP_ROM_QSTR(MP_QSTR_P1_02), MP_ROM_PTR(&pin_P1_02) }, + { MP_ROM_QSTR(MP_QSTR_P1_04), MP_ROM_PTR(&pin_P1_04) }, + { MP_ROM_QSTR(MP_QSTR_P1_06), MP_ROM_PTR(&pin_P1_06) }, + { MP_ROM_QSTR(MP_QSTR_P1_07), MP_ROM_PTR(&pin_P1_07) }, + { MP_ROM_QSTR(MP_QSTR_P1_11), MP_ROM_PTR(&pin_P1_11) }, + { MP_ROM_QSTR(MP_QSTR_P1_13), MP_ROM_PTR(&pin_P1_13) }, + { MP_ROM_QSTR(MP_QSTR_P1_15), MP_ROM_PTR(&pin_P1_15) }, + + { MP_ROM_QSTR(MP_QSTR_AIN0), MP_ROM_PTR(&pin_P0_02) }, + { MP_ROM_QSTR(MP_QSTR_AIN2), MP_ROM_PTR(&pin_P0_04) }, + { MP_ROM_QSTR(MP_QSTR_AIN5), MP_ROM_PTR(&pin_P0_29) }, + { MP_ROM_QSTR(MP_QSTR_AIN7), MP_ROM_PTR(&pin_P0_31) }, + + { MP_ROM_QSTR(MP_QSTR_NFC1), MP_ROM_PTR(&pin_P0_09) }, + { MP_ROM_QSTR(MP_QSTR_NFC2), MP_ROM_PTR(&pin_P0_10) }, + + { MP_ROM_QSTR(MP_QSTR_BAT_VOLT), MP_ROM_PTR(&pin_P0_04) }, // Read battery voltage + + { MP_ROM_QSTR(MP_QSTR_VCC_OFF), MP_ROM_PTR(&pin_P0_13) }, // Turn off external VCC by MOSFET + + { MP_ROM_QSTR(MP_QSTR_LED), MP_ROM_PTR(&pin_P0_15) }, // Controls blue LED, high is on + + { MP_ROM_QSTR(MP_QSTR_RX), MP_ROM_PTR(&pin_P0_08) }, + { MP_ROM_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_P0_06) }, + + { MP_ROM_QSTR(MP_QSTR_SCL), MP_ROM_PTR(&pin_P0_20) }, + { MP_ROM_QSTR(MP_QSTR_SDA), MP_ROM_PTR(&pin_P0_17) }, + + { MP_ROM_QSTR(MP_QSTR_SCK), MP_ROM_PTR(&pin_P1_13) }, + { MP_ROM_QSTR(MP_QSTR_MOSI), MP_ROM_PTR(&pin_P0_10) }, + { MP_ROM_QSTR(MP_QSTR_MISO), MP_ROM_PTR(&pin_P1_11) }, + + { MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) }, + { MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) }, + { MP_ROM_QSTR(MP_QSTR_UART), MP_ROM_PTR(&board_uart_obj) }, +}; + +MP_DEFINE_CONST_DICT(board_module_globals, board_module_globals_table); From 07fa458767d05a36ebe3e03293bea7ce52d0e389 Mon Sep 17 00:00:00 2001 From: Jonny Bergdahl Date: Tue, 2 Jun 2020 21:43:57 +0000 Subject: [PATCH 2/7] Translated using Weblate (Swedish) Currently translated at 100.0% (764 of 764 strings) Translation: CircuitPython/master Translate-URL: https://hosted.weblate.org/projects/circuitpython/master/sv/ --- locale/sv.po | 48 +++++++++++++++++++++++------------------------- 1 file changed, 23 insertions(+), 25 deletions(-) diff --git a/locale/sv.po b/locale/sv.po index 58e810c4c2..09d3faa181 100644 --- a/locale/sv.po +++ b/locale/sv.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2020-06-01 17:10-0700\n" -"PO-Revision-Date: 2020-06-02 21:42+0000\n" +"PO-Revision-Date: 2020-06-03 18:59+0000\n" "Last-Translator: Jonny Bergdahl \n" "Language-Team: LANGUAGE \n" "Language: sv\n" @@ -153,7 +153,7 @@ msgstr "'%s' heltal %d ligger inte inom intervallet %d..%d" #: py/emitinlinethumb.c #, c-format msgid "'%s' integer 0x%x does not fit in mask 0x%x" -msgstr "'%s' heltal 0x%x får inte plats i mask 0x%x" +msgstr "'%s' heltal 0x%x ryms inte i mask 0x%x" #: py/runtime.c msgid "'%s' object cannot assign attribute '%q'" @@ -166,12 +166,12 @@ msgstr "Objektet '%s' har inte stöd för '%q'" #: py/obj.c #, c-format msgid "'%s' object does not support item assignment" -msgstr "Objektet \"%s\" stöder inte tilldelning av objekt" +msgstr "Objektet '%s' stöder inte tilldelningen" #: py/obj.c #, c-format msgid "'%s' object does not support item deletion" -msgstr "'%s'-objekt stöder inte borttagning av objekt" +msgstr "Objektet '%s' stöder inte borttagning av objekt" #: py/runtime.c msgid "'%s' object has no attribute '%q'" @@ -190,16 +190,16 @@ msgstr "Objektet '%s' kan inte anropas" #: py/runtime.c #, c-format msgid "'%s' object is not iterable" -msgstr "Objektet '%s' är inte itererbar" +msgstr "Objektet '%s' är inte itererable" #: py/obj.c #, c-format msgid "'%s' object is not subscriptable" -msgstr "Objektet \"%s\" är inte indexbar" +msgstr "Objektet '%s' är inte indexbar" #: py/objstr.c msgid "'=' alignment not allowed in string format specifier" -msgstr "'='-justering tillåts inte i strängformatspecificerare" +msgstr "'='-justering tillåts inte i strängformatspecifikation" #: shared-module/struct/__init__.c msgid "'S' and 'O' are not supported format types" @@ -211,7 +211,7 @@ msgstr "'align' kräver 1 argument" #: py/compile.c msgid "'async for' or 'async with' outside async function" -msgstr "'async for' eller 'async with' utanför asynk-funktion" +msgstr "'async for' eller 'async with' utanför async-funktion" #: py/compile.c msgid "'await' outside function" @@ -264,7 +264,7 @@ msgstr "3-arguments pow() stöds inte" #: ports/atmel-samd/common-hal/countio/Counter.c #: ports/atmel-samd/common-hal/rotaryio/IncrementalEncoder.c msgid "A hardware interrupt channel is already in use" -msgstr "En kanal för hårdvaruavbrotts används redan" +msgstr "En kanal för hårdvaruavbrott används redan" #: shared-bindings/_bleio/Address.c #, c-format @@ -285,7 +285,7 @@ msgstr "All SPI-kringutrustning används" #: ports/nrf/common-hal/busio/UART.c msgid "All UART peripherals are in use" -msgstr "Alla UART-tillbehör används" +msgstr "Alla UART-kringutrustning används" #: ports/atmel-samd/common-hal/audioio/AudioOut.c msgid "All event channels in use" @@ -316,7 +316,7 @@ msgstr "Annonserar redan." #: ports/cxd56/common-hal/analogio/AnalogIn.c msgid "AnalogIn not supported on given pin" -msgstr "AnalogIn stöds inte på en given pinne" +msgstr "AnalogIn stöds inte på angiven pinne" #: ports/cxd56/common-hal/analogio/AnalogOut.c #: ports/mimxrt10xx/common-hal/analogio/AnalogOut.c @@ -326,16 +326,16 @@ msgstr "AnalogOut-funktionalitet stöds inte" #: shared-bindings/analogio/AnalogOut.c msgid "AnalogOut is only 16 bits. Value must be less than 65536." -msgstr "AnalogOut är bara 16 bitar. Värdet måste vara mindre än 65536." +msgstr "AnalogOut hanterar bara 16 bitar. Värdet måste vara mindre än 65536." #: ports/atmel-samd/common-hal/analogio/AnalogOut.c msgid "AnalogOut not supported on given pin" -msgstr "AnalogOut stöds inte på given pinne" +msgstr "AnalogOut stöds inte på angiven pinne" #: ports/atmel-samd/common-hal/pulseio/PulseOut.c #: ports/cxd56/common-hal/pulseio/PulseOut.c msgid "Another send is already active" -msgstr "En annan sändning är redan aktiv" +msgstr "En annan send är redan aktiv" #: shared-bindings/pulseio/PulseOut.c msgid "Array must contain halfwords (type 'H')" @@ -343,7 +343,7 @@ msgstr "Matrisen måste innehålla halfwords (typ \"H\")" #: shared-bindings/nvm/ByteArray.c msgid "Array values should be single bytes." -msgstr "Matrisvärden ska vara enstaka byte." +msgstr "Matrisvärden ska bestå av enstaka bytes." #: shared-bindings/rgbmatrix/RGBMatrix.c msgid "At most %d %q may be specified (not %d)" @@ -351,7 +351,7 @@ msgstr "Högst %d %q kan anges (inte %d)" #: supervisor/shared/safe_mode.c msgid "Attempted heap allocation when MicroPython VM not running." -msgstr "Försökte tilldelning av heap när MicroPython VM inte körs." +msgstr "Försökte tilldela heap när MicroPython VM inte körs." #: main.c msgid "Auto-reload is off.\n" @@ -376,7 +376,7 @@ msgstr "Bitklocka och ordval måste dela en klockenhet" #: shared-bindings/audiobusio/PDMIn.c msgid "Bit depth must be multiple of 8." -msgstr "Bitdjupet måste vara multipel av 8." +msgstr "Bitdjup måste vara multipel av 8." #: ports/mimxrt10xx/common-hal/busio/UART.c msgid "Both RX and TX required for flow control" @@ -390,16 +390,16 @@ msgstr "Båda pinnarna måste stödja maskinvaruavbrott" #: shared-bindings/framebufferio/FramebufferDisplay.c #: shared-bindings/rgbmatrix/RGBMatrix.c msgid "Brightness must be 0-1.0" -msgstr "Ljusstyrkan måste vara 0-1,0" +msgstr "Ljusstyrkan måste vara mellan 0 och 1,0" #: shared-bindings/supervisor/__init__.c msgid "Brightness must be between 0 and 255" -msgstr "Ljusstyrkan måste vara mellan 0 och 255" +msgstr "Ljusstyrka måste vara mellan 0 och 255" #: shared-bindings/displayio/Display.c #: shared-bindings/framebufferio/FramebufferDisplay.c msgid "Brightness not adjustable" -msgstr "Ljusstyrkan kan inte justeras" +msgstr "Ljusstyrka kan inte justeras" #: shared-bindings/_bleio/UUID.c #, c-format @@ -437,7 +437,7 @@ msgstr "Bufferten är för stor och kan inte allokeras" #: shared-bindings/_bleio/PacketBuffer.c #, c-format msgid "Buffer too short by %d bytes" -msgstr "Buffert för kort med %d bytes" +msgstr "Buffert år %d bytes för kort" #: ports/atmel-samd/common-hal/displayio/ParallelBus.c #: ports/nrf/common-hal/displayio/ParallelBus.c @@ -459,7 +459,7 @@ msgstr "CBC-block måste vara multiplar om 16 byte" #: py/objtype.c msgid "Call super().__init__() before accessing native object." -msgstr "Anropa super().__init__() innan du använder det nativa objektet." +msgstr "Anropa super().__init__() innan du använder det ursprungliga objektet." #: ports/nrf/common-hal/_bleio/Characteristic.c msgid "Can't set CCCD on local Characteristic" @@ -504,9 +504,7 @@ msgstr "Kan inte återmontera '/' när USB är aktivt." #: ports/cxd56/common-hal/microcontroller/__init__.c #: ports/mimxrt10xx/common-hal/microcontroller/__init__.c msgid "Cannot reset into bootloader because no bootloader is present." -msgstr "" -"Det går inte att återställa till bootloader eftersom det inte finns någon " -"bootloader." +msgstr "Det går inte att återställa till bootloader eftersom bootloader saknas." #: shared-bindings/digitalio/DigitalInOut.c msgid "Cannot set value when direction is input." From 53a1b68649fc4efa310fa875f3b6dbe2a65fb8d4 Mon Sep 17 00:00:00 2001 From: Hosted Weblate Date: Wed, 3 Jun 2020 20:59:52 +0200 Subject: [PATCH 3/7] Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Translation: CircuitPython/master Translate-URL: https://hosted.weblate.org/projects/circuitpython/master/ --- locale/sv.po | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/locale/sv.po b/locale/sv.po index 09d3faa181..bf9bb3f5d9 100644 --- a/locale/sv.po +++ b/locale/sv.po @@ -504,7 +504,8 @@ msgstr "Kan inte återmontera '/' när USB är aktivt." #: ports/cxd56/common-hal/microcontroller/__init__.c #: ports/mimxrt10xx/common-hal/microcontroller/__init__.c msgid "Cannot reset into bootloader because no bootloader is present." -msgstr "Det går inte att återställa till bootloader eftersom bootloader saknas." +msgstr "" +"Det går inte att återställa till bootloader eftersom bootloader saknas." #: shared-bindings/digitalio/DigitalInOut.c msgid "Cannot set value when direction is input." From 6502ec5dffe705642c26c81eb35b599fd2103942 Mon Sep 17 00:00:00 2001 From: aberwag Date: Thu, 4 Jun 2020 19:17:25 +0000 Subject: [PATCH 4/7] Translated using Weblate (French) Currently translated at 100.0% (764 of 764 strings) Translation: CircuitPython/master Translate-URL: https://hosted.weblate.org/projects/circuitpython/master/fr/ --- locale/fr.po | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/locale/fr.po b/locale/fr.po index 9c7adb7e00..587f098771 100644 --- a/locale/fr.po +++ b/locale/fr.po @@ -9,8 +9,8 @@ msgstr "" "Project-Id-Version: 0.1\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2020-06-01 17:10-0700\n" -"PO-Revision-Date: 2020-06-02 19:50+0000\n" -"Last-Translator: Jeff Epler \n" +"PO-Revision-Date: 2020-06-05 17:29+0000\n" +"Last-Translator: aberwag \n" "Language-Team: French \n" "Language: fr\n" @@ -1735,7 +1735,7 @@ msgstr "WatchDogTimer.timeout doit être supérieur à 0" #: supervisor/shared/safe_mode.c msgid "Watchdog timer expired." -msgstr "" +msgstr "Le minuteur Watchdog a expiré." #: py/builtinhelp.c #, c-format From d8bb2d7c6d32781addf07afdc2b6514386b6f30e Mon Sep 17 00:00:00 2001 From: DavePutz Date: Mon, 8 Jun 2020 10:52:27 -0500 Subject: [PATCH 5/7] Correct ticks being returned from port_get_raw_ticks() Issue #2958 . Correct calculation of usec back to ticks in port_get_raw_ticks(). --- ports/esp32s2/supervisor/port.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/ports/esp32s2/supervisor/port.c b/ports/esp32s2/supervisor/port.c index 4c42f11af9..f5a4ae48e3 100644 --- a/ports/esp32s2/supervisor/port.c +++ b/ports/esp32s2/supervisor/port.c @@ -118,11 +118,12 @@ uint32_t port_get_saved_word(void) { uint64_t port_get_raw_ticks(uint8_t* subticks) { struct timeval tv_now; gettimeofday(&tv_now, NULL); - uint64_t all_subticks = (uint64_t)tv_now.tv_usec / 32768; + // convert usec back to ticks + uint64_t all_subticks = (uint64_t)tv_now.tv_usec / 1024; if (subticks != NULL) { *subticks = all_subticks % 32; } - return (uint64_t)tv_now.tv_sec * 1024L + all_subticks / 32; + return (uint64_t)tv_now.tv_sec * 1024L + all_subticks; } // Enable 1/1024 second tick. From ec7a3feeba913b615c785fb03015f9edbedbaa95 Mon Sep 17 00:00:00 2001 From: DavePutz Date: Tue, 9 Jun 2020 10:08:49 -0500 Subject: [PATCH 6/7] Redid formula for calculating subticks changed subticks calculation to give a range from 0 to 32767. --- ports/esp32s2/supervisor/port.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ports/esp32s2/supervisor/port.c b/ports/esp32s2/supervisor/port.c index f5a4ae48e3..2437b4f341 100644 --- a/ports/esp32s2/supervisor/port.c +++ b/ports/esp32s2/supervisor/port.c @@ -119,11 +119,11 @@ uint64_t port_get_raw_ticks(uint8_t* subticks) { struct timeval tv_now; gettimeofday(&tv_now, NULL); // convert usec back to ticks - uint64_t all_subticks = (uint64_t)tv_now.tv_usec / 1024; + uint64_t all_subticks = (uint64_t)(tv_now.tv_usec * 2) / 71; if (subticks != NULL) { *subticks = all_subticks % 32; } - return (uint64_t)tv_now.tv_sec * 1024L + all_subticks; + return (uint64_t)tv_now.tv_sec * 1024L + all_subticks / 32; } // Enable 1/1024 second tick. From eeb3825646453762b6e40f012cc3b9bbd9442d20 Mon Sep 17 00:00:00 2001 From: Scott Shawcroft Date: Tue, 9 Jun 2020 13:04:42 -0700 Subject: [PATCH 7/7] Update precommit check branch --- .github/workflows/pre-commit.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pre-commit.yml b/.github/workflows/pre-commit.yml index 116829296d..9663103046 100644 --- a/.github/workflows/pre-commit.yml +++ b/.github/workflows/pre-commit.yml @@ -7,7 +7,7 @@ name: pre-commit on: pull_request: push: - branches: [master] + branches: [main] jobs: pre-commit: