Pff, too many variants of ESP32 boards around. Also chip pin numbers != board pin numbers != GPIO numbers. Look at the pinout.
Found this in the datasheet of the chip:
You would have to use board pin numbers 16 & 17 [GPIO16 & GPIO 17]. This...
It looks like you have this board. Problem is that the TX & RX signals of the ESP32 chip connect to [1] the external TX & RX board pins and to [2] the onboard "USB-to-UART Bridge".
So you are using the same serial port for Teensy communication...
On Teensy pin 0 is RX and pin 1 is TX.
If you have them wired as you state above you have RX going to RX and TX going to TX.
RX should go to TX and TX should go to RX.
Strangely enough, I couldn't get DeviceExample.ino to work with SoftwareSerial also.
So I tried using hardware serial on pins 0 & 1 instead. That works!
Mind you: I had to connect Teensy TX1 to module pin RX [green wire] and Teensy RX1 to module...
Where in your code do you actually read out the data from the GPS module?
From this page:
Perhaps it's a good idea to get the DeviceExample.ino [using SoftwareSerial and your pins] operational first and then move to HardwareSerial.
Paul
For a really basic test of the DAC, I would get rid of the MIDI code and just send a digital value to each of the DAC outputs and measure the voltage on that particular pin.
Did you try your code above? Did it work?
Paul
Tried the above code on a different ESP32 module and it works.
This DOIT ESP32 DEVKIT V1 module also shares the first serial port [TX0 & RX0] with the onboard serial-to-usb converter and thus is not usable for external comms. So had to use TX2 &...
If I understand this section of the FireBeetle board WIKI correctly, pins 1 & 3 are used for the serial communication to the PC/Arduino IDE.
For a comm link to the Teensy, you need to use UART2 (Serial2) on pins 16 & 17.
Your code would look like...
Hi Jordan, no, unfortunately that doesn't work that way.
Thing is you can only send bytes (values if you like) over the LIN bus. Electrically they are just 0's and 1's. What these bits mean, is up to us.
We start with a lin.order() command and...
Well, gave it a try myself.
Took me some time to find out that I had to use the HardwareSerial class to receive data by my ESP32-C3 SuperMini board...
Anyway, it's working now:
Teensy 4.0 code:
void setup() {
Serial1.begin(9600);
}
void...
While @AndyA's remark is certainly valid, I would focus on the serial port connection first like @jmarsh indicated.
Your Teensy code should look like this:
void setup() {
Serial1.begin(9600);
}
void loop() {
Serial1.println("Hello Boss")...
So you have been using (and are using) an external USB hub all the time? Is it possible to test without this hub?
Also, the timing remark by @MatrixRat does make sense to me.
Paul
Found this schematic with resistor values [but not LED Vforward]:
If that resistor value of 330Ω is true, a Teensy pin outputting 3.3V will probably not get the optocoupler LED to conduct sufficiently.
Paul
On the pinout card, the yellow-background signals are all related to digital audio I/O.
They can also be used for other purposes if you don't use these particular signals.
Paul
Teensyduino comes with its own PulsePosition library.
You should delete the one here C:\Users\Primary\Documents\Arduino\libraries\PulsePosition.
Then your code compiles fine (just tried).
Paul
Assuming you used this Rotary encoder library, I got it to compile with 2 errors:
Then I looked into the Teensy Joystick example [File > Examples > Teensy > USB_Joystick > Complete.ino] and there I noticed this piece of code:
void loop() {
//...
Teensy does not use a hardware serial port for uploading. Instead it uses a "virtual' serial port over USB [under the hood, it is a bit more complex than that but for basic understanding OK to work with]. That same virtual serial port is also...
Looking into the Teensy RadioHead library, in the examples/Teensy folder, I noticed the README.md states:
In your code, you use #define RFM69_INT digitalPinToInterrupt(3). Perhaps you should connect the G0 (IRQ) signal to Teensy pin 0 or 1...
When I look at Mouse.ino, I think the code should be:
#include "USBHost_t36.h"
USBHost myusb;
MouseController mouse(myusb);
USBHIDParser hid1(myusb);
USBHIDParser hid2(myusb);
void setup() {
Serial.begin(115200);
myusb.begin();
}
void...
Great result! Happy to be of help in reverse engineering in what was nearly a black box [but not any longer now].
Well, I hope you get the other heaters to communicate as well! I will check the wiki page every once in a while.
Paul
Both commenting _stream->read(); and modifying data[i-3] = tmp[i-1]; serve the same purpose: correcting the wrongly shifted byte. So you should choose either one.
When I run your code, I get this response:
Same response but correctly shifted by...
Welcome to the forum!
Button #2 is not used in this example apparently.
If I understand the Granular effect example correctly: as long as you press button0, the Freeze function is in effect. When you release button0, Freeze stops.
And as long as...
Can confirm the observation by @marilux.
Tested a few combinations:
Teensyduino 1.59.0
Teensyduino 1.58.2
FastLED 3.6
Not working
OK
FastLED 3.5
Not working
OK
FastLED 3.4
Not working
OK
Using Windows 10, Arduino IDE 2.3.2, Teensy...
Yes, it's called bit-shifting/masking/manipulation. Anyway, you figured it out!
So your heater is fully operational now? Are all 3 heaters operational?
Paul
[RESOLVED]
So, it turns out that I was attempting to call the begin() function on each of the MIDIDevice_BigBuffer devices. This is actually incorrect. Rather, the begin() function should only be called on the single USBhost device.
Here's a...
Have you tried swapping the RX and TX lines to the transceiver? Some transceiver boards have a confusing way to indicate what the RX and TX connections are.
Paul
Yeah, I concur...
Looked through both LIN Description Files that you shared in message #101, buth ID 39 (DEC), 27 (HEX) is not mentioned as an ID that returns data (or can be sent data to, for that matter).
It is interesting though that all 3...
Hmm, interesting. Although I'm under the impression that you need to issue a lin.response command to ID 0x3C/0x3D to get a message back?
Did you also see a lin.response frame from ID 0x27? My code sends it every 100ms, so should be visible as...
Weird, I see ID 0X3D on your scope. Did you change this line in your code: uint8_t responseID = 0x27;.
BTW, you can zoom in by turning the horizontal knob clockwise and then you use the horizontal "position" knob to shift the image to the left.
Can you turn the horizontal knob clockwise to zoom-in on one frame? Like I did in my screenshot above.
Can you also set the trigger to "trailing edge"? [it's called "Slope Falling" in the Trigger Setup menu]. And set the "trigger level" to around 6V?
I think the data is not correctly decoded on the scope. You should never see ID 0x3C with my latest code.
Did you set the level in the Decode > Signal menu to around 6V?
Could you zoom-in on one of those bursts such that I can see the edges of the bits? I have a feeling that it is 9600 baud. Did you set the scope to 19200 baud when doing these measurements?
Paul
Great! Although I'm a bit concerned because of the CRC returned being 0.
Well, let's see what the response actually returns.
Modified the code to read out only ID 0x27. I left the lin.order() in just to be sure. But you could comment that out to...
I read about LDF files but couldn't find them on the web. Conveniently, someone posted them!
Need to study these 2 files. Found a very useful document a while ago.
Paul
Using 2 "for" loops, makes it happen:
#include "lin_bus.h"
// Create an IntervalTimer object
IntervalTimer myTimer;
int ledState = LOW; // ledState used to set the LED
unsigned long interval = 200000; // interval at which to...
Yeah, that's really odd.
The only differences are that the extended code creates an IntervalTimer object (that is not used anywhere) and drives the onboard LED.
And on my desk the 'short' code works and shows the correct LIN bus activity? I'm...
I don't think WS2812Serial is broken as the sketch in this thread still runs fine (just tried).
But indeed FastLED_Cylon.ino does not run now.
What version FastLED library are you using? Here I'm on version 3.6.0. The version that comes with...
Yes, you do.
Did your code compile without errors? I just tried it and ran into compile errors.
Reason is this line: serial.print(receivedMsg.buf);, that should be serial.print(receivedMsg.buf[i]);.
BTW: if you want to share code, you can use...
Those bottom 2 screens are strange, ID 0x16? ID 0x18?
With respect to the scope: I used a time base of 2ms/div, and single-shot triggering on the trailing edge, trigger level around 6V.
You are not using the probes with 10x attenuation?
Paul
Yep, no need for the Interval timer and blinking LED. Keep the working software as simple as possible.
I would be seriously surprised when the circuitry will react before sending a Power ON request first. That's how I would design it if I was a...