Commit Graph

398 Commits

Author SHA1 Message Date
Benjamin Vedder c0a928e040 NRF name and pin set support 2022-02-05 01:04:12 +01:00
Benjamin Vedder 20952b7e87 Removed rest of submodule 2022-01-29 17:26:24 +01:00
Benjamin Vedder 015a657cc9 Sensor port init in only one place, better encoder debug info 2022-01-25 13:57:25 +01:00
Benjamin Vedder 4958a91670 Added support for custom NTC and PTC motor temperature sensors 2022-01-24 00:36:53 +01:00
Benjamin Vedder f6baa653ea Updated linker script and flash helpers to get 128k extra code space. Note that this requires the updated bootloader with compression support. 2022-01-18 20:31:24 +01:00
Benjamin Vedder 9c484d01e4 Decreased stack sizes to save ram 2022-01-16 21:57:12 +01:00
Benjamin Vedder 92efab4896 Changed to release settings 2022-01-16 17:19:03 +01:00
Benjamin Vedder 38566313e7 Added hw_60v2alva 2022-01-13 01:12:52 +01:00
Benjamin Vedder 16385f1706 Renamed compression to lzo, added observer offset parameter 2022-01-12 12:27:45 +01:00
Jeffrey M. Friesen 53f618674a Added build script entries for new stormcore hardware 2022-01-11 12:48:19 -08:00
Benjamin Vedder af55c79a2a Renamed foc_f_sw to foc_f_zv 2022-01-06 20:44:00 +01:00
Benjamin Vedder ab0aa126d6 Collected luna-files in one place, removed some old files 2021-12-31 12:27:36 +01:00
Benjamin Vedder 95c67175ab First attempt at a resistance and temperature observer 2021-12-29 18:21:42 +01:00
Benjamin Vedder 4fa7a922fe Fixed dual motor detect offset problem 2021-12-01 13:46:49 +01:00
Benjamin Vedder 2a281e36ae Initialize integrator in dutycycle downramp controller 2021-11-27 23:32:08 +01:00
Benjamin Vedder b524773c0d Another attempt at braking 2021-11-27 10:58:52 +01:00
Benjamin Vedder 76b4f58e4e Another attempt at braking smoothly to 0 2021-11-26 00:43:41 +01:00
Benjamin Vedder f6e78a09b6 Fixed measured MTPA mode, send ld_lq_diff detection result 2021-11-21 18:17:40 +01:00
Benjamin Vedder fd48dc2644 Make PID position control direction consistent with other control modes when encoder is inverted 2021-11-15 21:30:24 +01:00
Benjamin Vedder 3778dbe2e2 Added support for statistics 2021-11-11 01:08:21 +01:00
Benjamin Vedder f0b291d4eb Improved overvoltage protection 2021-11-10 14:19:48 +01:00
Benjamin Vedder cb84c94788 Disable HFI start in braking mode 2021-11-08 22:48:15 +01:00
Benjamin Vedder bc63a3127a Added q-axis modulation filter and use it for input current limits 2021-11-07 23:00:48 +01:00
Benjamin Vedder d79d12a489 Fixed braking mode 2021-10-31 21:51:40 +01:00
Benjamin Vedder 9046e4644b
Merge pull request #363 from TechAUmNu/dev_fw_5_03
Add A50S 6S and 12S hardware
2021-10-24 18:14:17 +02:00
Benjamin Vedder f1c4e713d7 Added MTPA modes 2021-10-24 18:10:00 +02:00
Benjamin Vedder 98587c961b Updated inductance calculation, include motor saliency in observer, separate setting for MTPA 2021-10-24 13:25:12 +02:00
Euan 49cfd795a3 Add A50S 6S and 12S hardware
Adds A50S.h/c and build script.
2021-10-20 10:57:11 +01:00
Benjamin Vedder 1763fd59d3 Fixed loss calculation 2021-10-16 12:53:49 +02:00
Benjamin Vedder d8a99fd0f1 Inductance and resistance measurement and scaling fixes, various other fixes 2021-10-15 22:25:07 +02:00
Tharon Rivera 11ad3f862f Support for Spintend ubox single 2021-09-24 20:58:55 -04:00
Vincent Manoukian f887c30e86 Add a poll CAN message. 2021-08-30 09:39:21 +02:00
Benjamin Vedder 91a19fa8b3 IMU improvements 2021-08-22 11:51:03 +02:00
Benjamin Vedder 86cbc92b8d Fixed regression in sensorless braking 2021-08-20 21:36:44 +02:00
Benjamin Vedder 91e299a593
Merge pull request #334 from surfdado/zescboards
ZESC HW Support: Raiden7 and Warrior6
2021-08-20 19:08:14 +02:00
Benjamin Vedder 36c9db6718 Dual motor shutdown fix 2021-08-20 14:59:36 +02:00
Dado Mista 5a56e8bd57 ZESC Raiden7 Support
Signed-off-by: Dado Mista <dadomista@gmail.com>
2021-08-19 15:57:15 -07:00
Dado Mista cd1e37dfe8 ZESC Warrior6 Support
Signed-off-by: Dado Mista <dadomista@gmail.com>
2021-08-19 15:57:15 -07:00
Benjamin Vedder fc6825a1ae Added safe start modes 2021-08-16 17:48:06 +02:00
Benjamin Vedder 11e2062312 Pull request cleanup 2021-07-30 20:53:22 +02:00
Jakub Tomczak e951e3a374 Added AS504x Diagnostics 2021-07-28 17:14:10 +02:00
Benjamin Vedder 3c88ecb7aa Added configurable PID loop rate and more AUX port modes 2021-07-12 14:31:01 +02:00
Benjamin Vedder 1ab25a47db Added position PID offset support and KD_PROC term 2021-07-11 20:19:26 +02:00
Benjamin Vedder b7a5ff5a1b Check external NRF crc 2021-06-27 13:02:24 +02:00
Benjamin Vedder 0a5fe738cd Ignore commands when kill switch is active 2021-06-20 16:46:56 +02:00
Benjamin Vedder f81093922a Added event logging 2021-06-15 12:56:38 +02:00
Benjamin Vedder 75b84f1f2d Added kill switch support 2021-06-13 13:46:27 +02:00
Benjamin Vedder 93fa35953c Added mkdir command to all firmwares in rebuild_all 2021-06-07 20:56:19 +02:00
Benjamin Vedder 5cdebf6358 Added app_custom_mkfile to makefile, removed outdated hardware 2021-06-06 14:00:51 +02:00
Benjamin Vedder 1f935c6ca7 Merge branch 'master' into dev_fw_5_03 2021-05-29 14:24:15 +02:00
Jeffrey M. Friesen 422e348c1a Added things for 100D_V2 hardware variant 2021-05-29 12:41:59 +02:00
Benjamin Vedder 759ae52058 Increased FW version number 2021-05-21 00:01:06 +02:00
Benjamin Vedder 934d7b9751 Locking around stop code, added mc_interface_set_current_off_delay 2021-05-15 15:24:39 +02:00
Benjamin Vedder c30a93119a Wait for input voltage to rise and settle before attempting offset calibration at boot 2021-05-13 11:45:30 +02:00
Benjamin Vedder be5ce41c17 Disable motor for 5 seconds after flash operations 2021-05-11 19:25:03 +02:00
Benjamin Vedder e66552c83f Added io-board commands 2021-05-11 14:03:22 +02:00
Benjamin Vedder 77af43935a Removed outdated LED-support 2021-05-11 09:57:27 +02:00
Benjamin Vedder 24b8a6f100 Change default DRV OC mode for HD60 and HD75 2021-05-07 09:49:01 +02:00
Benjamin Vedder dfe17ac334 Dynamic QML-script write support 2021-05-01 13:28:46 +02:00
Benjamin Vedder 7a0e560e8b Lowpass filter input voltage and battery level 2021-04-27 17:48:15 +02:00
Benjamin Vedder fa3610c8b1 Fixed CAN ping for dual motor hardware 2021-04-27 10:17:41 +02:00
Benjamin Vedder f25144cc30 Removed iterative observer, added p_pid_gain_dec_angle 2021-04-26 23:14:05 +02:00
Benjamin Vedder 5767b703b7 Custom UI support 2021-04-24 22:36:00 +02:00
Benjamin Vedder 14b25e9aa4 Added foc_fw_q_current_factor 2021-04-15 10:04:28 +02:00
Benjamin Vedder ac360ae7f6 Give D-axis current priority when limiting current, added mcpwm_foc_set_current_off_delay 2021-04-14 22:29:50 +02:00
Benjamin Vedder 998bc17ba7 Cleanup 2021-04-12 09:48:29 +02:00
Benjamin Vedder ca8e7b4f05
Merge pull request #271 from CTSchorsch/dev_05_03
- Add driver for SX1278 LoRa boards, eg. HopeRF RFM95W (driver by Woj…
2021-04-12 09:35:38 +02:00
Benjamin Vedder 55dba9a79d Made odometer persist after firmware updates, added hw runtime counter 2021-04-11 19:36:11 +02:00
Benjamin Vedder b49606be4c Updated changelog and beta number 2021-04-10 16:41:20 +02:00
Benjamin Vedder feb1be5fbd First attempt at field weakening and current controller windup protection improvement 2021-04-10 11:37:35 +02:00
Benjamin Vedder 101f293389 Added new BMS counters 2021-04-08 22:34:01 +02:00
Benjamin Vedder a9c2a4fcc9 Added ER application 2021-04-06 14:12:57 +02:00
Benjamin Vedder fcb7e12158 Made servo output a config option 2021-03-31 16:28:46 +02:00
CTSchorsch 755ff98ec9 fix spaces, delete lines and default config 2021-03-31 14:10:27 +02:00
CTSchorsch 331494291d - move lora files from hwconf/ to lora/
- modify Makefile and add lora/lora.mk
- hopefully have all idents fixed
- restore commands.c and add new function again
- fix memory leak bug in gesc.c
- rfm95w.c add delay in while loop
- add gesc to build_all / rebuild all works
2021-03-27 21:13:24 +01:00
CTSchorsch cdb8e82c32 - Add driver for SX1278 LoRa boards, eg. HopeRF RFM95W (driver by Wojciech Domski, https://github.com/wdomski/SX1278)
- Add a simple bool isInitialized() to commands.c, to check if commands are initialzied
- Add hwconf for GESC, hobby open source ESC (https://github.com/CTSchorsch/gesc) including a simple double pulse test function
- Add app_dpv.c to read out a simple I2C magnetic field sensor and two hall sensors to control a underwater scooter
2021-03-27 14:15:22 +01:00
Benjamin Vedder 2133d21fbc Avoid numerical instability when utils_map is used over a range that approaches 0 2021-03-27 11:18:47 +01:00
Benjamin Vedder 9ad604247d Updated changelog and minor fixes 2021-03-26 17:58:21 +01:00
Benjamin Vedder 8b9e3bf93f Offset calibration improvements 2021-03-24 13:09:05 +01:00
Benjamin Vedder 3b4e601f61 Offset calibration update 2021-03-22 12:13:19 +01:00
Benjamin Vedder bdb7b0bf7b Added KTY84 temp sensor support 2021-03-17 11:54:42 +01:00
Benjamin Vedder 89c4d712e8 HFI-Start fixes 2021-03-13 15:41:57 +01:00
Benjamin Vedder c82346b42e Added HFI start sensor mode 2021-03-13 11:42:23 +01:00
Benjamin Vedder e877c43158 Added CAN ID to BMS packet 2021-03-04 10:34:39 +01:00
Benjamin Vedder 8900c41c34 First phase filter and offset calibration attempt 2021-02-28 20:36:02 +01:00
Benjamin Vedder ecb43e70bb Cleanup 2021-01-13 21:51:55 +01:00
Jeffrey M. Friesen 57a13ec2da cleanup merge 2021-01-13 09:05:16 -08:00
Jeffrey M. Friesen 8f703dace0 merge 2021-01-13 08:57:36 -08:00
Jeffrey M. Friesen d75069615c Merge remote-tracking branch 'upstream/master' into dev_fw_5_03 2021-01-11 13:51:52 -08:00
Jeffrey M. Friesen bddbbadc98 Added HWE Conf for 60D+ 2021-01-11 12:26:47 -08:00
Benjamin Vedder 3f670137e2 Rebuild firmwares and disabled test version flag 2021-01-11 12:19:10 +01:00
Jeffrey M. Friesen 1b67f3efaf Added build script for 60D+ 2021-01-05 12:36:52 -08:00
Jeffrey M. Friesen 6a3dfb8526 Patched bug with gpio AF in uart 2021-01-05 12:30:41 -08:00
Jeffrey M. Friesen e862f29298 Re-wrote uart driver a bit 2021-01-05 09:39:45 -08:00
Jeffrey M. Friesen f549090a03 Merge remote-tracking branch 'upstream/dev_fw_5_02' into dev_fw_5_02 2020-12-27 13:56:12 -08:00
Jeffrey M. Friesen 38fd15482e started adding 60D plus changes 2020-12-27 13:56:07 -08:00
Mitch Lustig 24e190c66c Merge branch 'dev_fw_5_02' into little_focer 2020-12-25 03:51:01 -08:00
Benjamin Vedder 64ed0df71a Only set one hw active and increase beta version number 2020-12-24 14:11:54 +01:00
Benjamin Vedder 4d73ba9bc6
Merge pull request #245 from Mitchlol/cfoc2_1.0
Add Cheap Focer 2 Hardware
2020-12-24 13:42:20 +01:00
Frank Severinsen 5eb935f3ce WIP, Current status DAC output 2020-12-22 00:24:19 +01:00
Mitch Lustig 7e72bda93c Merge branch 'dev_fw_5_02' into cfoc2_1.0 2020-12-16 02:34:13 -08:00
Mitch Lustig 5b36bc9538 Little bit of cleanup 2020-12-15 22:53:48 -08:00
Mitch Lustig 7458fdae10 Merge branch 'dev_fw_5_02' into little_focer 2020-12-14 23:41:24 -08:00
Mitch Lustig 7b81cfbf5b Add little focer 2020-12-14 23:40:58 -08:00
Benjamin Vedder cd513297d8 Added 100K CAN-baudrate 2020-12-15 00:27:58 +01:00
Benjamin Vedder fefb2b7d10 Set PAS pins to UART RX and TX if they are undefined, made PAS config serialization more compact, added PAS to changelog 2020-12-09 19:37:16 +01:00
Mitch Lustig 21f61c84ed Merge branch 'dev_fw_5_02' into cfoc2 2020-12-08 15:02:49 -08:00
Benjamin Vedder 66b4d8f56d Added FOC D axis controller gain scaling at max modulation 2020-12-06 21:33:08 +01:00
Mitch Lustig 8570b5fa14 Merge branch 'dev_fw_5_02' into cfoc2 2020-12-05 00:22:28 -08:00
Benjamin Vedder 55096f93cc Added UAVCAN raw throttle modes 2020-12-04 17:54:22 +01:00
Marcos Chaparro 50bc55e487 MT6816 SPI encoder support
This encoder needs x2 16bit SPI transfers so the hardware SPI peripheral
was used to run SCLK at 10MHz and reduce the ISR duration.

Signed-off-by: Marcos Chaparro <mchaparro@powerdesigns.ca>
2020-11-30 19:12:58 -03:00
Benjamin Vedder b7b0182856 CAN fixes, renamed HD to HD60, fixed multiturn position control 2020-11-18 14:26:55 +01:00
Mitch Lustig e8d3e1c819 Merge branch 'dev_fw_5_02' into cfoc2 2020-11-06 09:39:53 -08:00
Benjamin Vedder af7cd36cb8 Added hall sensor interpolation ERPM config option 2020-10-22 08:37:32 +02:00
Benjamin Vedder c77f92470b IO board support, initial bms support, more openloop parameters, removed D current injection, added new HWs 2020-10-09 21:08:48 +02:00
Mitch Lustig 268251fa69 Merge branch 'dev_fw_5_02' into cfoc2 2020-09-18 21:49:33 -07:00
Mitch Lustig fbe78dfe93 Add CFOC2 2020-09-18 21:47:00 -07:00
Benjamin Vedder f560f27871 Merge branch 'master' into dev_fw_5_02 2020-08-13 13:54:16 +02:00
Benjamin Vedder 2078dc1c43 added 140/300 hw and comm_can fix 2020-08-13 13:53:29 +02:00
Jeffrey M. Friesen 27ec82d785 set default build back to vesc 6 2020-08-10 09:29:32 -07:00
Frank Severinsen 5a52405a78 include default HW 2020-07-21 10:55:31 +02:00
Frank Severinsen 3acbfffa26 added custom HW file, support for ID pins, and fixed circular include 2020-07-21 10:54:04 +02:00
Benjamin Vedder 0b6ccb17f9 some cleanup 2020-07-21 08:50:09 +02:00
Benjamin Vedder 22b7eb8ce5 More blackmagic support and rebuilt firmwares 2020-07-06 17:20:45 +02:00
Benjamin Vedder 561e29cd36 fixed conf_general again 2020-07-02 12:42:49 +02:00
Benjamin Vedder 4adc989da7 Fixed blackmagic UICR bug, updated changelog and rebuild script 2020-07-02 12:39:54 +02:00
Benjamin Vedder 960cd3b992 Some updates to MTPA PR 2020-06-17 13:55:35 +02:00
Jeffrey M. Friesen 6d2e0831ac switch led ordering on gpio 2020-06-08 16:02:44 -07:00
Benjamin Vedder b1915b06a7 Some updates for PRs 2020-06-03 10:52:55 +02:00
Benjamin Vedder 6196805d8c Added CHUK_CTRL_TYPE_CURRENT_BIDIRECTIONAL, some fixes on last PR 2020-05-03 22:35:37 +02:00
Peemouse f6d7ed1fd2 Add COMM_GET_MCCONF_TEMP command 2020-05-01 15:22:09 +02:00
Benjamin Vedder 36c56b38fc Updated changelog and version + test version numbers 2020-05-01 09:45:32 +02:00
Benjamin Vedder 80fffdea73 Fixed PPM bug in previous release 2020-04-27 14:23:49 +02:00
Benjamin Vedder b2bab06172 Turned off test build flag 2020-04-27 10:04:44 +02:00
Benjamin Vedder ef4ebfde93 Allow throttle in opposite direction even after passing speed limit for PPM and VESC Remote apps 2020-04-26 11:48:55 +02:00
Benjamin Vedder ee76eb4f09 Ignore FW update commands forwarded to the second motor on dual hardware 2020-04-25 17:54:12 +02:00
Benjamin Vedder 8b6f0680e4 Added HW60_MK4 support and added 60_MK4 and 75_300_R3 to build script 2020-04-24 20:48:21 +02:00
Benjamin Vedder 57c5d04214 Added l_duty_start and set correct motor in mcinterface_timer 2020-04-21 19:58:12 +02:00
Benjamin Vedder d9fc2fc34c Moved IMU calibration to blocking thread 2020-04-19 10:20:48 +02:00
Benjamin Vedder d3c8d0a533 Add 1 to UUID for motor2 on dual motor HWs. 2020-04-17 20:07:03 +02:00
Benjamin Vedder c64e7987bc Use fast speed estimator for hall sensors and encoder 2020-04-16 12:16:02 +02:00
Benjamin Vedder 4dab6ed9e7 Fixed merge, renamed utils_batt_norm_v_to_capacity, scale battery ah with 0.85 since the battery is not fully depleted at 3.2V per cell 2020-04-16 09:39:47 +02:00
Benjamin Vedder 393363169a Merge branch 'dev_fw_5_00' of https://github.com/vedderb/bldc into dev_fw_5_00 2020-04-16 09:13:39 +02:00
Benjamin Vedder 6f7c40b4e1 Improved flux linkage measurement 2020-04-16 09:12:08 +02:00
Jeffrey M. Friesen acfc93e693 Patched some weird behavior with motor temp on stormcore and added #define for filter constant
Was seeing a lot of coupled noise on stormcore with phase currents so I turned up the LPF on the motor temp sensor. I think it might be a good idea to turn up that LPF generally since motor temp is generally slow to change anyways.

Also found a problem in the #define for motor temp 2 in my header file. Fixed it.
2020-04-14 14:05:47 -07:00
Jeffrey M. Friesen 6e83fd3408 Added gentle li-ion curve mapping
Should provide a slightly more accurate estimate of the remaining battery, I fit a fifth order polynomial to a discharge graph of a samsung 30q cell.

Technically the watt hours left should be integrated across this curve instead of using the average remaining voltage but maybe the combination of both provides a good midway estimate between the actual curve and a line since all cells are slightly different.
2020-04-14 09:12:57 -07:00
Benjamin Vedder 3ab8002fa4 Motor temperature filtering bug fix 2020-04-09 22:33:20 +02:00
Benjamin Vedder 0e6f8dd567 Change back motor thread after foc_sensors_detect_apply terminal command 2020-04-09 09:27:43 +02:00
Jeffrey M. Friesen 2b13131a44 Correctly log motor fault data and iterate beta version number 2020-04-06 13:52:04 -07:00
Jeffrey M. Friesen 1b67dc2666 Refactored name of is_test_build, also added dual stuff to foc_detect_apply_all_can 2020-04-05 12:28:08 -07:00