Hi, I need to log the force value of a load cell.
My Idea was to to read it with and Arduino and then send it to the VESC 75100 somehow.
As the VESC has the PPM input and its pretty easy to send out this from the Arduino, I was doing that. Now I notices that the VESC don't even log the PPM input value.
Is it in ANY way possible to have the data in the log file of the phone app? I also have a ESP32 and also a CAN Board for it. For example converting it to analog and reading an analog port of the VESC? I cannot find a way.
Thankful for suggestions!
Anyone? I am pretty confident that there is a super simple way to do this. Can somebody please point me in the right direction?
In 6.05 Firmware its working to log PPM,ADC1,ADC2,ADC3. In vesc tool-> App Settings->General-> CAN Massages Rate 1 -> Show Help button. You have to activate CAN Status 6
Link to forum post: VESC help offered for private persons and companies
Website: www.electricfox.de
Thanks for your answer. I just tried that and this is the header from the CSV file generated. There is no PPM. In the help is written that it only then sends this messages on CAN.
ms_today input_voltage temp_mos_max temp_mos_1 temp_mos_2 temp_mos_3 temp_motor current_motor current_in d_axis_current q_axis_current erpm duty_cycle amp_hours_used amp_hours_charged watt_hours_used watt_hours_charged tachometer tachometer_abs encoder_position fault_code vesc_id d_axis_voltage q_axis_voltage ms_today_setup amp_hours_setup amp_hours_charged_setup watt_hours_setup watt_hours_charged_setup battery_level battery_wh_tot current_in_setup current_motor_setup speed_meters_per_sec tacho_meters tacho_abs_meters num_vescs ms_today_imu roll pitch yaw accX accY accZ gyroX gyroY gyroZ gnss_posTime gnss_lat gnss_lon gnss_alt gnss_gVel gnss_vVel gnss_hAcc gnss_vAcc
I was searching for the exact same application. I found this:
https://www.youtube.com/watch?v=H0oRhapKZnM
https://github.com/vedderb/vesc_pkg/blob/main/lib_nau7802/examples/measu...
It seams that there is no possible solution for this. What is logged into the CSV from the mobile app is defined by the code of the APP and I cannot change this.
Anyway I found a solution that works for me:
I read a loadcell with a HX711 on an Arduino (ESP32 in my case) and then generate a analog output on a pin that I feed in the Motor_Temp Pin on the VESC. (ESP is also Powered from VESC and has Three wires in total connected: VCC, GND and Mot_Temp)
Like this I am able to measure 0-40 kg in 0.1 kg steps and log this as "Motor Temp" Value via the Mobile App on an iPhone. Its not 100% linear, but linear enough for my application.
Depending on what VESC you use you might slightly to adjust the Duty_min and _max values to fit. Otherwise you might have slight offset.