got everything working at 1.5Mbaud (woohoo!!)
diff --git a/bbb_cape/src/bbb/uart_reader_main.cc b/bbb_cape/src/bbb/uart_reader_main.cc
index 475d354..e3f4f9d 100644
--- a/bbb_cape/src/bbb/uart_reader_main.cc
+++ b/bbb_cape/src/bbb/uart_reader_main.cc
@@ -23,8 +23,7 @@
reset_pin.MakeOutput();
#endif
- //::bbb::UartReader receiver(3000000);
- ::bbb::UartReader receiver(30000);
+ ::bbb::UartReader receiver(1500000);
Time last_packet_time = Time::Now();
while (true) {
diff --git a/bbb_cape/src/cape/cows.c b/bbb_cape/src/cape/cows.c
index bad2b30..cdabaac 100644
--- a/bbb_cape/src/cape/cows.c
+++ b/bbb_cape/src/cape/cows.c
@@ -42,7 +42,7 @@
while (source_index < ((source_length - 1) / 4) + 1) {
code = source[source_index];
- if (source_index + code > source_length && code != 1) {
+ if (source_index + code > source_length / 4 && code != 1) {
return 0;
}
diff --git a/bbb_cape/src/cape/fill_packet.c b/bbb_cape/src/cape/fill_packet.c
index 4ff5b38..32e59a3 100644
--- a/bbb_cape/src/cape/fill_packet.c
+++ b/bbb_cape/src/cape/fill_packet.c
@@ -89,7 +89,6 @@
led_set(LED_ERR, 0);
//gyro_init();
- //uart_common_configure(3000000);
- uart_common_configure(30000);
+ uart_common_configure(1500000);
uart_dma_configure(DATA_STRUCT_SEND_SIZE, buffer1, buffer2);
}
diff --git a/bbb_cape/src/cape/uart_common.c b/bbb_cape/src/cape/uart_common.c
index 7b05102..3b8cd9a 100644
--- a/bbb_cape/src/cape/uart_common.c
+++ b/bbb_cape/src/cape/uart_common.c
@@ -11,7 +11,7 @@
void uart_common_configure(int baud) {
gpio_setup_alt(GPIOA, 9, 7);
gpio_setup_alt(GPIOA, 10, 7);
- //GPIOA->OSPEEDR |= GPIO_OSPEEDER_OSPEEDR9; // we want to go FAST!
+ GPIOA->OSPEEDR |= GPIO_OSPEEDER_OSPEEDR9; // we want to go FAST!
RCC->APB2ENR |= RCC_APB2ENR_UARTEN;
// baud = 60MHz / kMultiplier * (whole_part + fraction / kMultiplier))
diff --git a/bbb_cape/src/flasher/stm32_flasher.cc b/bbb_cape/src/flasher/stm32_flasher.cc
index 35d95a7..ddddb1b 100644
--- a/bbb_cape/src/flasher/stm32_flasher.cc
+++ b/bbb_cape/src/flasher/stm32_flasher.cc
@@ -28,7 +28,9 @@
}
::std::string target = argv[1];
- ::std::string device = "/dev/ttyUSB0";
+ //::std::string device = "/dev/ttyUSB0";
+ // TODO(brians): Figure out an intelligent way to set the device to use.
+ ::std::string device = "/dev/ttyO1";
serial_baud_t baud_rate = SERIAL_BAUD_57600;
::std::string filename =