[Surf n' Destroy] Building a flying sniper rifle case

After a few setbacks, I’m now having success with my Rifle Case Build using the Apache 9800 case from Harbor Freight.

For several trial sessions the Trampa VESC 75v 300a was set at 100 amps. I finally discovered the issue after checking the settings with the VESC app. I adjusted the setting to 200 amps, and then had plenty of power.

In fact, I had set the speed settings on the remote to limit output of the controller. With the three available speed settings, I set my remote to 100%, 90% and 80%.

Currently, I favor 80% until I become more skilled with the trigger sensitivity on the Maytech remote.

3 Likes

That is just so cool! You’re doing a good job on that Rifle Case! Do you got pictures of the inside?

I wish you a great season!

Thanks. I’m loving your overall design!

Inside, you’ll see I instead used 80/20 aluminum extrusion for the frame. It seems to work well enough.

Nevermind the circular red plastic Folgers container. It was an impromptu spacer. Next to it is a watertight plastic case that contained my phone for logging.

Each black case (Nanuk 909) contains a 7s14p battery.

Here are a couple of images:

3 Likes

Great project ! Any volunteer to test the front bevel to soften water touch-downs ? :wink:

Seems from the videos that the case is not level (or tilted up) but pointing downwards when you ride, is it like this? Touchdowns will catch the nose first in a not so nice way. Is the case deforming under load?
IMG_0322

Great build,

is there any way you could share clamp’s step file for RL boards mast?

Thanks

To repeat once again, it was already shared by the guys :slight_smile:

1 Like

Yes, your right. It’s a problem I intend to fix. I’m having a lot of fun with it right now, so I deal with it since I don’t want to be sidelined while I take the time to rework it.

The rear two rivnuts are not well supported, are poorly mounted and provide little support. I’m happy with the back set mast placement, so I’ll stick with the location, but I will need to rework them so they provide better support.

I had moved the mast mount further back after initially mounting it more forward. I wasn’t sure where best to mount it. I’m still not 100% certain where I like it.

However, I’ve observed when the mast mount is set back, I’m able to accelerate and take off with a more inclined board angle that lifts the nose out of the water quickly, so I’m not plowing as much water on my take offs. Also, the antenna connection with the remote is more dependable

Maybe as I become more skilled, this will be less of an issue.

I wonder where best to mount the mast for these rifle case builds with the blunt noses?

1 Like

A bevel made of a folded aluminium sheet should cause the same effect…

You mention “waterproofing remote with Epoxy” do you have any working instructions for that? I have tried to find some video tutorials but with no luck.

Hello guys,
I copied your design as much as I can. I am done. Everything is assembled.












The only problem I have is, that it doesn’t fly. The efoil accelerates up to 30% and just doesn’t lift. :cry:
Pulling the throttle more doesn’t have any effect.
Could you please kotnascher, superlefax, or anyone else help me out?

my setup is:

I have set Max Current up to 160A and did a test with the prop sunken in water and it seems ok to me.

I have to admit that I have very limited knowledge of VESC setup. so I suspect 3 root causes of my issue:

  • Wrong VESC/Remote Setup (please see below…)
  • Too big/small prop
  • Riding style. I have experience with jetsurf, onewheel, snowboard, but not with foils.

I would appreciate any advice. Especially if anyone could review my VESC params. Thanks a lot
Aloha.

<MCConfiguration>
<ConfigVersion>2</ConfigVersion>
<pwm_mode>1</pwm_mode>
<comm_mode>0</comm_mode>
<motor_type>0</motor_type>
<sensor_mode>0</sensor_mode>
<l_current_max>160</l_current_max>
<l_current_min>-160</l_current_min>
<l_in_current_max>250</l_in_current_max>
<l_in_current_min>-200</l_in_current_min>
<l_abs_current_max>200</l_abs_current_max>
<l_min_erpm>-100000</l_min_erpm>
<l_max_erpm>100000</l_max_erpm>
<l_erpm_start>0.8</l_erpm_start>
<l_max_erpm_fbrake>300</l_max_erpm_fbrake>
<l_max_erpm_fbrake_cc>1500</l_max_erpm_fbrake_cc>
<l_min_vin>12</l_min_vin>
<l_max_vin>72</l_max_vin>
<l_battery_cut_start>54.4</l_battery_cut_start>
<l_battery_cut_end>48</l_battery_cut_end>
<l_slow_abs_current>1</l_slow_abs_current>
<l_temp_fet_start>85</l_temp_fet_start>
<l_temp_fet_end>100</l_temp_fet_end>
<l_temp_motor_start>85</l_temp_motor_start>
<l_temp_motor_end>100</l_temp_motor_end>
<l_temp_accel_dec>0.15</l_temp_accel_dec>
<l_min_duty>0.005</l_min_duty>
<l_max_duty>0.95</l_max_duty>
<l_watt_max>1.5e+06</l_watt_max>
<l_watt_min>-1.5e+06</l_watt_min>
<l_current_max_scale>1</l_current_max_scale>
<l_current_min_scale>1</l_current_min_scale>
<l_duty_start>1</l_duty_start>
<sl_min_erpm>150</sl_min_erpm>
<sl_min_erpm_cycle_int_limit>1100</sl_min_erpm_cycle_int_limit>
<sl_max_fullbreak_current_dir_change>10</sl_max_fullbreak_current_dir_change>
<sl_cycle_int_limit>62</sl_cycle_int_limit>
<sl_phase_advance_at_br>0.8</sl_phase_advance_at_br>
<sl_cycle_int_rpm_br>80000</sl_cycle_int_rpm_br>
<sl_bemf_coupling_k>600</sl_bemf_coupling_k>
<hall_table__0>-1</hall_table__0>
<hall_table__1>1</hall_table__1>
<hall_table__2>3</hall_table__2>
<hall_table__3>2</hall_table__3>
<hall_table__4>5</hall_table__4>
<hall_table__5>6</hall_table__5>
<hall_table__6>4</hall_table__6>
<hall_table__7>-1</hall_table__7>
<hall_sl_erpm>2000</hall_sl_erpm>
<foc_current_kp>0.0649277</foc_current_kp>
<foc_current_ki>36.373</foc_current_ki>
<foc_f_zv>30000</foc_f_zv>
<foc_dt_us>0.12</foc_dt_us>
<foc_encoder_inverted>0</foc_encoder_inverted>
<foc_encoder_offset>180</foc_encoder_offset>
<foc_encoder_ratio>7</foc_encoder_ratio>
<foc_sensor_mode>0</foc_sensor_mode>
<foc_pll_kp>2000</foc_pll_kp>
<foc_pll_ki>30000</foc_pll_ki>
<foc_motor_l>6.49277e-05</foc_motor_l>
<foc_motor_ld_lq_diff>4.61438e-05</foc_motor_ld_lq_diff>
<foc_motor_r>0.036373</foc_motor_r>
<foc_motor_flux_linkage>0.973773</foc_motor_flux_linkage>
<foc_observer_gain>1054.59</foc_observer_gain>
<foc_observer_gain_slow>0.05</foc_observer_gain_slow>
<foc_observer_offset>-1</foc_observer_offset>
<foc_duty_dowmramp_kp>50</foc_duty_dowmramp_kp>
<foc_duty_dowmramp_ki>1000</foc_duty_dowmramp_ki>
<foc_start_curr_dec>1</foc_start_curr_dec>
<foc_start_curr_dec_rpm>2500</foc_start_curr_dec_rpm>
<foc_openloop_rpm>1000</foc_openloop_rpm>
<foc_openloop_rpm_low>0</foc_openloop_rpm_low>
<foc_d_gain_scale_start>0.9</foc_d_gain_scale_start>
<foc_d_gain_scale_max_mod>0.2</foc_d_gain_scale_max_mod>
<foc_sl_openloop_hyst>0.1</foc_sl_openloop_hyst>
<foc_sl_openloop_time_lock>0</foc_sl_openloop_time_lock>
<foc_sl_openloop_time_ramp>0.1</foc_sl_openloop_time_ramp>
<foc_sl_openloop_time>0.05</foc_sl_openloop_time>
<foc_sl_openloop_boost_q>0</foc_sl_openloop_boost_q>
<foc_sl_openloop_max_q>-1</foc_sl_openloop_max_q>
<foc_hall_table__0>255</foc_hall_table__0>
<foc_hall_table__1>255</foc_hall_table__1>
<foc_hall_table__2>255</foc_hall_table__2>
<foc_hall_table__3>255</foc_hall_table__3>
<foc_hall_table__4>255</foc_hall_table__4>
<foc_hall_table__5>255</foc_hall_table__5>
<foc_hall_table__6>255</foc_hall_table__6>
<foc_hall_table__7>255</foc_hall_table__7>
<foc_hall_interp_erpm>500</foc_hall_interp_erpm>
<foc_sl_erpm>4000</foc_sl_erpm>
<foc_sample_v0_v7>0</foc_sample_v0_v7>
<foc_sample_high_current>0</foc_sample_high_current>
<foc_sat_comp_mode>2</foc_sat_comp_mode>
<foc_sat_comp>0</foc_sat_comp>
<foc_temp_comp>0</foc_temp_comp>
<foc_temp_comp_base_temp>25</foc_temp_comp_base_temp>
<foc_current_filter_const>0.1</foc_current_filter_const>
<foc_cc_decoupling>0</foc_cc_decoupling>
<foc_observer_type>3</foc_observer_type>
<foc_hfi_voltage_start>20</foc_hfi_voltage_start>
<foc_hfi_voltage_run>4</foc_hfi_voltage_run>
<foc_hfi_voltage_max>6</foc_hfi_voltage_max>
<foc_hfi_gain>0.3</foc_hfi_gain>
<foc_hfi_hyst>0</foc_hfi_hyst>
<foc_sl_erpm_hfi>3000</foc_sl_erpm_hfi>
<foc_hfi_start_samples>5</foc_hfi_start_samples>
<foc_hfi_obs_ovr_sec>0.001</foc_hfi_obs_ovr_sec>
<foc_hfi_samples>1</foc_hfi_samples>
<foc_offsets_cal_on_boot>1</foc_offsets_cal_on_boot>
<foc_offsets_current__0>2034.14</foc_offsets_current__0>
<foc_offsets_current__1>2040.69</foc_offsets_current__1>
<foc_offsets_current__2>2059.44</foc_offsets_current__2>
<foc_offsets_voltage__0>0.0005</foc_offsets_voltage__0>
<foc_offsets_voltage__1>0</foc_offsets_voltage__1>
<foc_offsets_voltage__2>-0.0005</foc_offsets_voltage__2>
<foc_offsets_voltage_undriven__0>0</foc_offsets_voltage_undriven__0>
<foc_offsets_voltage_undriven__1>0</foc_offsets_voltage_undriven__1>
<foc_offsets_voltage_undriven__2>0</foc_offsets_voltage_undriven__2>
<foc_phase_filter_enable>0</foc_phase_filter_enable>
<foc_phase_filter_disable_fault>1</foc_phase_filter_disable_fault>
<foc_phase_filter_max_erpm>4000</foc_phase_filter_max_erpm>
<foc_mtpa_mode>0</foc_mtpa_mode>
<foc_fw_current_max>0</foc_fw_current_max>
<foc_fw_duty_start>0.9</foc_fw_duty_start>
<foc_fw_q_current_factor>0.02</foc_fw_q_current_factor>
<foc_fw_ramp_time>0.2</foc_fw_ramp_time>
<foc_speed_soure>1</foc_speed_soure>
<gpd_buffer_notify_left>200</gpd_buffer_notify_left>
<gpd_buffer_interpol>0</gpd_buffer_interpol>
<gpd_current_filter_const>0.1</gpd_current_filter_const>
<gpd_current_kp>0.03</gpd_current_kp>
<gpd_current_ki>50</gpd_current_ki>
<sp_pid_loop_rate>5</sp_pid_loop_rate>
<s_pid_kp>0.004</s_pid_kp>
<s_pid_ki>0.004</s_pid_ki>
<s_pid_kd>0.0001</s_pid_kd>
<s_pid_kd_filter>0.2</s_pid_kd_filter>
<s_pid_min_erpm>900</s_pid_min_erpm>
<s_pid_allow_braking>1</s_pid_allow_braking>
<s_pid_ramp_erpms_s>25000</s_pid_ramp_erpms_s>
<p_pid_kp>0.025</p_pid_kp>
<p_pid_ki>0</p_pid_ki>
<p_pid_kd>0</p_pid_kd>
<p_pid_offset>0</p_pid_offset>
<p_pid_kd_proc>0.00035</p_pid_kd_proc>
<p_pid_kd_filter>0.2</p_pid_kd_filter>
<p_pid_ang_div>1</p_pid_ang_div>
<p_pid_gain_dec_angle>0</p_pid_gain_dec_angle>
<cc_startup_boost_duty>0.01</cc_startup_boost_duty>
<cc_min_current>0.05</cc_min_current>
<cc_gain>0.0046</cc_gain>
<cc_ramp_step_max>0.04</cc_ramp_step_max>
<m_fault_stop_time_ms>500</m_fault_stop_time_ms>
<m_duty_ramp_step>0.02</m_duty_ramp_step>
<m_current_backoff_gain>0.5</m_current_backoff_gain>
<m_encoder_counts>8192</m_encoder_counts>
<m_encoder_sin_amp>1</m_encoder_sin_amp>
<m_encoder_cos_amp>1</m_encoder_cos_amp>
<m_encoder_sin_offset>1.65</m_encoder_sin_offset>
<m_encoder_cos_offset>1.65</m_encoder_cos_offset>
<m_encoder_sincos_filter_constant>0.5</m_encoder_sincos_filter_constant>
<m_encoder_sincos_phase_correction>0</m_encoder_sincos_phase_correction>
<m_sensor_port_mode>0</m_sensor_port_mode>
<m_invert_direction>0</m_invert_direction>
<m_drv8301_oc_mode>2</m_drv8301_oc_mode>
<m_drv8301_oc_adj>16</m_drv8301_oc_adj>
<m_bldc_f_sw_min>3000</m_bldc_f_sw_min>
<m_bldc_f_sw_max>35000</m_bldc_f_sw_max>
<m_dc_f_sw>25000</m_dc_f_sw>
<m_ntc_motor_beta>3380</m_ntc_motor_beta>
<m_out_aux_mode>0</m_out_aux_mode>
<m_motor_temp_sens_type>0</m_motor_temp_sens_type>
<m_ptc_motor_coeff>0.61</m_ptc_motor_coeff>
<m_ntcx_ptcx_res>10000</m_ntcx_ptcx_res>
<m_ntcx_ptcx_temp_base>25</m_ntcx_ptcx_temp_base>
<m_hall_extra_samples>1</m_hall_extra_samples>
<m_batt_filter_const>45</m_batt_filter_const>
<si_motor_poles>14</si_motor_poles>
<si_gear_ratio>1</si_gear_ratio>
<si_wheel_diameter>0.083</si_wheel_diameter>
<si_battery_type>0</si_battery_type>
<si_battery_cells>16</si_battery_cells>
<si_battery_ah>27</si_battery_ah>
<si_motor_nl_current>1</si_motor_nl_current>
<motor_brand>Unnamed</motor_brand>
<motor_model>Not Specified</motor_model>
<motor_weight>0</motor_weight>
<motor_sensor_type>0</motor_sensor_type>
<motor_description><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Roboto'; font-size:12pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">A motor description can be edited here.</p></body></html></motor_description>
<motor_quality_bearings>0</motor_quality_bearings>
<motor_quality_magnets>0</motor_quality_magnets>
<motor_quality_construction>0</motor_quality_construction>
<motor_quality_description><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Roboto'; font-size:12pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Some comments about the motor quality. Images can be added as well.</p></body></html></motor_quality_description>
<bms.type>1</bms.type>
<bms.limit_mode>3</bms.limit_mode>
<bms.t_limit_start>45</bms.t_limit_start>
<bms.t_limit_end>65</bms.t_limit_end>
<bms.soc_limit_start>0.05</bms.soc_limit_start>
<bms.soc_limit_end>0</bms.soc_limit_end>
<bms.fwd_can_mode>0</bms.fwd_can_mode>
</MCConfiguration>
4 Likes

-You have voltage and current enough
-You reach a high duty cycle so rpm could be enough too if it was throttled long enough to settle on max rpm during the logged pic.
-Wing is large enough and proven on efoil
-Motor is large enough and proven on efoil

-The prop is not too small, rather too big but if motor can drive it at a high rpm then still you’ll get a lot of thrust. One thing that stands out is that above 30% you don’t get more thrust - this could indicate that the blades are bending.

ESC and motor matching doesn’t seem good. Motor current is jumping up and down on the same duty cycle. Did you set up the motor in VESC tool?
(This could be propeller blades flopping too)
A longer log at full throttle would give better insight!

Besides propeller and VESC setup it might be that board is just too small for your weight and has a lot of extra flanges and sh*t causing drag that’s too high - and/or your technique needs working on. It’s easy to stall the wing in the beginning: keep the nose down when accelerating, it should only be pointing slightly up during starts, 0-5 degrees or so.

You could also try:
-another propeller and see if it helps, we don’t know how good that one is or even the pitch.
-Increasing motor current to 200A
-rematch motor in vesc tool, try to increase/set parameters so that you max the achieved propeller rpm at full throttle
-cover or cut the flanges and bulges that create drag (this rifle case doesn’t look too good as a base for a board build)

3 Likes

I also tend to think that the problem is the lack of rigidity of the blades. Try replacing the propeller or laminate the blades with carbon fiber.

1 Like

I’m still using the prop from flipsky 7.5in 5pitch cut down to 144 and I am going great same motor as on 12s. If you have that prop worth time to trim it.

Is your throttle calibrated properly? When you pull the trigger does it go all the way?
Out your phone in the case running vesctool and logging and see what you get for current and power etc. Then post the log here.

Did you run the motor recognition wizzard?

If you do it choose big innerrunner
After recognition set Motor current max to 180. Battery current to 150 and absolute max current to 400

And you need to run the input wizzard too. Check that after reading your values you need to hit the apply button.
Then it should work

4 Likes

Thanks, Larsb for the review and advice. Let me comment on that.

  • prop: Yes indeed, It is printed from PLA with 100% infill. However, the blades are a bit floppy on the edges. I had a smaller prop made on an MSLA printer but it fell apart. But before that the result was similar (I also have max current at 110A so it is hard to compare.)
    I would be grateful if you can recommend me some.

  • The graph: I just wanted to demonstrate that the VESC can give a decent current. It was acquired when the propeller was sunken in a big bucket. However, after 1 second of full throttle, almost all the water was gone :grinning:.

  • Yes I did set up that in VESC with the wizard. But I was often getting “Overcurrent error” so even the wizard failed so I had to manually set “max current”

  • Board size: I am 89/90 kg, 183cm “not great not terrible” Do you think it could be too much for the board?

  • Increasing motor current to 200A: Isn’t i too much? Now when I set over 150 I am getting shutdowns at full throttle. I will try to use the motor wizard once again.

  • covering the flanges: good idea

Really, such a big current? Are you sure the VESC and Motor can handle it?

I did use the input wizard. But it was also kind of wierd. The mapping was goor and the motor was accelerating lineary nicely from 0-100 throttle. But the next step, where all other params are stored causes that the acceleration was linear only at first 10-20% Than it was saturated.

There is also one thing I did not connect “Battery” and “Motor” wire to my remote


I only use PWM and Serial (green)

Not sure if it is ok.

thats is excelent idea, Thanks

  • prop:
    There are several props that are good, my first two choices would be the flite efoil propeller, the hole in it needs to be adapted to fit your motor though.
    or an efoil prop from propellerking. Manta foils has an ok prop too but it’s brittle. Several people here have also succesfully used the flipsky prop cut down

  • The graph:…,
    Ok, then it’s not really proven how it works during a full start (and then we know very little but i think the motor control is a problem for you) A picture of a longer logged try in a bathtub or pool/whatever would be a lot better to determine the function

  • Yes I did set up that in VESC with the wizard. But I was often getting “Overcurrent error” so even the wizard failed so I had to manually set “max current”
    overcurrent error means motor control isn’t good. Did you remove phase filters in program before running detection? There are videos where to find it in vesc tool, from memory it’s found under motor control—>general tab. If you didn’t switch them off then motor detection won’t work with your VESC (the trampa VESCs however would as they have hardware support for it)
    You might also try to increase ”max abs overcurrent” to 300 to allow higher current spikes before shutdown - but this is also an increased risk to kill the vesc since the spikes affect the mosfets.

  • Board size: I am 89/90 kg, 183cm “not great not terrible” Do you think it could be too much for the board?
    It’s a combination of several things, high drag is one of them. How many liters is the case?

  • Increasing motor current to 200A: Isn’t i too much? Now when I set over 150 I am getting shutdowns at full throttle.
    The shutdowns come from poor motor control, motor itself can take more. 200A is ok for the motor for shorter durations .

Coul you please give me a link to prip you are using? And the trimming … why and how… thank you!