jrnelson90 / tinderboxpedal Goto Github PK
View Code? Open in Web Editor NEWBluetooth "Universal Remote" Footpedal for Digital Guitar Amps, on ESP32 or Pi Zero W
License: Apache License 2.0
Bluetooth "Universal Remote" Footpedal for Digital Guitar Amps, on ESP32 or Pi Zero W
License: Apache License 2.0
How did you get the bluetooth codes for the different buttons and is there more code that could be used for different functions?
Hi there! Such a great job you are doing here. I really appreciate it.
I am just starting on arduino and I am really bad at it. I am just an Electrician.
The issue I have is about the Oled Display. The switch foot works great but the screen does not do enything.
I've checked the librery and all is ok.
Olso I checked the Oled Display with the Elegoo Uno R3 board and it works fine.
The board I have is from AZ-Delivery and the modell is ESP32-WROOM-32
The screen is too from AZ-Delivery and the modell is Oled Display I2C 128X64
I don't know what else to try.
I'll aprreciate any sugestion.
Thank you so much.
Just a quick one Justin - This is great work!.
Looks like your electrical schematic has the buttons going sequentially from bottom to top 1-4?
Button 1 and 2 look ok, but buttons 3 & 4 seem to be going to the wrong pins according to you GPIO assigment on Tinderbox.py (assuming the schematic buttons are drawn from 1 to 4 sequentially upwards)
Button 3 goes to 19 / button 4 goes to 26
This could cause confusion, with button 3 operating preset 4 and visa versa - easily fixed with labelling the schematic buttons?
Unlike the Pi version based on the PyBluez stack, the Arduino-Core BT stack will intermittently disconnect from the Spark after periods of disuse. A callback on disconnect currently calls a the connection method to compensate for this, but it would be better if this could be fix with a ping message short term, and better Bluetooth connection code long term,
Hi all, I found the same two errors as others have in the schematic. Buttons 3 and 4 transposed and SCL needs to be on GPIO22 as is standard. I hope the schematic is updated one day.
Hi Justin, thanks for your excellent work. May I ask how do you find out these command codes?
TONE_1 = "01fe000053fe1a000000000000000000f00124000138000000f779"
TONE_2 = "01fe000053fe1a000000000000000000f00123010138000001f779"
TONE_3 = "01fe000053fe1a000000000000000000f00125020138000002f779"
TONE_4 = "01fe000053fe1a000000000000000000f00120030138000003f779"
45 seconds on a Pi Zero is much longer than the near instant bootup of the ESP32 version. While complete match in startup performance should not be expected, minimizing this disparity via scripts or a custom light image would be a great improvement.
Hi Justin
Very impressed with what you and team have done here!!
I haven't tried Wireshark, but wrote this for an ESP32 board (M5Stack Core2) to appear to the Spark app as the amp and record the traffic sent to the amp and show it on the Serial Monitor (in the Arduino program).
Next step is to send this over wifi to something connected to the actual amp (via bluetooth) and capture the return traffic - I've started on that using a Pi 400.
Only works with Android - I think iPhone must use BLE not bluetooth serial?
https://github.com/paulhamsh/SparkSpoofer/blob/main/Spark_Server_Core_3_SerialOnly.ino
Paul
If you open it on a machine, it looks very differently than if you view it upon starting the script
Have you find a way to make the script to run at boot on a raspberry?
i tried all sort of way but did not ended up as expected
Hi
I am working on decoding the data format to add to the amazing work above. I think the key is the 8th byte in the sequence - so I've created this addition to the description you have created.
I am still working through how this works but think it all relies on the 8th byte, and that data is not prefixed by a type indicator.
I hope this helps.
`
The body of the message made of sequences of 8 bytes - 7 bytes of data and 'format' byte.
Arguments are sequential in the data sequence and the format byte shows where new a new argument starts.
Each bit maps to a byte in the next sequence, and if the bit is set in the format byte then that byte in the sequence is the start of a new data element.
Strings have their length as their first byte (stored as 0x20 + length).
An example is shown below, with each new data sequence on a new line. The bit expansion is the 8th byte with the bits reversed, to show where the new sequence starts:
D1 D2 D3 D4 D5 D6 D7 F1 Bit expansion of F1
xx xx xx xx xx xx xx 02 0100 000x
xx
2b 52 6f 79 61 62 40 0000 001x
20 43 72 6f 77 6e
23 08 0001 000x
30 2e 37
27 31 2d 43 10 0000 100x
6c 65 61 6e
28 69 63 40 0000 001x
6f 63 2e 70 6e 67
4a 32 0100 110x
42
70 00 00
17
2e 62 00 0000 000x
69 61 73 2e 6e 6f 69 40 0000 001x
73 65 67 61 74 65
xx xx xxxx xxxx
Which translates to:
String: Royal Crown
String: 0.7
String: 1-Clean
String: icon.png
???: 4a 42
???: 70 00 00
???: 17
String: .bias.noisegate
It appears that strings are the only variable length data sequence and the only sequence that starts with a length
`
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.