BREmote - DIY Remote

Hi everybody,
I would like to share the project I have been working on the last few monts:
A fully 3D printed remote for eFoil and eSkate, called the BREmote.

My design philosophy is simple: Only basic features, reliable, open source, as little external parts as possible, and the parts that can’t be 3D printed should be easily obtainable and affordable.
At 10pcs. each, the remote costs around 35$/€ (excluding the 3D printed parts)

Features:

  • All mechanical parts 3D printed (even the springs)
  • Symmetric design - left & right side can be swapped
  • Sustainable - All external parts can be replaced
  • Open Source: 3D Models, Electronics and Software are GPL3.0
  • 2.4GHz Link (range dependant on antenna type, position)
  • Communication with VESC via UART / CAN
  • Low battery alarm (vibration)
  • Water ingress alarm integrated in receiver
  • Fall-off detection (not yet implemented)
  • Gears / Power Levels / Cruise Control
  • Charging and Programming via USB

Links:

Q&A:

Q: Can I use some form of cruise control with the remote?
A: Yes, with the 2-way button on the opposite site of the trigger, the user can select 10 increments, limiting the throttle signal to from 10% to 100% while keeping the throttle fully pressed. This allows for easy riding at a constant speed.

Q: The code being open source, if I modify it, will I be able to download the modified sw on the remote easily?
A: Yes, the connector at the bottom of the remote complies with USB standard. Charging as well as updating firmware via Arduino IDE is as easy as plugging the USB cable into your PC.

Changelog:

Soon:

  • Share mechanical, electrical and SW files
    To be clear: I don’t want so sell anyting to anyone. Neiteher by myself nor to/via a “big” manufacturer. The only reason why the files are not online yet, is, that I want to do some more testing,verifying and documenting before I release them. This is to make sure everybody building this has a good time without problems.

04 Feb 2023:

  • Share project on foil.zone

Nov 2022 - Jan 2023:

  • Design of Mechanics, Schematics, Layout
  • Ordering 10 parts each
  • Create YT Videos
  • Betatesting by myself and 5 people from eFoil group
21 Likes

Promo Video:

12 Likes

A few images of the remote:




13 Likes

Nice development! I’ll try one if you need testers.
I have done some wired remote designs for myself and i own a 3d printer so i’ll be able to contribute at least with some fine tuning if you need it.
I think the code and communication integrity and safety around that is the key to any remote so hope you got that covered, guess it is if you’re a SW engineer :grinning_face_with_smiling_eyes:

1 Like

Well, first of all I, am a HW engineer.
I puto effort into writing the SW, but it may not be perfect (yet).
I use the NRF24 wireless modules, together with the Arduino library. This handles CRC already. Each NRF module can be given a 5-byte adress for not interfering with other riders at the same time. There is packet loss monitoring already as well as basic sanity checking of the received information in the SW already.

6 Likes

This is excellent. Thanks so much for sharing!

Hi Everybody,

Today is the day! :partying_face:
Here you can find the official Github with all files for the BREmote

It is now in a state that I am comfortable with sharing.
Please note: There may still be bugs! Some of the features and parts of the circuit are not 100% tested yet!
If you have any problems, please have a close look at the Readme-Files located e.g. in Mechanics and Source folders! Also, have a good look at the build video.
If those don’t help you, or you have another problem, open an issue on Github, while following the template as good as possible.

Changelog:

Open

2023-03-12: [Release V1.3]

2023-03-20: [Electronics - Rx]

  • Added components to make Water Ingress Detection (Wetness Sensor) more resitant to electromagnetic disturbance

2023-03-20: [Source]

  • Added BMS monitoring function
  • Fixed Water Ingress Detection (Wetness Sensor) functionality

2023-03-12: [Release V1.2]

2023-03-12: [Source]

  • Added more information, which Board and Processor to select for programming with Arduino IDE
  • Renamed Source Files to not contain Version anymore
  • Added Water Ingress Detection (Wetness Sensor) functionality

2023-03-07: [Release V1.1]

2023-03-04: [Electronics - Tx]

  • Made Board 1mm smaller (each 0.5mm from top/bottom)
  • Therefore shifted SPI vias and some other traces, changed style of motor pinheaders

2023-03-04: [Source]

  • Found a error which depleated the battery in standby mode.
  • Changed System.ino : disablePower() routine

2023-01-20: [Mechanics]

  • Added Trigger Opitions with -15 and -30°
  • Made Selector Rotator and Selector Spring thinner
  • Updated “AllTheSmallThings”

2022-12-30: [Mechanics]

  • Added Trigger spring with 1mm thickness (before: 1.2mm could lead to spring not being able to “roll in” all the way)

2022-12-02: [Electronics - Rx]

  • Added protection diode to BMS measurement

2022-11-06: [Electronics - Tx]

  • Better GND Connection for NRF Module
  • Corrected Battery Polarity in whiteprint
  • Added Diode to VREF
  • Changed Reset to SMD Pad
13 Likes

Yeeey!! Thanks for your efforts! I’ll start building it in the next couple of days.

1 Like

As there have been quite a few updates and new features (see also changelog below), I decided to make a short video about all the news:

Changelog:

2023-03-31: [Release V1.4]

2023-03-31: [Readme]

  • Added connection diagrams

2023-03-31: [Source]

  • Made connection to VESC UART optional (defined in SHARED_CONFIG)
  • Added analog UBAT measurement

2023-03-31: [Electronics - Rx]

  • Added component to make analog UBAT measurement more resitant to electromagnetic disturbance

2023-03-30: [Source]

  • Add error timeout, to allow user to change gear during an error

2023-03-12: [Release V1.3]

2023-03-20: [Electronics - Rx]

  • Added components to make Water Ingress Detection (Wetness Sensor) more resitant to electromagnetic disturbance

2023-03-20: [Source]

  • Added BMS monitoring function
  • Fixed Water Ingress Detection (Wetness Sensor) functionality

2023-03-12: [Release V1.2]

2023-03-12: [Source]

  • Added more information, which Board and Processor to select for programming with Arduino IDE
  • Renamed Source Files to not contain Version anymore
  • Added Water Ingress Detection (Wetness Sensor) functionality

2023-03-07: [Release V1.1]

15 Likes

This is amazing! Thanks a lot for sharing.

Has anyone built one for themselves yet? I’m tempted to have a go myself.

1 Like

I have everything ordered and delivered, except the PCBs. I will order the PCBs this week also. But that’s not cheap. Min. 5 pcs, totals well over 100 eur with shipping to the EU. This cost is the only drawback of the project so far.

I’ll keep you updated.

Thanks for the update. That is a shame about the minimum order quantities for the pcb. That makes it more difficult cost wise as an individual.

Looks like a group buy to me :wink: ! The best think is probably to order 5 to 10 and keep 2 for personnal use…

Hi Everybody,
Thanks for the feedback.
In Germany, 4 People (other than me) have built one:
@kotnascher @superlefax @sat_be and Arne (dont know his Forum Name)
Maybe they can also share their thoughts, but the feedback I got was “It was so fun to build, I want to build another one”

For a german efoil group I have managed the ordering of the PCBs. There we have managed to get 30 orders.
At 30 PCBs (each Rx and Tx), I am at 19€ incl. shipping and taxes to germany for both.

I also envision, that people from the same country get together and order in groups.
Also, in EU, you can also contact me, then I can send you PCB already including the Bootloader for 30 Euro within Germany and 35 Euro within EU (incl. shipping).

Btw, MOQ for PCB is 5, but MOQ for the assembly is only 2, so if I look the prices up, 2 each of Rx and Tx is about 85 Euros to EU (so if you share with another person, 42 Euro per person)

4 Likes

See here where to click on JLC:


For Rx, you can also deselect the IMU (accelerometer). Keep it for Tx, if you want fall-off-detection.

This is the final cost for each 2x Rx and 2x Tx.

1 Like

I built one as part of the beta testers. Although I haven‘t tested it on the water yet, I can say it is well desingned. Ludwig thought about every detail and he already provided several updates (hw and sw). I was also able to adapt the ppm timing in the code to my preference.
I think if you can do a group order or get a kit from Ludwig, this is a very god remote for the money. You can always update it if there should be bugs or new features oposed to many chinese remotes. The only drawback is you need some skills and tools to build it yourself and also need to flash the code (which is not too difficult).

The „waterproofing“ with expansive foam is an innovative solution, no long term test result yet, time will tell.


4 Likes

Looks interesting. Thanks for your effort and energy put into this project.
Have you tried the PCB service from SeedStudio Fusion PCB Manufacturing & Prototype PCB Assembly - Seeed Studio (CN) ?
HOWTO: Seeed Fusion PCB & PCBA Review | Hackaday.io

List of pcb maufacturers How to order print boards (PCBs) - STorM32-BGC Wiki

No, haven’t tried them, as I have had good experience with JLC for many years now.
But if someone does order the BREmote at another manufacturer, feel free to share the reults here :slight_smile:

I just sent all the files to my unknowing 3dprinter pal for printing and realised it would be super useful with a stepfile with the completed assembly - both to be able to spin it round in the cad and see how it’s assembled and for modification if one wants to do some changes.

Working with STLs in Catia (as i do) is a nightmare so having the STEPS is a dream for me - pleease! :smiley:

Hi Lars,
I hope you also sent your pal the Readme with the printing instructions!
See this LINK

Or click here

Print settings:

  • All parts are already in correct orientation for printing!
  • Only Main_Body needs support.
  • Nozzle Dia 0.4mm
  • Layer Height 0.2mm
  • First Layer 0.3mm)
  • PETG recommended.

What to do:

  • Parts without numbers at the end, print 1 times
  • Parts with _2x, print 2 times
  • Parts with _2m, print once and once mirrored (MagRodCover and MainBody)
  • For the MagRodStopper, there are 4 lenghts, try with _+02_default
    • If too tight → use _+04, if too lose → use _00 or _-02
  • Trigger:
    • There are 3 trigger angles, see image below
    • Righthander: Print Trigger once
    • Lefthander: Mirror Trigger and print once
  • Or just use the combined .stl in the “Combined” folder

If you want to see the assembly and more details about the CAD, see: LINK
The STEP file can be found here: “Rightclick->SaveAs…”

5 Likes