Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Potentially adding Cammus settings into Boxflat? #9

Open
KaJe5380 opened this issue Aug 9, 2024 · 8 comments
Open

Potentially adding Cammus settings into Boxflat? #9

KaJe5380 opened this issue Aug 9, 2024 · 8 comments

Comments

@KaJe5380
Copy link

KaJe5380 commented Aug 9, 2024

Based on this comment from JacKeTUs/universal-pidff#21 (comment)

And, if you would be willing to test, I think I could add Cammus settings to Boxflat. I already have a list and how they're communicated through serial. You can open an issue for Cammus, and we'll go from there

@spikerguy has a C5 and, I believe, also Cammus pedals. He had a git issue for tracking and implementing into the Oversteer project.

I will help as much as possible or until my C12 gives out (apparently, that's an issue Cammus is facing). I don't have any Cammus pedals sadly, to help in that area.

@Lawstorant
Copy link
Owner

From what @spikerguy told me, Cammus software only has wheelbase settings, and only 10 for that matter. I'll let you know when I'll have something to try out

@KaJe5380
Copy link
Author

KaJe5380 commented Aug 9, 2024

From what @spikerguy told me, Cammus software only has wheelbase settings, and only 10 for that matter.

From a review by BoostedMedia about the Cammus LC100 (Their loadcell competitor to things like Moza SR-P)
image
From a review by BoostedMedia about the Cammus CP5 (Their budget pedals that are included with C5 bundle, think Moza R5 bundle pedals)
image

I'll let you know when I'll have something to try out

No rush 👍 , worse case I just use the Cammus app.

Here is a Gist of a readme, with screenshots of the Cammus application

@spikerguy
Copy link

Hey @KaJe5380

Happy to see another cammus user uaing Linux.

Are you able to get ffb on Linux?

What settings are you expecting on box flat ?

Recently we added rpm led, speed lcd and gear lcd support for cammus c5.

https://youtube.com/shorts/TznEHQ4lPZM

Can you share the output of the following cmd

lsusb
sudo dmesg right after connecting the cammus c12 wheel base.

I have requested cammus to send me c12 when they plan to add support.

@KaJe5380
Copy link
Author

KaJe5380 commented Aug 9, 2024

Are you able to get ffb on Linux?

universal-pidff has already merged my Cammus C12 pr and should work from my testing. SDL has also merged the pid and vid into the main branch for whitelisting. You can look into the pull request, but it's basically in the same state as the C5 with the driver.

I saw something about ffb translation not being the same across Linux and Windows issues. So, I'd like to test both Windows and Linux moreover.

What settings are you expecting on box flat ?

I want to wait until I see what @Lawstorant wants me to try out, before expecting anything. Especially since boxflat is targetted towards Moza, and I've been fine with the Cammus mobile app.

Can you share the output of the following cmd
lsusb
sudo dmesg right after connecting the cammus c12 wheelbase.

lsusb

Bus 003 Device 009: ID 3416:1023 Cammus_C12_HUB_V021 Cammus_C12_HUB_V009 Buttons
Bus 003 Device 010: ID 3416:0302 CAMMUS CAMMUS C12 Base

PID and VID for base have already been supplied to Jack and SDL. I mostly just used KDE about system instead.

[   98.412426] usb 3-1.1.3: new full-speed USB device number 9 using xhci_hcd
[   98.544418] usb 3-1.1.3: New USB device found, idVendor=3416, idProduct=1023, bcdDevice= 2.00
[   98.544423] usb 3-1.1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[   98.544426] usb 3-1.1.3: Product: Cammus_C12_HUB_V009 Buttons
[   98.544429] usb 3-1.1.3: Manufacturer: Cammus_C12_HUB_V021
[   98.544431] usb 3-1.1.3: SerialNumber: 48FE47893856
[   98.640521] Cammus_C12_HUB_V021 Cammus_C12_HUB_V009 Buttons: Invalid code 768 type 1
[   98.640525] Cammus_C12_HUB_V021 Cammus_C12_HUB_V009 Buttons: Invalid code 769 type 1
[   98.640527] Cammus_C12_HUB_V021 Cammus_C12_HUB_V009 Buttons: Invalid code 770 type 1
[   98.640528] Cammus_C12_HUB_V021 Cammus_C12_HUB_V009 Buttons: Invalid code 771 type 1
[   98.640530] Cammus_C12_HUB_V021 Cammus_C12_HUB_V009 Buttons: Invalid code 772 type 1
[   98.640531] Cammus_C12_HUB_V021 Cammus_C12_HUB_V009 Buttons: Invalid code 773 type 1
[   98.640533] Cammus_C12_HUB_V021 Cammus_C12_HUB_V009 Buttons: Invalid code 774 type 1
[   98.640534] Cammus_C12_HUB_V021 Cammus_C12_HUB_V009 Buttons: Invalid code 775 type 1
[   98.640536] Cammus_C12_HUB_V021 Cammus_C12_HUB_V009 Buttons: Invalid code 776 type 1
[   98.640537] Cammus_C12_HUB_V021 Cammus_C12_HUB_V009 Buttons: Invalid code 777 type 1
[   98.640602] input: Cammus_C12_HUB_V021 Cammus_C12_HUB_V009 Buttons as /devices/pci0000:00/0000:00:08.1/0000:0c:00.3/usb3/3-1/3-1.1/3-1.1.3/3-1.1.3:1.0/0003:3416:1023.000C/input/input26
[   98.640925] hid-generic 0003:3416:1023.000C: input,hidraw5: USB HID v1.11 Joystick [Cammus_C12_HUB_V021 Cammus_C12_HUB_V009 Buttons] on usb-0000:0c:00.3-1.1.3/input0
[   98.862264] usb 3-1.1.2: new full-speed USB device number 10 using xhci_hcd
[   98.994420] usb 3-1.1.2: New USB device found, idVendor=3416, idProduct=0302, bcdDevice= 2.00
[   98.994426] usb 3-1.1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[   98.994428] usb 3-1.1.2: Product: CAMMUS C12 Base
[   98.994430] usb 3-1.1.2: Manufacturer: CAMMUS
[   98.994432] usb 3-1.1.2: SerialNumber: 1722582895
[   99.127981] input: CAMMUS CAMMUS C12 Base as /devices/pci0000:00/0000:00:08.1/0000:0c:00.3/usb3/3-1/3-1.1/3-1.1.2/3-1.1.2:1.2/0003:3416:0302.000D/input/input27
[   99.128275] hid-generic 0003:3416:0302.000D: unknown set_effect report layout
[   99.128281] hid-generic 0003:3416:0302.000D: input,hiddev98,hidraw10: USB HID v1.11 Gamepad [CAMMUS CAMMUS C12 Base] on usb-0000:0c:00.3-1.1.2/input2
[   99.140498] cdc_acm 3-1.1.2:1.0: ttyACM0: USB ACM device
[   99.140521] usbcore: registered new interface driver cdc_acm
[   99.140523] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
[   99.219318] input: CAMMUS CAMMUS C12 Base as /devices/pci0000:00/0000:00:08.1/0000:0c:00.3/usb3/3-1/3-1.1/3-1.1.2/3-1.1.2:1.2/0003:3416:0302.000D/input/input29
[   99.219457] hid-universal-pidff 0003:3416:0302.000D: input,hiddev98,hidraw10: USB HID v1.11 Gamepad [CAMMUS CAMMUS C12 Base] on usb-0000:0c:00.3-1.1.2/input2
[   99.219465] hid-universal-pidff 0003:3416:0302.000D: implement() called with too large value 4 (n: 1)! ((udev-worker))
[   99.220636] hid-universal-pidff 0003:3416:0302.000D: implement() called with too large value 4 (n: 1)! ((udev-worker))
[   99.230417] hid-universal-pidff 0003:3416:0302.000D: device has unknown autocenter control method
[   99.230422] input input29: Force feedback for USB HID PID devices

Recently we added rpm led, speed lcd and gear lcd support for cammus c5.

Looks very cool, saw this project (monocoque) but didn't know they added C5 support. I will look into setting it up and compiling it. I know I could be wrong, but the C12 just seems to be a repackaged C5, shouldn't take to many changes for it to work.

@spikerguy
Copy link

spikerguy commented Aug 9, 2024

@KaJe5380

can you try this

printf '\xfc\x05\x01\xff\x03' > /dev/hidraw5

Need to run it as root, given that hidraw5 is still attached to Cammus_C12_HUB_V021 Cammus_C12_HUB_V009 Buttons

if hidraw number changes then change it in the command.

let me know if the rpm led and lcd output something.

Regarding monocoque we are working on getting more games and devices supported.

@Lawstorant
Copy link
Owner

@spikerguy as this is not related to Boxflat, could you move this conversation to an issue in monocoque repo? Thanks

@spikerguy
Copy link

@spikerguy as this is not related to Boxflat, could you move this conversation to an issue in monocoque repo? Thanks

Yes that was my initial thought.

Let me create an issue there.

Thanks. Keep this open till cammus support is added.

@spikerguy
Copy link

spikerguy commented Sep 13, 2024

We can add cammus C12 rpm led colour preset, lcd brightness, left and right leds and all buttons leds colour and brightness

### Lcd and rpm led logics Cammus C12 Hub
VID:3416
PID:1023

### Set LCD display show mode data logic
fafb0602 is to show speed in kmph
Bit 1,2 and 3 = secret to set lcd display logic
Bit 4 = 1, 2 or 3
1 = Display only gear
2 = Display speed in kmph
3 = Display speed in mph
Example
Fafb0601 it for lcd show only gear and ignores speed
Fafb0603 is  for speed in miles ph

### LCD Brightness
Xfa\xfb\x01\06
Bit 1, 2 and 3 + secret to change lcd Brightness
Bit 4 = 1 to 8 where 6 of 8 is set

### Manual led Colour set
xfa\xfb\x02\x10\xff\xff\x7f  = light yellow
Bit 1,2 and 3 = secret to manually change led colour or Brightness
Bit 4 = led number
bit 5,6 and7 = colour and Brightness depends on color rgb hex

### RPM Led numbers
1st -9th = x01 - x09
10th - 15th leds = x0a -  x0f

### Right side leds _ starting from left
x15
x16
x17

### Left side LED starting from left xfaxfbx02
x10
x11
x12

### Extra leds inside each button
L1 = x13
L2 = x14
L3 = x1a
L4 = x1b
L5 = x1c

R1 = x18
R2 = x19
R3 = x1f
R4 = x1e
R5 = x1d

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants