diff --git a/manager/eris-mint/pipe.go b/manager/eris-mint/pipe.go
index d1071584bc4a10a1bb901c46c4fcb0349f93c5c4..7bbcd833b740016348218b4bbb8f10149110472b 100644
--- a/manager/eris-mint/pipe.go
+++ b/manager/eris-mint/pipe.go
@@ -24,6 +24,7 @@ import (
 	tendermint_common "github.com/tendermint/go-common"
   tendermint_events "github.com/tendermint/go-events"
 	tendermint_types  "github.com/tendermint/tendermint/types"
+	tmsp_types        "github.com/tendermint/tmsp/types"
   wire              "github.com/tendermint/go-wire"
 
   log "github.com/eris-ltd/eris-logger"
@@ -370,7 +371,41 @@ func (pipe *ErisMintPipe) BroadcastTxAsync(tx transaction.Tx) (
 	return &rpc_tendermint_types.ResultBroadcastTx{}, nil
 }
 
-func (pipe *ErisMintPipe) BroadcastTxSync(transaction transaction.Tx) (*rpc_tendermint_types.ResultBroadcastTx,
+func (pipe *ErisMintPipe) BroadcastTxSync(tx transaction.Tx) (*rpc_tendermint_types.ResultBroadcastTx,
 	error) {
-	return nil, fmt.Errorf("Unimplemented.")
+	responseChannel := make(chan *tmsp_types.Response, 1)
+	err := pipe.consensusEngine.BroadcastTransaction(transaction.EncodeTx(tx),
+		func(res *tmsp_types.Response) { responseChannel <- res	})
+	if err != nil {
+		return nil, fmt.Errorf("Error broadcasting transaction: %v", err)
+	}
+	// NOTE: [ben] This Response is set in /tmsp/client/local_remote_client.go
+	// a call to Application, here implemented by ErisMint, over local callback,
+	// or TMSP RPC call.  Hence the result is determined by ErisMint/erismint.go
+	// CheckTx() Result (Result converted to ReqRes into Response returned here)
+	// NOTE: [ben] BroadcastTx wraps around CheckTx for Tendermint
+	response := <-responseChannel
+	responseCheckTx := response.GetCheckTx()
+	if responseCheckTx == nil {
+		return nil, fmt.Errorf("Error, application did not return CheckTx response.")
+	}
+	resultBroadCastTx := &rpc_tendermint_types.ResultBroadcastTx {
+		Code: responseCheckTx.Code,
+		Data: responseCheckTx.Data,
+		Log:  responseCheckTx.Log,
+	}
+	switch responseCheckTx.Code {
+	case tmsp_types.CodeType_OK:
+		return resultBroadCastTx, nil
+	case tmsp_types.CodeType_EncodingError:
+		return resultBroadCastTx, fmt.Errorf(resultBroadCastTx.Log)
+	case tmsp_types.CodeType_InternalError:
+		return resultBroadCastTx, fmt.Errorf(resultBroadCastTx.Log)
+	default:
+		log.WithFields(log.Fields{
+			"application": GetErisMintVersion().GetVersionString(),
+			"TMSP_code_type": responseCheckTx.Code,
+		}).Warn("Unknown error returned from Tendermint CheckTx on BroadcastTxSync")
+		return resultBroadCastTx, fmt.Errorf("Unknown error returned: " + responseCheckTx.Log)
+	}
 }
diff --git a/rpc/tendermint/core/mempool.go b/rpc/tendermint/core/mempool.go
deleted file mode 100644
index 5e59667080aa411ca6f847a77d068f2a5708421f..0000000000000000000000000000000000000000
--- a/rpc/tendermint/core/mempool.go
+++ /dev/null
@@ -1,66 +0,0 @@
-package core
-
-import (
-	"fmt"
-
-	ctypes "github.com/eris-ltd/eris-db/rpc/tendermint/core/types"
-	txs "github.com/eris-ltd/eris-db/txs"
-	// "github.com/tendermint/tendermint/types"
-	tmsp "github.com/tendermint/tmsp/types"
-)
-
-//-----------------------------------------------------------------------------
-
-// // NOTE: tx must be signed
-// func BroadcastTxAsync(tx types.Tx) (*ctypes.ResultBroadcastTx, error) {
-// 	err := mempoolReactor.BroadcastTx(tx, nil)
-// 	if err != nil {
-// 		return nil, fmt.Errorf("Error broadcasting transaction: %v", err)
-// 	}
-// 	return &ctypes.ResultBroadcastTx{}, nil
-// }
-
-// Note: tx must be signed
-func BroadcastTxSync(tx txs.Tx) (*ctypes.ResultBroadcastTx, error) {
-	resCh := make(chan *tmsp.Response, 1)
-	err := mempoolReactor.BroadcastTx(txs.EncodeTx(tx), func(res *tmsp.Response) {
-		resCh <- res
-	})
-	if err != nil {
-		return nil, fmt.Errorf("Error broadcasting transaction: %v", err)
-	}
-	res := <-resCh
-	switch r:= res.Value.(type) {
-	case *tmsp.Response_AppendTx:
-		return &ctypes.ResultBroadcastTx{
-			Code: r.AppendTx.Code,
-			Data: r.AppendTx.Data,
-			Log:  r.AppendTx.Log,
-		}, nil
-	case *tmsp.Response_CheckTx:
-		return &ctypes.ResultBroadcastTx{
-			Code: r.CheckTx.Code,
-			Data: r.CheckTx.Data,
-			Log:  r.CheckTx.Log,
-		}, nil
-	case *tmsp.Response_Commit:
-		return &ctypes.ResultBroadcastTx{
-			Code: r.Commit.Code,
-			Data: r.Commit.Data,
-			Log:  r.Commit.Log,
-		}, nil
-	case *tmsp.Response_Query:
-		return &ctypes.ResultBroadcastTx{
-			Code: r.Query.Code,
-			Data: r.Query.Data,
-			Log:  r.Query.Log,
-		}, nil
-	default:
-		return &ctypes.ResultBroadcastTx{
-			Code: tmsp.CodeType_OK,
-			Data: []byte{},
-			Log:  "",
-		}, nil
-
-	}
-}