Fred Sundvik
|
a08bcea998
|
Don't accept remote objects with the wrong size
Fixes memory corruption when the crc happens to match, but the size
doesn't.
|
2016-05-15 11:58:20 +03:00 |
|
Fred Sundvik
|
3b422d2ac4
|
Add debug print for serial link errors
This is disabled by default
|
2016-05-15 11:36:39 +03:00 |
|
Fred Sundvik
|
59657355d2
|
Master mode remains active
It remains active even if the USB link is suspended or otherwise
temporarilly goes down.
|
2016-03-13 21:38:51 +02:00 |
|
Fred Sundvik
|
f7275f0ede
|
Configurable baud setting
|
2016-03-12 22:37:04 +02:00 |
|
Fred Sundvik
|
d835ad91a3
|
Resend the keyboard state every ms
In case there's some errors on the link, and the packet gets lost
|
2016-03-12 20:08:08 +02:00 |
|
Fred Sundvik
|
32f0171d39
|
Fix crash when receiving unregistered remotes
|
2016-03-12 19:41:34 +02:00 |
|
Fred Sundvik
|
11bd4ba0dd
|
Remote object callable from many places
Change init_transport to add_remote_objects, so that it can be
called many times from different places.
|
2016-03-12 19:35:09 +02:00 |
|
Fred Sundvik
|
168c5b679f
|
Call remote matrix update, when the matrix changes
|
2016-02-28 23:58:47 +02:00 |
|
Fred Sundvik
|
6fe6d111bf
|
Send the keyboard matrix over the serial link
|
2016-02-28 22:52:30 +02:00 |
|
Fred Sundvik
|
d8d4622802
|
Improve serial link initialization, and add driver
|
2016-02-28 21:46:29 +02:00 |
|
Fred Sundvik
|
46482460fa
|
Some small fixes for the serial update loop
|
2016-02-28 15:52:03 +02:00 |
|
Fred Sundvik
|
9cb139adc4
|
Add simple loop for updating the serial link
|
2016-02-27 22:28:35 +02:00 |
|
Fred Sundvik
|
36e4869531
|
Create a thread for the serial link
|
2016-02-21 23:52:00 +02:00 |
|
Fred Sundvik
|
6873b17117
|
Support for Chibios compilation
Remove some warnings, change the include paths.
|
2016-02-21 23:17:59 +02:00 |
|
Fred Sundvik
|
8cbfe79dd9
|
Add master to single slave transport
|
2016-02-21 21:47:40 +02:00 |
|
Fred Sundvik
|
7b88b8b7e1
|
Add slave to master transport
|
2016-02-21 21:32:01 +02:00 |
|
Fred Sundvik
|
64b7efeb72
|
Add proper initialization of transport buffers
|
2016-02-21 21:15:42 +02:00 |
|
Fred Sundvik
|
415ab91c9d
|
Add master to slave transport
|
2016-02-21 21:04:42 +02:00 |
|
Fred Sundvik
|
fe1db50fc3
|
Writing signals events
|
2016-02-21 18:51:10 +02:00 |
|
Fred Sundvik
|
2710361cd8
|
Change the triple buffer object interface
|
2016-02-21 18:30:04 +02:00 |
|
Fred Sundvik
|
679bfe7c54
|
More transport WIP
|
2016-02-21 17:33:31 +02:00 |
|
Fred Sundvik
|
4ee6eadf9e
|
Local and remote objects WIP
|
2016-02-21 12:53:51 +02:00 |
|
Fred Sundvik
|
b7059d35f9
|
Working triple buffering
|
2016-02-21 01:07:44 +02:00 |
|
Fred Sundvik
|
8e2d70d11f
|
Simplify the triple buffer implementation
|
2016-02-21 00:44:25 +02:00 |
|
Fred Sundvik
|
4bb5733cdc
|
Updates to triple buffer
|
2016-02-20 23:40:52 +02:00 |
|
Fred Sundvik
|
50edb3d90c
|
Add first version of triple buffered object
|
2016-02-20 22:22:42 +02:00 |
|
Fred Sundvik
|
c78eefba49
|
Add first transport tests
|
2016-02-20 15:49:31 +02:00 |
|
Fred Sundvik
|
ea346125e8
|
Add some validation for invalid router destinations
|
2016-02-20 15:28:42 +02:00 |
|
Fred Sundvik
|
532f98eef6
|
Support for other links sending to master
|
2016-02-20 15:14:40 +02:00 |
|
Fred Sundvik
|
c28e19c546
|
First link sending to master
|
2016-02-20 15:02:53 +02:00 |
|
Fred Sundvik
|
82b5037b9d
|
Add master send to specific destinations
|
2016-02-20 14:52:17 +02:00 |
|
Fred Sundvik
|
cee5406ed7
|
Add complete master broadcast test
|
2016-02-20 14:32:26 +02:00 |
|
Fred Sundvik
|
4b9fccc756
|
Start implement router
|
2016-02-20 13:59:48 +02:00 |
|
Fred Sundvik
|
5a1600e24f
|
Add link parameter
|
2016-02-20 12:06:23 +02:00 |
|
Fred Sundvik
|
419908e5ef
|
Hide the byte stuffer state inside it
|
2016-02-17 09:07:38 +02:00 |
|
Fred Sundvik
|
8d50880686
|
Use memcpy instead of cast to avoid alignment issues
|
2016-02-14 21:49:31 +02:00 |
|
Fred Sundvik
|
f22d2543b1
|
Rename route_frame to route_incoming_frame
|
2016-02-14 21:34:40 +02:00 |
|
Fred Sundvik
|
0eb62c4ce6
|
Rename recv_frame to validator_recv_frame
|
2016-02-14 21:33:14 +02:00 |
|
Fred Sundvik
|
2a6696bd3d
|
Add validator send frame
|
2016-02-14 21:31:01 +02:00 |
|
Fred Sundvik
|
62058329ff
|
Add crc32 validation of received frames
|
2016-02-14 21:13:16 +02:00 |
|
Fred Sundvik
|
a3ec3bbef8
|
Start implement frame validator
|
2016-02-14 20:45:59 +02:00 |
|
Fred Sundvik
|
713465fb41
|
Add some full round trip tests
Mostly to ensure that the receive and send framing works the same
way. Especially for the special case with 254 non-zeros.
|
2016-02-14 20:07:51 +02:00 |
|
Fred Sundvik
|
6956c177da
|
Add byte stuffing send support for large frames
|
2016-02-14 19:56:22 +02:00 |
|
Fred Sundvik
|
2f3ea76428
|
Fix name of some unit tests
|
2016-02-14 19:03:34 +02:00 |
|
Fred Sundvik
|
f3beeb0270
|
Hanlde sending of zero bytes for small packets
|
2016-02-14 18:59:01 +02:00 |
|
Fred Sundvik
|
a089eaa868
|
Add sending of small frames with no zeroes
|
2016-02-14 17:45:25 +02:00 |
|
Fred Sundvik
|
26537474ae
|
Add byte stuffer recv handling of too long frames
|
2016-02-14 15:57:44 +02:00 |
|
Fred Sundvik
|
e8cb6d8023
|
Bytestuffer recv handling of long frames
|
2016-02-14 15:28:57 +02:00 |
|
Fred Sundvik
|
eefb5b5634
|
Mutiple frame handling for byte stuffer
Also handles unexpected data.
|
2016-02-14 14:25:54 +02:00 |
|
Fred Sundvik
|
ce3a21cbea
|
Implement receive of valid small byte stuffed frames
|
2016-02-14 14:04:51 +02:00 |
|